backlog-exporter 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,42 +6,35 @@ Backlog のデータをエクスポートするためのコマンドラインツ
6
6
  [![Version](https://img.shields.io/npm/v/backlog-exporter.svg)](https://npmjs.org/package/backlog-exporter)
7
7
  [![Downloads/week](https://img.shields.io/npm/dw/backlog-exporter.svg)](https://npmjs.org/package/backlog-exporter)
8
8
 
9
- <!-- toc -->
10
- * [backlog-exporter](#backlog-exporter)
11
- * [概要](#概要)
12
- * [インストール](#インストール)
13
- * [使用方法](#使用方法)
14
- * [課題のエクスポート](#課題のエクスポート)
15
- * [Wiki のエクスポート](#wiki-のエクスポート)
16
- * [ドキュメント のエクスポート](#ドキュメント-のエクスポート)
17
- * [課題・Wiki・ドキュメント の一括エクスポート](#課題wikiドキュメント-の一括エクスポート)
18
- * [データの更新](#データの更新)
19
- * [特定の課題だけを再取得(課題キーまたは課題ID)](#特定の課題だけを再取得課題キーまたは課題id)
20
- * [特定のWikiだけを再取得(Wiki ID)](#特定のwikiだけを再取得wiki-id)
21
- * [特定のドキュメントだけを再取得(ドキュメントID)](#特定のドキュメントだけを再取得ドキュメントid)
22
- * [カレントディレクトリ配下の設定ファイルを探索して実行](#カレントディレクトリ配下の設定ファイルを探索して実行)
23
- * [対象ディレクトリを指定](#対象ディレクトリを指定)
24
- * [確認プロンプトをスキップ](#確認プロンプトをスキップ)
25
- * [コマンド](#コマンド)
26
- * [出力形式](#出力形式)
27
- * [課題のタイトル](#課題のタイトル)
28
- * [Wiki のタイトル](#wiki-のタイトル)
29
- * [ドキュメントのタイトル](#ドキュメントのタイトル)
30
- * [その他の特徴](#その他の特徴)
31
- <!-- tocstop -->
32
-
33
- # 概要
34
-
35
- backlog-exporter は、Backlog のデータをローカルにエクスポートするためのコマンドラインツールです。
36
- 現在、以下の機能をサポートしています:
37
-
38
- - **課題(Issue)のエクスポート**:Backlog の課題を Markdown ファイルとして保存(カスタム属性対応)
39
- - **Wiki 記事のエクスポート**:Backlog の Wiki 記事を Markdown ファイルとして保存
40
- - **ドキュメントのエクスポート**:Backlog のドキュメントを Markdown ファイルとして保存
41
- - **一括エクスポート**:課題・Wiki・ドキュメントを同時に取得する機能
42
- - **データの更新**:既存のエクスポートデータを最新の状態に更新する機能
43
-
44
- # インストール
9
+ ## 目次
10
+
11
+ - [概要](#概要)
12
+ - [インストール](#インストール)
13
+ - [クイックスタート](#クイックスタート)
14
+ - [コマンド一覧](#コマンド一覧)
15
+ - [課題のエクスポート (issue)](#課題のエクスポート-issue)
16
+ - [Wiki のエクスポート (wiki)](#wiki-のエクスポート-wiki)
17
+ - [ドキュメントのエクスポート (document)](#ドキュメントのエクスポート-document)
18
+ - [一括エクスポート (all)](#一括エクスポート-all)
19
+ - [データの更新 (update)](#データの更新-update)
20
+ - [削除されたデータの整理 (prune)](#削除されたデータの整理-prune)
21
+ - [添付ファイルのダウンロード](#添付ファイルのダウンロード)
22
+ - [出力形式](#出力形式)
23
+ - [その他の特徴](#その他の特徴)
24
+ - [開発への貢献](#開発への貢献)
25
+ - [ライセンス](#ライセンス)
26
+
27
+ ## 概要
28
+
29
+ backlog-exporter は、Backlog のデータをローカルに Markdown ファイルとしてエクスポートするコマンドラインツールです。
30
+
31
+ - **課題(Issue)**:カスタム属性・コメント・添付ファイルを含めてエクスポート
32
+ - **Wiki**:階層構造を保持してエクスポート
33
+ - **ドキュメント**:ツリー構造を保持してエクスポート
34
+ - **一括エクスポート**:課題・Wiki・ドキュメントをまとめて取得
35
+ - **差分更新**:前回のエクスポート以降に変更されたデータのみを更新
36
+
37
+ ## インストール
45
38
 
46
39
  <!-- usage -->
47
40
  ```sh-session
@@ -49,7 +42,7 @@ $ npm install -g backlog-exporter
49
42
  $ backlog-exporter COMMAND
50
43
  running command...
51
44
  $ backlog-exporter (--version)
52
- backlog-exporter/1.1.0 linux-x64 node-v26.5.0
45
+ backlog-exporter/1.2.0 linux-x64 node-v26.8.1
53
46
  $ backlog-exporter --help [COMMAND]
54
47
  USAGE
55
48
  $ backlog-exporter COMMAND
@@ -57,145 +50,70 @@ USAGE
57
50
  ```
58
51
  <!-- usagestop -->
59
52
 
60
- # 使用方法
53
+ インストールせずに `npx backlog-exporter <コマンド>` として実行することもできます。
61
54
 
62
- backlog-exporter を使用するには、Backlog のドメイン、プロジェクト ID(またはキー)、API キーが必要です。
55
+ ## クイックスタート
63
56
 
64
- API キーは以下の方法で指定できます:
57
+ 利用には Backlog の **ドメイン**・**プロジェクト ID(またはキー)**・**API キー** が必要です。
65
58
 
66
- 1. コマンドラインオプションとして指定
59
+ API キーは以下のいずれかの方法で指定できます:
60
+
61
+ 1. コマンドラインオプション `--apiKey` で指定
67
62
  2. 環境変数 `BACKLOG_API_KEY` に設定
68
63
  3. `.env` ファイルに `BACKLOG_API_KEY=あなたのAPIキー` として設定
69
64
 
70
- ## 基本的な使用例
71
-
72
- **課題のエクスポート**
73
-
74
- ```sh
75
- $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./issues
76
- ```
77
-
78
- **Wikiのエクスポート**
79
-
80
- ```sh
81
- $ backlog-exporter wiki --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./wiki
82
- ```
83
-
84
- **ドキュメントのエクスポート**
85
-
86
- ```sh
87
- $ backlog-exporter document --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./documents
88
- ```
89
-
90
- **課題・Wiki・ドキュメントの一括エクスポート**
91
-
92
65
  ```sh
93
66
  $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./backlog-data
94
67
  ```
95
68
 
96
- **特定のデータタイプのみをエクスポート(onlyフラグ)**
97
-
98
- ```sh
99
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --only issues,wiki
100
- ```
101
-
102
- **特定のデータタイプを除外してエクスポート(excludeフラグ)**
103
-
104
- ```sh
105
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --exclude documents
106
- ```
107
-
108
- **データの更新**
69
+ 上記で課題・Wiki・ドキュメントが `./backlog-data` 配下にエクスポートされます。2 回目以降は、エクスポートしたディレクトリで以下を実行するだけで差分更新できます:
109
70
 
110
71
  ```sh
111
72
  $ backlog-exporter update
112
73
  ```
113
74
 
114
- npx を使用する場合は、コマンドの前に`npx`を付けるだけです:
115
-
116
- **npxを使った課題のエクスポート**
117
-
118
- ```sh
119
- $ npx backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./issues
120
- ```
121
-
122
- **npxを使ったデータの更新**
75
+ ## コマンド一覧
123
76
 
124
- ```sh
125
- $ npx backlog-exporter update
126
- ```
77
+ | コマンド | 説明 |
78
+ | ---------- | ------------------------------------------------------------------------ |
79
+ | `all` | 課題・Wiki・ドキュメントを一括エクスポート |
80
+ | `issue` | 課題をエクスポート(作成年ごとのフォルダに整理) |
81
+ | `wiki` | Wiki を階層構造を保持してエクスポート |
82
+ | `document` | ドキュメントをツリー構造を保持してエクスポート |
83
+ | `update` | エクスポート済みデータを差分更新 |
84
+ | `prune` | Backlog 上で削除・移動されたデータのローカルファイルを削除 |
85
+ | `help` | ヘルプを表示 |
127
86
 
128
- # 課題のエクスポート
87
+ 全エクスポートコマンドで共通のフラグ:
129
88
 
130
- `issue`コマンドを使用すると、Backlog の課題を Markdown ファイルとしてエクスポートできます。
89
+ | フラグ | 説明 |
90
+ | --------------------------- | ------------------------------------------------ |
91
+ | `--domain` | Backlog のドメイン(例: `example.backlog.jp`) |
92
+ | `--projectIdOrKey` | プロジェクトキーまたは数値 ID |
93
+ | `--apiKey` | API キー(環境変数でも指定可能) |
94
+ | `--output` | 出力先ディレクトリ |
95
+ | `-d, --downloadAttachments` | 添付ファイルもダウンロード([詳細](#添付ファイルのダウンロード)) |
131
96
 
132
- **基本的な使用方法**
97
+ ## 課題のエクスポート (issue)
133
98
 
134
- ```sh
135
- $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY
136
- ```
137
-
138
- **出力先を指定**
99
+ `issue` コマンドは、Backlog の課題を Markdown ファイルとしてエクスポートします。課題は作成年ごとのサブディレクトリに整理されます。
139
100
 
140
101
  ```sh
141
102
  $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./issues
142
103
  ```
143
104
 
144
- **Markdownファイル名を課題キーにする**
145
-
146
- ```sh
147
- $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --issueKeyFileName
148
- ```
149
-
150
- **課題キーでフォルダを作成する**
151
-
152
- ```sh
153
- $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --issueKeyFolder
154
- ```
105
+ | フラグ | 説明 |
106
+ | -------------------- | ---------------------------------------------------------- |
107
+ | `--issueKeyFileName` | Markdown ファイル名を課題キーにする |
108
+ | `--issueKeyFolder` | 課題キーごとにフォルダを作成する(両フラグは併用可能) |
155
109
 
156
- **課題キーでフォルダを作成し、Markdownファイル名も課題キーにする**
110
+ ### カスタム属性の対応
157
111
 
158
- ```sh
159
- $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --issueKeyFileName --issueKeyFolder
160
- ```
112
+ 課題のカスタム属性も Markdown テーブル形式で出力されます。改行やパイプ文字も適切に処理されます。
161
113
 
162
- **課題の添付ファイルもダウンロードする**
163
-
164
- ```sh
165
- $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --downloadAttachments
166
- ```
167
-
168
- エクスポートされた課題は、指定したディレクトリ内に Markdown ファイルとして保存されます。ファイル名は課題のキーに基づいて自動的に生成されます。
169
-
170
- ## 添付ファイルのダウンロード
171
-
172
- `--downloadAttachments`(短縮形: `-d`)フラグを指定すると、課題・Wiki・ドキュメントの添付ファイルもダウンロードされます(`all` / `issue` / `wiki` / `document` / `update` コマンドで使用可能)。
173
-
174
- - 保存先:
175
- - 課題: デフォルトは `{年}/attachments/{課題キー}/`、`--issueKeyFolder` 指定時は課題フォルダ直下の `attachments/`
176
- - Wiki: Markdownと同じディレクトリの `attachments/{Wiki名}/`(階層Wikiは末尾のページ名)
177
- - ドキュメント: Markdownと同じディレクトリの `attachments/{ドキュメント名}/`
178
- - ファイル名は同名の衝突を避けるため `{添付ID}_{ファイル名}` になります
179
- - Markdown の `## 添付ファイル` セクションにローカルファイルへの相対リンクが記載されます(フラグ未指定時はファイル名とサイズのみ記載)
180
- - 課題の本文・コメント内の添付画像のインライン記法(`![image][ファイル名]` / `#image(ファイル名)`)は、ダウンロード済みファイルへの画像リンクに変換され、Markdownビューアでそのまま表示できます
181
- - Wiki・ドキュメントの本文はBacklogの原文のまま維持されます(添付参照記法の書き換えは行いません)。添付ファイルへは `## 添付ファイル` セクションのリンクからアクセスできます
182
- - ダウンロード済みのファイルは再ダウンロードされないため、`update` コマンドでの差分更新でも効率的に動作します
183
- - 設定は `backlog-settings.json` に保存され、以降の `update` コマンドで自動的に引き継がれます(`update` コマンド自体でフラグを指定した場合はその実行のみ有効です)
184
- - Backlog側で削除された添付ファイルは、誤削除防止のため `prune` コマンドでも削除されず残ります
185
-
186
- ## カスタム属性の対応
187
-
188
- 課題のエクスポートでは、Backlogのカスタム属性も含めて出力されます:
189
-
190
- ### 対応している値の型
191
-
192
- - **プリミティブ値**: 文字列、数値などの単純な値
193
- - **配列値**: 複数選択のカスタム属性(カンマ区切りで表示)
194
- - **オブジェクト値**: 単一選択のカスタム属性(name または value プロパティを使用)
195
-
196
- ### 表示形式
197
-
198
- カスタム属性はMarkdownテーブル形式で表示され、改行やパイプ文字も適切に処理されます:
114
+ - **プリミティブ値**:文字列、数値などの単純な値
115
+ - **配列値**:複数選択のカスタム属性(カンマ区切りで表示)
116
+ - **オブジェクト値**:単一選択のカスタム属性(name または value プロパティを使用)
199
117
 
200
118
  ```markdown
201
119
  ## カスタム属性
@@ -207,57 +125,29 @@ $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KE
207
125
  | 詳細 | 実装内容<br>- 機能A<br>- 機能B |
208
126
  ```
209
127
 
210
- # Wiki のエクスポート
128
+ ## Wiki のエクスポート (wiki)
211
129
 
212
- `wiki`コマンドを使用すると、Backlog の Wiki ページを Markdown ファイルとしてエクスポートできます。
213
-
214
- **基本的な使用方法**
215
-
216
- ```sh
217
- $ backlog-exporter wiki --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY
218
- ```
219
-
220
- **出力先を指定**
130
+ `wiki` コマンドは、Backlog の Wiki ページを Markdown ファイルとしてエクスポートします。Wiki の階層構造はディレクトリ構造として再現されます。
221
131
 
222
132
  ```sh
223
133
  $ backlog-exporter wiki --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./wiki
224
134
  ```
225
135
 
226
- エクスポートされた Wiki は、指定したディレクトリ内に Markdown ファイルとして保存されます。Wiki の階層構造は保持され、ディレクトリ構造として再現されます。
227
-
228
- # ドキュメント のエクスポート
229
-
230
- `document`コマンドを使用すると、Backlog のドキュメントページを Markdown ファイルとしてエクスポートできます。
231
-
232
- **基本的な使用方法**
233
-
234
- ```sh
235
- $ backlog-exporter document --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY
236
- ```
136
+ ## ドキュメントのエクスポート (document)
237
137
 
238
- **出力先を指定**
138
+ `document` コマンドは、Backlog のドキュメントを Markdown ファイルとしてエクスポートします。
239
139
 
240
140
  ```sh
241
141
  $ backlog-exporter document --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./documents
242
142
  ```
243
143
 
244
- **キーワード検索**
245
-
246
- ```sh
247
- $ backlog-exporter document --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --keyword 仕様書
248
- ```
249
-
250
- ## ドキュメントの出力方法
251
-
252
- ドキュメントは **ツリー構造を保持** してエクスポートされます:
144
+ | フラグ | 説明 |
145
+ | ----------- | ------------------------------------ |
146
+ | `--keyword` | キーワードに一致するドキュメントのみ取得 |
253
147
 
254
148
  ### ディレクトリ構造の保持
255
149
 
256
- - Backlogのドキュメントツリーの階層構造がそのままローカルディレクトリ構造として再現されます
257
- - フォルダはディレクトリとして作成され、ドキュメントはMarkdownファイルとして保存されます
258
- - 子を持つ親ドキュメント自身が本文を持つ場合は、フォルダ内の `00_index.md` として保存されます(本文が空の親はファイルを作成しません)
259
-
260
- ### 出力例
150
+ Backlog のドキュメントツリーの階層構造が、そのままローカルのディレクトリ構造として再現されます。フォルダはディレクトリに、ドキュメントは Markdown ファイルになります。子を持つ親ドキュメント自身が本文を持つ場合は、フォルダ内の `00_index.md` として保存されます(本文が空の親はファイルを作成しません)。
261
151
 
262
152
  ```
263
153
  documents/
@@ -275,503 +165,122 @@ documents/
275
165
  └── 運用手順書.md
276
166
  ```
277
167
 
278
- ### 特徴
279
-
280
- - **階層構造の完全再現**: Backlogのフォルダ階層がそのまま保持されます
281
- - **親ドキュメント本文の保存**: 子を持つ親ドキュメントの本文もフォルダ内の `00_index.md` として保存されます
282
- - **重複処理の防止**: 同じドキュメントが複数回処理されることを防ぎます
283
- - **ファイル名の自動サニタイズ**: 不正な文字を自動的に除去して安全なファイル名を生成します
284
- - **メタデータの保持**: 作成者、更新者、タグ、添付ファイル情報なども含めて保存されます
285
-
286
- エクスポートされたドキュメントは、指定したディレクトリ内にツリー構造を保持したMarkdownファイルとして保存されます。
168
+ 作成者・更新者・タグ・添付ファイル情報などのメタデータも含めて保存されます。
287
169
 
288
- # 課題・Wiki・ドキュメント の一括エクスポート
170
+ ## 一括エクスポート (all)
289
171
 
290
- `all`コマンドを使用すると、課題・Wiki・ドキュメントを一度に取得できます。
291
-
292
- **基本的な使用方法**
293
-
294
- ```sh
295
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY
296
- ```
297
-
298
- **出力先を指定**
172
+ `all` コマンドは、課題・Wiki・ドキュメントを一度に取得します。課題は `issues`、Wiki は `wiki`、ドキュメントは `documents` サブディレクトリに保存されます。
299
173
 
300
174
  ```sh
301
175
  $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --output ./backlog-data
302
176
  ```
303
177
 
304
- **特定のデータタイプのみをエクスポート(onlyフラグ)**
178
+ ### エクスポート対象の制御
305
179
 
306
- ```sh
307
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --only issues,wiki
308
- ```
180
+ | フラグ | 説明 |
181
+ | ----------- | ---------------------------------------------------------------- |
182
+ | `--only` | 指定したデータタイプのみエクスポート(例: `--only issues,wiki`) |
183
+ | `--exclude` | 指定したデータタイプを除外(例: `--exclude documents`) |
309
184
 
310
- **特定のデータタイプを除外してエクスポート(excludeフラグ)**
185
+ データタイプは `issues` / `wiki` / `documents` をカンマ区切りで指定します。`--only` と `--exclude` は同時に使用できません。
311
186
 
312
187
  ```sh
313
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --exclude documents
188
+ $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --only issues,wiki
314
189
  ```
315
190
 
316
- 一括エクスポートでは、課題は`issues`ディレクトリに、Wiki は`wiki`ディレクトリに、ドキュメントは`documents`ディレクトリに保存されます。
317
-
318
- ## エクスポート対象の制御
319
-
320
- `--only` / `--exclude` を指定せずに対話端末で実行した場合は、Wiki・ドキュメントのどちらを取得するかを選択できます(BacklogはWikiからドキュメントへの移行を予定しています):
191
+ `--only` / `--exclude` を指定せずに対話端末で実行した場合は、Wiki・ドキュメントのどちらを取得するかを選択できます(Backlog は Wiki からドキュメントへの移行を予定しています):
321
192
 
322
193
  ```
323
194
  BacklogのWikiとドキュメントのどちらを取得しますか?(BacklogはWikiからドキュメントへの移行を予定しています)
324
195
  [1] 両方(デフォルト) [2] Wikiのみ [3] ドキュメントのみ
325
196
  ```
326
197
 
327
- 非対話環境(CI・パイプ実行)では従来どおり両方を取得します。
328
-
329
- `all`コマンドでは、以下のフラグを使用してエクスポート対象を制御できます:
330
-
331
- ### --only フラグ
332
-
333
- 特定のデータタイプのみをエクスポートします。カンマ区切りで複数指定可能です。
334
-
335
- **課題とWikiのみをエクスポート**
336
-
337
- ```sh
338
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --only issues,wiki
339
- ```
340
-
341
- **ドキュメントのみをエクスポート**
342
-
343
- ```sh
344
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --only documents
345
- ```
346
-
347
- ### --exclude フラグ
348
-
349
- 特定のデータタイプを除外してエクスポートします。カンマ区切りで複数指定可能です。
350
-
351
- **ドキュメント以外(課題とWiki)をエクスポート**
352
-
353
- ```sh
354
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --exclude documents
355
- ```
356
-
357
- **課題以外(WikiとDocuments)をエクスポート**
358
-
359
- ```sh
360
- $ backlog-exporter all --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --exclude issues
361
- ```
362
-
363
- **注意**: `--only`と`--exclude`フラグは同時に使用できません。どちらか一方を使用してください。
364
-
365
- # データの更新
198
+ 非対話環境(CI・パイプ実行)では両方を取得します。
366
199
 
367
- `update`コマンドを使用すると、既存のエクスポートデータを最新の状態に更新できます。このコマンドは、ディレクトリ内の`backlog-settings.json`ファイルを探索し、見つかったディレクトリでデータを更新します。
200
+ ## データの更新 (update)
368
201
 
369
- **カレントディレクトリとそのサブディレクトリのデータを更新**
202
+ `update` コマンドは、既存のエクスポートデータを最新の状態に更新します。ディレクトリ内の `backlog-settings.json` を探索し、見つかったディレクトリごとにデータを更新します。設定ファイルの最終更新日時(`lastUpdated`)以降に更新された項目のみを差分取得します。
370
203
 
371
204
  ```sh
372
205
  $ backlog-exporter update
373
- ```
374
-
375
- **指定したディレクトリとそのサブディレクトリのデータを更新**
376
-
377
- ```sh
378
206
  $ backlog-exporter update ./my-project
379
207
  ```
380
208
 
381
- **確認プロンプトをスキップして更新**
209
+ | フラグ | 説明 |
210
+ | ----------------- | ---------------------------------------- |
211
+ | `--force` | 確認プロンプトをスキップ |
212
+ | `--issuesOnly` | 課題のみを更新 |
213
+ | `--wikisOnly` | Wiki のみを更新 |
214
+ | `--documentsOnly` | ドキュメントのみを更新 |
215
+ | `--apiKey` | API キーを指定 |
382
216
 
383
- ```sh
384
- $ backlog-exporter update --force
385
- ```
217
+ ### 特定の項目だけを再取得する
386
218
 
387
- **課題のみを更新**
219
+ 「特定の項目だけを取り直したい」場合は、ID 指定フラグを使います。いずれもカンマ区切りで複数指定できます。
388
220
 
389
- ```sh
390
- $ backlog-exporter update --issuesOnly
391
- ```
392
-
393
- **Wikiのみを更新**
221
+ | フラグ | 説明 |
222
+ | ---------------- | -------------------------------------------------------- |
223
+ | `--issueIdOrKey` | 課題キー(`PROJECT-1`)または課題 ID(数値)で課題を再取得 |
224
+ | `--wikiId` | Wiki ID(数値)で Wiki を再取得 |
225
+ | `--documentId` | ドキュメント ID でドキュメントを再取得 |
394
226
 
395
227
  ```sh
396
- $ backlog-exporter update --wikisOnly
397
- ```
398
-
399
- **ドキュメントのみを更新**
400
-
401
- ```sh
402
- $ backlog-exporter update --documentsOnly
403
- ```
404
-
405
- **APIキーを指定して更新**
406
-
407
- ```sh
408
- $ backlog-exporter update --apiKey YOUR_API_KEY
409
- ```
410
-
411
- **指定した項目(課題・Wiki・ドキュメント)のみを再取得する**
412
-
413
- ```sh
414
- # 特定の課題だけを再取得(課題キーまたは課題ID)
415
228
  $ backlog-exporter update --issueIdOrKey PROJECT-1,PROJECT-2
416
-
417
- # 特定のWikiだけを再取得(Wiki ID)
418
229
  $ backlog-exporter update --wikiId 12345,12346
419
-
420
- # 特定のドキュメントだけを再取得(ドキュメントID)
421
230
  $ backlog-exporter update --documentId abc123,def456
422
231
  ```
423
232
 
424
- `update` は通常、設定ファイルの最終更新日時(`lastUpdated`)以降に更新された項目を差分取得します。一方で「特定の項目だけを取り直したい」場合は、上記のID指定フラグを使います。
425
-
426
- - `--issueIdOrKey`: 課題キー(`PROJECT-1`)または課題ID(数値)。Wiki・ドキュメントは数値IDのみのため `--wikiId` / `--documentId` を使います
427
- - いずれもカンマ区切りで複数指定できます
428
- - 指定したフラグに対応する項目のみを再取得し、それ以外の種別の更新は行いません(例: `--wikiId` のみ指定時は課題・ドキュメントを更新しません)
233
+ - 指定したフラグに対応する項目のみを再取得し、それ以外の種別は更新しません(例: `--wikiId` のみ指定時は課題・ドキュメントを更新しません)
429
234
  - 指定した項目以外のローカルファイルには影響しません
430
235
 
431
- > **Note**: これらのID指定フラグは全件差分更新ではないため、設定ファイルの最終更新日時(`lastUpdated`)は更新されません。そのため、次回の通常の差分更新に影響を与えません。
236
+ > **Note**: ID 指定フラグは全件差分更新ではないため、設定ファイルの最終更新日時(`lastUpdated`)は更新されません。次回の通常の差分更新に影響を与えません。
432
237
 
433
- 更新コマンドは、各ディレクトリの設定ファイルに基づいて、課題・Wiki・ドキュメントを自動的に更新します。設定ファイルが見つかったディレクトリでは、そのディレクトリ内のファイルが直接更新されます(サブフォルダは作成されません)。
238
+ ## 削除されたデータの整理 (prune)
434
239
 
435
- **Backlog上で削除・移動された課題・ドキュメント・Wikiのローカルファイルを削除する(prune)**
240
+ `update`(および各取得コマンド)は増分更新(追加・上書き)のため、Backlog 上で削除・移動された課題・ドキュメント・Wiki のファイルはローカルに残り続けます。`prune` コマンドは、Backlog に存在しないローカルの `.md` ファイルと空になったディレクトリを削除して、Backlog と同じ状態に揃えます。
436
241
 
437
242
  ```sh
438
- # カレントディレクトリ配下の設定ファイルを探索して実行
439
243
  $ backlog-exporter prune
440
-
441
- # 対象ディレクトリを指定
442
244
  $ backlog-exporter prune ./backlog-documents
443
-
444
- # 確認プロンプトをスキップ
445
245
  $ backlog-exporter prune --force
446
246
  ```
447
247
 
448
- `update`(および各取得コマンド)は増分更新(追加・上書き)のため、Backlog上で削除された課題・ドキュメント・Wikiや別の場所へ移動されたものは、ローカルにファイルが残り続けます。`prune` コマンドは、Backlogに存在しないローカルの `.md` ファイルと、空になったディレクトリを削除してBacklogと同じ状態に揃えます。
449
-
450
- - 対象は**課題・ドキュメント・Wikiフォルダ**です(設定ファイルの `folderType` で判定します)
451
- - ファイルを削除する破壊的な操作のため、`update` とは独立したコマンドとして分離しています(実行時に確認プロンプトを表示。`--force` でスキップ可能)
452
- - 削除対象は `.md` ファイルのみ。`backlog-settings.json`・`backlog-update.log`・`.md` 以外のファイルには触れません。ただし、対象フォルダ内にユーザーが独自に置いた `.md` ファイルや空のディレクトリは、Backlog上に存在しないものとして削除されるため注意してください
453
- - ファイル名は保存時と同じロジックで比較します(ドキュメントは一覧APIの `title` 基準、課題は設定ファイルの `issueKeyFileName`/`issueKeyFolder` を反映)。サニタイズ差異やツリー名との差異による誤削除は起きません。ドキュメント情報の取得に失敗した場合は、誤削除を防ぐため何も削除せずに中止します
248
+ - 対象は **課題・ドキュメント・Wiki フォルダ** です(設定ファイルの `folderType` で判定します)
249
+ - ファイルを削除する破壊的な操作のため、実行時に確認プロンプトを表示します(`--force` でスキップ可能)
250
+ - 削除対象は `.md` ファイルのみ。`backlog-settings.json`・`backlog-update.log`・`.md` 以外のファイルには触れません。ただし、対象フォルダ内にユーザーが独自に置いた `.md` ファイルや空のディレクトリは、Backlog 上に存在しないものとして削除されるため注意してください
251
+ - ファイル名は保存時と同じロジックで比較します(ドキュメントは一覧 API の `title` 基準、課題は設定ファイルの `issueKeyFileName` / `issueKeyFolder` を反映)。サニタイズ差異による誤削除は起きません。ドキュメント情報の取得に失敗した場合は、誤削除を防ぐため何も削除せずに中止します
454
252
  - 削除したファイルは `backlog-update.log` に記録されます
455
253
 
456
- # コマンド
457
-
458
- ## `backlog-exporter help [COMMAND]`
459
-
460
- Display help for backlog-exporter.
461
-
462
- ```
463
- USAGE
464
- $ backlog-exporter help [COMMAND...] [-n]
465
-
466
- ARGUMENTS
467
- COMMAND... Command to show help for.
468
-
469
- FLAGS
470
- -n, --nested-commands Include all nested commands in the output.
471
-
472
- DESCRIPTION
473
- Display help for backlog-exporter.
474
- ```
475
-
476
- _See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v6.2.26/src/commands/help.ts)_
477
-
478
- ## `backlog-exporter plugins`
479
-
480
- List installed plugins.
481
-
482
- ```
483
- USAGE
484
- $ backlog-exporter plugins [--json] [--core]
485
-
486
- FLAGS
487
- --core Show core plugins.
488
-
489
- GLOBAL FLAGS
490
- --json Format output as json.
491
-
492
- DESCRIPTION
493
- List installed plugins.
494
-
495
- EXAMPLES
496
- $ backlog-exporter plugins
497
- ```
498
-
499
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/index.ts)_
500
-
501
- ## `backlog-exporter plugins add PLUGIN`
502
-
503
- Installs a plugin into backlog-exporter.
504
-
505
- ```
506
- USAGE
507
- $ backlog-exporter plugins add PLUGIN... [--json] [-f] [-h] [-s | -v]
508
-
509
- ARGUMENTS
510
- PLUGIN... Plugin to install.
511
-
512
- FLAGS
513
- -f, --force Force npm to fetch remote resources even if a local copy exists on disk.
514
- -h, --help Show CLI help.
515
- -s, --silent Silences npm output.
516
- -v, --verbose Show verbose npm output.
517
-
518
- GLOBAL FLAGS
519
- --json Format output as json.
520
-
521
- DESCRIPTION
522
- Installs a plugin into backlog-exporter.
523
-
524
- Uses npm to install plugins.
525
-
526
- Installation of a user-installed plugin will override a core plugin.
527
-
528
- Use the BACKLOG_EXPORTER_NPM_LOG_LEVEL environment variable to set the npm loglevel.
529
- Use the BACKLOG_EXPORTER_NPM_REGISTRY environment variable to set the npm registry.
530
-
531
- ALIASES
532
- $ backlog-exporter plugins add
533
-
534
- EXAMPLES
535
- Install a plugin from npm registry.
536
-
537
- $ backlog-exporter plugins add myplugin
538
-
539
- Install a plugin from a github url.
540
-
541
- $ backlog-exporter plugins add https://github.com/someuser/someplugin
542
-
543
- Install a plugin from a github slug.
544
-
545
- $ backlog-exporter plugins add someuser/someplugin
546
- ```
547
-
548
- ## `backlog-exporter plugins:inspect PLUGIN...`
549
-
550
- Displays installation properties of a plugin.
551
-
552
- ```
553
- USAGE
554
- $ backlog-exporter plugins inspect PLUGIN...
555
-
556
- ARGUMENTS
557
- PLUGIN... [default: .] Plugin to inspect.
558
-
559
- FLAGS
560
- -h, --help Show CLI help.
561
- -v, --verbose
562
-
563
- GLOBAL FLAGS
564
- --json Format output as json.
565
-
566
- DESCRIPTION
567
- Displays installation properties of a plugin.
568
-
569
- EXAMPLES
570
- $ backlog-exporter plugins inspect myplugin
571
- ```
572
-
573
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/inspect.ts)_
574
-
575
- ## `backlog-exporter plugins install PLUGIN`
576
-
577
- Installs a plugin into backlog-exporter.
578
-
579
- ```
580
- USAGE
581
- $ backlog-exporter plugins install PLUGIN... [--json] [-f] [-h] [-s | -v]
582
-
583
- ARGUMENTS
584
- PLUGIN... Plugin to install.
585
-
586
- FLAGS
587
- -f, --force Force npm to fetch remote resources even if a local copy exists on disk.
588
- -h, --help Show CLI help.
589
- -s, --silent Silences npm output.
590
- -v, --verbose Show verbose npm output.
591
-
592
- GLOBAL FLAGS
593
- --json Format output as json.
594
-
595
- DESCRIPTION
596
- Installs a plugin into backlog-exporter.
597
-
598
- Uses npm to install plugins.
599
-
600
- Installation of a user-installed plugin will override a core plugin.
601
-
602
- Use the BACKLOG_EXPORTER_NPM_LOG_LEVEL environment variable to set the npm loglevel.
603
- Use the BACKLOG_EXPORTER_NPM_REGISTRY environment variable to set the npm registry.
604
-
605
- ALIASES
606
- $ backlog-exporter plugins add
607
-
608
- EXAMPLES
609
- Install a plugin from npm registry.
610
-
611
- $ backlog-exporter plugins install myplugin
612
-
613
- Install a plugin from a github url.
614
-
615
- $ backlog-exporter plugins install https://github.com/someuser/someplugin
616
-
617
- Install a plugin from a github slug.
618
-
619
- $ backlog-exporter plugins install someuser/someplugin
620
- ```
621
-
622
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/install.ts)_
623
-
624
- ## `backlog-exporter plugins link PATH`
625
-
626
- Links a plugin into the CLI for development.
627
-
628
- ```
629
- USAGE
630
- $ backlog-exporter plugins link PATH [-h] [--install] [-v]
631
-
632
- ARGUMENTS
633
- PATH [default: .] path to plugin
634
-
635
- FLAGS
636
- -h, --help Show CLI help.
637
- -v, --verbose
638
- --[no-]install Install dependencies after linking the plugin.
639
-
640
- DESCRIPTION
641
- Links a plugin into the CLI for development.
642
-
643
- Installation of a linked plugin will override a user-installed or core plugin.
644
-
645
- e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
646
- command will override the user-installed or core plugin implementation. This is useful for development work.
647
-
648
-
649
- EXAMPLES
650
- $ backlog-exporter plugins link myplugin
651
- ```
652
-
653
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/link.ts)_
654
-
655
- ## `backlog-exporter plugins remove [PLUGIN]`
656
-
657
- Removes a plugin from the CLI.
658
-
659
- ```
660
- USAGE
661
- $ backlog-exporter plugins remove [PLUGIN...] [-h] [-v]
662
-
663
- ARGUMENTS
664
- PLUGIN... plugin to uninstall
665
-
666
- FLAGS
667
- -h, --help Show CLI help.
668
- -v, --verbose
669
-
670
- DESCRIPTION
671
- Removes a plugin from the CLI.
672
-
673
- ALIASES
674
- $ backlog-exporter plugins unlink
675
- $ backlog-exporter plugins remove
676
-
677
- EXAMPLES
678
- $ backlog-exporter plugins remove myplugin
679
- ```
680
-
681
- ## `backlog-exporter plugins reset`
682
-
683
- Remove all user-installed and linked plugins.
684
-
685
- ```
686
- USAGE
687
- $ backlog-exporter plugins reset [--hard] [--reinstall]
688
-
689
- FLAGS
690
- --hard Delete node_modules and package manager related files in addition to uninstalling plugins.
691
- --reinstall Reinstall all plugins after uninstalling.
692
- ```
693
-
694
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/reset.ts)_
695
-
696
- ## `backlog-exporter plugins uninstall [PLUGIN]`
697
-
698
- Removes a plugin from the CLI.
699
-
700
- ```
701
- USAGE
702
- $ backlog-exporter plugins uninstall [PLUGIN...] [-h] [-v]
703
-
704
- ARGUMENTS
705
- PLUGIN... plugin to uninstall
706
-
707
- FLAGS
708
- -h, --help Show CLI help.
709
- -v, --verbose
710
-
711
- DESCRIPTION
712
- Removes a plugin from the CLI.
713
-
714
- ALIASES
715
- $ backlog-exporter plugins unlink
716
- $ backlog-exporter plugins remove
717
-
718
- EXAMPLES
719
- $ backlog-exporter plugins uninstall myplugin
720
- ```
721
-
722
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/uninstall.ts)_
723
-
724
- ## `backlog-exporter plugins unlink [PLUGIN]`
725
-
726
- Removes a plugin from the CLI.
727
-
728
- ```
729
- USAGE
730
- $ backlog-exporter plugins unlink [PLUGIN...] [-h] [-v]
731
-
732
- ARGUMENTS
733
- PLUGIN... plugin to uninstall
734
-
735
- FLAGS
736
- -h, --help Show CLI help.
737
- -v, --verbose
738
-
739
- DESCRIPTION
740
- Removes a plugin from the CLI.
741
-
742
- ALIASES
743
- $ backlog-exporter plugins unlink
744
- $ backlog-exporter plugins remove
745
-
746
- EXAMPLES
747
- $ backlog-exporter plugins unlink myplugin
748
- ```
749
-
750
- ## `backlog-exporter plugins update`
254
+ ## 添付ファイルのダウンロード
751
255
 
752
- Update installed plugins.
256
+ `--downloadAttachments`(短縮形: `-d`)フラグを指定すると、課題・Wiki・ドキュメントの添付ファイルもダウンロードされます(`all` / `issue` / `wiki` / `document` / `update` コマンドで使用可能)。
753
257
 
258
+ ```sh
259
+ $ backlog-exporter issue --domain example.backlog.jp --projectIdOrKey PROJECT_KEY --apiKey YOUR_API_KEY --downloadAttachments
754
260
  ```
755
- USAGE
756
- $ backlog-exporter plugins update [-h] [-v]
757
261
 
758
- FLAGS
759
- -h, --help Show CLI help.
760
- -v, --verbose
761
-
762
- DESCRIPTION
763
- Update installed plugins.
764
- ```
262
+ 保存先:
765
263
 
766
- _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v5.4.34/src/commands/plugins/update.ts)_
264
+ | 種別 | 保存先 |
265
+ | ------------ | -------------------------------------------------------------------------------------------- |
266
+ | 課題 | `{年}/attachments/{課題キー}/`(`--issueKeyFolder` 指定時は課題フォルダ直下の `attachments/`) |
267
+ | Wiki | Markdown と同じディレクトリの `attachments/{Wiki名}/`(階層 Wiki は末尾のページ名) |
268
+ | ドキュメント | Markdown と同じディレクトリの `attachments/{ドキュメント名}/` |
767
269
 
768
- <!-- commandsstop -->
270
+ - ファイル名は同名の衝突を避けるため `{添付ID}_{ファイル名}` になります
271
+ - Markdown の `## 添付ファイル` セクションにローカルファイルへの相対リンクが記載されます(フラグ未指定時はファイル名とサイズのみ記載)
272
+ - 課題の本文・コメント内の添付画像のインライン記法(`![image][ファイル名]` / `#image(ファイル名)`)は、ダウンロード済みファイルへの画像リンクに変換され、Markdown ビューアでそのまま表示できます
273
+ - Wiki の本文は Backlog の原文のまま維持されます(添付参照記法の書き換えは行いません)。添付ファイルへは `## 添付ファイル` セクションのリンクからアクセスできます
274
+ - ドキュメントの本文は Backlog の構造化データ(JSON)から Markdown に変換されます(見出し・リスト・表・コードブロック等を再現します)。構造化データを取得できない場合はプレーンテキストの本文をそのまま使用します。添付参照記法の書き換えは行わないため、添付ファイルへは `## 添付ファイル` セクションのリンクからアクセスできます
275
+ - ダウンロード済みのファイルは再ダウンロードされないため、`update` コマンドでの差分更新でも効率的に動作します
276
+ - 設定は `backlog-settings.json` に保存され、以降の `update` コマンドで自動的に引き継がれます(`update` コマンド自体でフラグを指定した場合はその実行のみ有効です)
277
+ - Backlog 側で削除された添付ファイルは、誤削除防止のため `prune` コマンドでも削除されず残ります
769
278
 
770
- # 出力形式
279
+ ## 出力形式
771
280
 
772
- ## 本文マーカー
281
+ ### 本文マーカー
773
282
 
774
- 課題の詳細・Wikiの本文・ドキュメントの内容といった「本文」部分は、種別を問わず以下のHTMLコメントマーカーで囲まれて出力されます。
283
+ 課題の詳細・Wiki の本文・ドキュメントの内容といった「本文」部分は、種別を問わず以下の HTML コメントマーカーで囲まれて出力されます。
775
284
 
776
285
  ```markdown
777
286
  <!-- backlog-exporter:body:start -->
@@ -779,18 +288,14 @@ _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/
779
288
  <!-- backlog-exporter:body:end -->
780
289
  ```
781
290
 
782
- - マーカーはMarkdownのレンダリング時には表示されません(HTMLコメント)
291
+ - マーカーは Markdown のレンダリング時には表示されません(HTML コメント)
783
292
  - 本文自体が `##` 見出しなどを含んでいても、開始・終了マーカー間を本文として機械的に抽出・差し替えできます
784
- - 本文をBacklogへ書き戻す(API反映する)ツールなどが、どこからどこまでが本文かを一意に判定するために使えます
293
+ - 本文を Backlog へ書き戻す(API 反映する)ツールなどが、どこからどこまでが本文かを一意に判定するために使えます
785
294
  - 子を持つ親ドキュメントの本文(`00_index.md`)にも同じマーカーが付きます
786
295
 
787
- **抽出時の規約**: 本文自体がマーカーと同じ文字列を含む可能性があるため(例: このツールの使い方をBacklog上にメモした場合)、抽出ツールは「ファイル内で**最初に現れる開始マーカー**から**最後に現れる終了マーカー**まで」を本文とみなしてください。
296
+ **抽出時の規約**: 本文自体がマーカーと同じ文字列を含む可能性があるため(例: このツールの使い方を Backlog 上にメモした場合)、抽出ツールは「ファイル内で**最初に現れる開始マーカー**から**最後に現れる終了マーカー**まで」を本文とみなしてください。
788
297
 
789
- 以降の出力例では、この本文マーカーを含めた形を示します。
790
-
791
- ## 課題の出力形式
792
-
793
- 課題は以下の形式で Markdown ファイルとして保存されます:
298
+ ### 課題の出力形式
794
299
 
795
300
  ```markdown
796
301
  # 課題のタイトル
@@ -810,7 +315,6 @@ _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/
810
315
  | 属性名 | 値 |
811
316
  | ------------------ | ------------------------------ |
812
317
  | 工数(エンジニア) | 3 |
813
- | 工数(PPO) | なし |
814
318
  | 担当チーム | フロントエンド, バックエンド |
815
319
  | 詳細 | 実装内容<br>- 機能A<br>- 機能B |
816
320
 
@@ -828,20 +332,9 @@ _See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/
828
332
  - **日時**: 2023/01/01 11:15:30
829
333
 
830
334
  コメントの内容がここに表示されます。
831
-
832
- ---
833
-
834
- ### コメント 2
835
-
836
- - **投稿者**: 鈴木三郎
837
- - **日時**: 2023/01/02 09:45:12
838
-
839
- 返信コメントの内容がここに表示されます。
840
335
  ```
841
336
 
842
- ## Wiki の出力形式
843
-
844
- Wiki は以下の形式で Markdown ファイルとして保存されます:
337
+ ### Wiki の出力形式
845
338
 
846
339
  ```markdown
847
340
  # Wiki のタイトル
@@ -854,9 +347,7 @@ Backlog の書式がそのまま保持されます。
854
347
  <!-- backlog-exporter:body:end -->
855
348
  ```
856
349
 
857
- ## ドキュメント の出力形式
858
-
859
- ドキュメントは以下の形式で Markdown ファイルとして保存されます:
350
+ ### ドキュメントの出力形式
860
351
 
861
352
  ```markdown
862
353
  # ドキュメントのタイトル
@@ -873,13 +364,12 @@ Backlog の書式がそのまま保持されます。
873
364
 
874
365
  <!-- backlog-exporter:body:start -->
875
366
  ここにドキュメントの本文内容が入ります。
876
- Backlog の書式がそのまま保持されます。
367
+ Backlog の構造化データから変換された Markdown が入ります。
877
368
  <!-- backlog-exporter:body:end -->
878
369
 
879
370
  ## 添付ファイル
880
371
 
881
372
  - **資料.pdf** (1024.5 KB) - 作成者: 山田太郎, 作成日時: 2023/01/01 10:00:00
882
- - **画像.png** (256.3 KB) - 作成者: 佐藤次郎, 作成日時: 2023/01/01 10:30:00
883
373
 
884
374
  ## タグ
885
375
 
@@ -887,23 +377,19 @@ Backlog の書式がそのまま保持されます。
887
377
  - 設計書
888
378
  ```
889
379
 
890
- # その他の特徴
380
+ ## その他の特徴
891
381
 
892
- - **環境変数サポート**: 環境変数 `BACKLOG_API_KEY` を使用して API キーを設定可能
893
- - **自動ディレクトリ作成**: 出力ディレクトリが存在しない場合は自動的に作成
894
- - **並列処理**: 並列処理による高速なダウンロード
895
- - **ファイル名サニタイズ**: ファイル名の自動サニタイズ(不正な文字の除去)
896
- - **階層構造の保持**: Wiki の階層構造を保持したエクスポート
897
- - **キーワード検索**: ドキュメントの検索キーワード対応
898
- - **差分更新**: 前回の更新以降に変更されたデータのみを更新
899
- - **カスタム属性対応**: 課題のカスタム属性をテーブル形式で表示(配列・オブジェクト・プリミティブ値に対応)
382
+ - **自動ディレクトリ作成**:出力ディレクトリが存在しない場合は自動的に作成
383
+ - **並列処理**:並列処理による高速なダウンロード
384
+ - **レート制限対応**:API のレート制限に達した場合は自動的に待機してリトライ
385
+ - **ファイル名サニタイズ**:不正な文字を自動的に除去して安全なファイル名を生成
900
386
 
901
387
  ## 開発への貢献
902
388
 
903
- backlog-exporterはオープンソースプロジェクトです。バグ報告、機能提案、プルリクエストなど、あらゆる形での貢献を歓迎しています。
389
+ backlog-exporter はオープンソースプロジェクトです。バグ報告、機能提案、プルリクエストなど、あらゆる形での貢献を歓迎しています。
904
390
 
905
391
  詳しくは [CONTRIBUTING.md](docs/CONTRIBUTING.md) をご覧ください。
906
392
 
907
393
  ## ライセンス
908
394
 
909
- このプロジェクトは[MIT License](LICENSE)の下で公開されています。
395
+ このプロジェクトは [MIT License](LICENSE) の下で公開されています。