summaryrefslogtreecommitdiffstats
path: root/docs/ja/config/README.md
blob: 98fc5b1ba7f8b549bc6698d451227458256bbc55 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
# 設定

::: tip
🔥Starshipの開発は現在も進んでいます。多くの新しいオプションが今後のリリースで利用可能になります。
:::

starshipの設定を開始するには、`~/.config/starship.toml` ファイルを作成します。

```shell
$ touch ~/.config/starship.toml
```

starshipのすべての設定は、この[TOML](https://github.com/toml-lang/toml)ファイルで行われます。

```toml
# プロンプト表示時に改行しない
add_newline = false

# "❯" から "➜" に表示を変更
[character]      # The name of the module we are confguring is "character"
symbol = "➜"     # The "symbol" segment is being set to "➜"

# packageモジュールを無効にする
[package]
disabled = true
```

### 用語

**モジュール**: OSのコンテキスト情報に基づいて情報を提供するプロンプト内のコンポーネントです。たとえば、現在のディレクトリがNodeJSプロジェクトである場合、「nodejs」モジュールは、現在コンピューターにインストールされているNodeJSのバージョンを表示します。

**セグメント**: モジュールを構成する小さなサブコンポーネントです。たとえば、「nodejs」モジュールの「symbol」セグメントには、バージョン番号の前に表示される文字が含まれています(デフォルト: ⬢)。

以下はNode モジュールの表現です。次の例では、「シンボル」と「バージョン」はその中のセグメントです。すべてのモジュールには、デフォルトの端末色であるprefixとsuffixもあります。

```
[prefix]      [symbol]     [version]    [suffix]
 "via "         "⬢"        "v10.4.1"       ""
```

### スタイルの設定

starshipのほとんどのモジュールでは、表示スタイルを設定できます。これは、設定を指定する文字列であるエントリ(`style`)で行われます。スタイル文字列の例とその機能を次に示します。完全な構文の詳細については、詳細は [高度な設定](/advanced-config/)を参照してください 。

- `"fg:green bg:blue"`は、青色の背景に緑色のテキストを設定します
- `"bg:blue fg:bright-green"`は、青色の背景に明るい緑色のテキストを設定します
- `"bold fg:27"`は、 [ANSIカラー](https://i.stack.imgur.com/KTSQa.png) 27の太字テキストを設定します
- `"underline bg:#bf5700"`は、焦げたオレンジ色の背景に下線付きのテキストを設定します
- `"bold italic fg:purple"`は、紫色の太字斜体のテキストを設定します
- `""`はすべてのスタイルを明示的に無効にします

スタイリングがどのように見えるかは、端末エミュレータによって制御されることに注意してください。たとえば、一部の端末エミュレータはテキストを太字にする代わりに色を明るくします。また、一部のカラーテーマは通常の色と明るい色と同じ値を使用します。また、斜体のテキストを取得するには、端末で斜体をサポートする必要があります。

## プロンプト

これは、プロンプト全体のオプションのリストです。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`add_newline` | `true` | プロンプトの開始前に新しい行を追加します。
`prompt_order` | [link](#%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E3%81%AE%E3%83%97%E3%83%AD%E3%83%B3%E3%83%97%E3%83%88%E9%A0%86) | プロンプトモジュールを出力する順序を設定します。

### 設定例

```toml
# ~/.config/starship.toml

# プロンプト表示の改行を無効にする
add_newline = false
# デフォルトのプロンプト表示順を書き換える
prompt_order=["rust","line_break","package","line_break","character"]
```

### デフォルトのプロンプト表示順

`default_prompt_order`オプションは、空または`prompt_order`が指定されていない場合に、プロンプトにモジュールが表示される順序を定義するために使用されます。デフォルトは次のとおりです。

```
default_prompt_order = [
    "username",
    "hostname",
    "directory",
    "git_branch",
    "git_state",
    "git_status",
    "package",
    "nodejs",
    "ruby",
    "rust",
    "python",
    "golang",
    "nix_shell",
    "cmd_duration",
    "line_break",
    "jobs",
    "time",
    "battery",
    "character",
]
```

## バッテリー

`battery`モジュールは、デバイスのバッテリー残量と現在の充電状態を示します。モジュールは、デバイスのバッテリー残量が10%未満の場合にのみ表示されます。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`full_symbol` | `"•"` | バッテリーが満タンのときに表示される記号です。
`charging_symbol` | `"⇡"` | バッテリーの充電中に表示される記号です。
`discharging_symbol` | `"⇣"` | バッテリーが放電しているときに表示される記号です。
`display` | [link](#battery-display) | モジュールの閾値とスタイルを表示します。
`disabled` | `false` | `battery`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[battery]
full_symbol = "🔋"
charging_symbol = "⚡️"
discharging_symbol = "💀"
```

### バッテリーの表示

`display` 設定オプションは、バッテリーインジケーターを表示するタイミング(threshold)と見た目(style)を定義するために使用されます。
`display` が設定されていない場合のデフォルトは次のとおりです:

```toml
[[battery.display]]
threshold = 10
style = "bold red"
```

#### オプション 

| 変数        | 説明                                            |
|-------------|-------------------------------------------------|
| `threshold` | バッテリーが表示される上限です。        |
| `style`     | displayオプションが使用されている場合のスタイルです。|

#### 設定例 

```toml
[[battery.display]]  # バッテリー残量が0%〜10%の間は「太字の赤色」スタイルを利用する
threshold = 10
style = "bold red"

[[battery.display]]  # バッテリー残量が10%〜30%の間は「太字の黄色」スタイルを利用する
threshold = 30
style = "bold yellow"

# 容量が30%を超えると、バッテリーインジケーターは表示されません

```

## 文字

`character`モジュールは、端末でテキストが入力される場所の横に文字(通常は矢印)を表示します。

文字は、最後のコマンドが成功したかどうかを示します。これは、色の変更(赤/緑)またはその形状の変更(❯/✖)の2つの方法で行うことができます。後者は`use_symbol_for_status`に`true`設定されている場合にのみ行われます。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`symbol` | `"❯"` | プロンプトでテキストを入力する前に使用される記号です。
`error_symbol` | `"✖"` | 前のコマンドが失敗した場合にテキスト入力の前に使用される記号です。
`use_symbol_for_status` | `false` | シンボルを変更してエラーステータスを示します。
`vicmd_symbol` | `"❮"` | シェルがvimの通常モードである場合、プロンプトのテキスト入力の前に使用される記号です。
`style_success` | `"bold green"` | 最後のコマンドが成功した場合に使用されるスタイルです。
`style_failure` | `"bold red"` | 最後のコマンドが失敗した場合に使用されるスタイルです。
`disabled` | `false` | `character`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[character]
symbol = "➜"
error_symbol = "✗"
use_symbol_for_status = true
```

## コマンド実行時間

`cmd_duration`モジュールは、最後のコマンドの実行にかかった時間を示します。モジュールが表示されるのは、コマンドが2秒以上かかった場合、または`min_time`値が存在する場合のみです。

::: warning BashでDEBUGトラップをhookしない
`bash`でStarshipを実行している場合、 `eval $(starship init $0)`実行した後に`DEBUG`トラップをフックしないでください。そうしないと、このモジュールが**おそらくですが**壊れます。
:::

preexecのような機能を必要とするBashユーザーは、 [rcalorasのbash_preexecフレームワーク](https://github.com/rcaloras/bash-preexec)を使用できます。 `eval $(starship init $0)` を実行する前に、`preexec_functions` 、および`precmd_functions`定義するだけで、通常どおり続行します。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`min_time` | `2` | 時間を表示する最短期間です。
`style` | `"bold yellow"` | モジュールのスタイルです。
`disabled` | `false` | `cmd_duration`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[cmd_duration]
min_time = 4
```

## ディレクトリ

`directory`モジュールには、現在のディレクトリへのパスが表示され、3つの親フォルダは切り捨てられます。ディレクトリは、現在のgitリポジトリであるとルートとなります。

fishスタイルのpwdオプションを使用すると、切り捨てられたパスを非表示にする代わりに、オプションで有効にした番号に基づいて各ディレクトリの短縮名が表示されます。

たとえば、`~/Dev/Nix/nixpkgs/pkgs`で、`nixpkgs`がリポジトリルートであり、オプションが`1`に設定されている場合、`~/D/N/nixpkgs/pkgsが表示されますが、以前はnixpkgs/pkgs`でした。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`truncation_length` | `3` | 現在のディレクトリを切り捨てる親フォルダーの数です。
`truncate_to_repo` | `true` | 現在いるgitリポジトリのルートに切り捨てるかどうかです。
`fish_style_pwd_dir_length` | `0` | fish shellのpwdパスロジックを適用するときに使用する文字数です。
`style` | `"bold cyan"` | モジュールのスタイルです。
`disabled` | `false` | `directory`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[directory]
truncation_length = 8
```

## Git ブランチ

`git_branch`Moduleは、現在のディレクトリにあるレポのアクティブなブランチを表示します。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`symbol` | `" "` | 現在のディレクトリのリポジトリのブランチ名の前に使用されるシンボルです。
`truncation_length` | `2^63 - 1` | gitブランチをX書記素に切り捨てます
`truncation_symbol` | `"…"` | ブランチ名切り捨てられていることを示すための記号です。記号なしに「」も使用できます。
`style` | `"bold purple"` | モジュールのスタイルです。
`disabled` | `false` | `git_branch`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[git_branch]
symbol = "🌱 "
truncation_length = "4"
truncation_symbol = ""
```

## Git の進行状態

`git_state` Module はgitディレクトリの進行状態を表します。
例: *REBASING*, *BISECTING*, その他

進捗情報がある場合(例: REBASING 3/10)はその情報も表示されます。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`rebase` | `"REBASING"` | `rebase`進行中に表示されるテキストです。
`merge` | `"MERGING"` | `merge`進行中に表示されるテキストです。
`revert` | `"REVERTING"` | `revert`進行中に表示されるテキストです。
`cherry_pick` | `"CHERRY-PICKING"` | `cherry-pick`進行中に表示されるテキストです。
`bisect` | `"BISECTING"` | `bisect`進行中に表示されるテキストです。
`am` | `"AM"` | `apply-mailbox``git am` )の進行中に表示されるテキストです。
`am_or_rebase` | `"AM/REBASE"` | あいまいな`apply-mailbox`または`rebase`が進行中のときに表示されるテキストです。
`progress_divider` | `"/"` | 現在の進行量と合計進行量を分ける記号またはテキスト(例えば、 `" of "``"3 of 10"` )です。
`style` | `"bold yellow"` | モジュールのスタイルです。
`disabled` | `false` | `git_state`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[git_state]
progress_divider = " of "
cherry_pick = "🍒 PICKING"
```

## Gitの状態

`git_status`モジュールは、現在のディレクトリのリポジトリの状態を表すシンボルを表示します。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`conflicted` | `"="` | このブランチにはマージの競合があります。
`ahead` | `"⇡"` | このブランチは、追跡されるブランチよりも先にあります。
`behind` | `"⇣"` | このブランチは、追跡されているブランチの背後にあります。
`diverged` | `"⇕"` | このブランチは、追跡されているブランチから分岐しています。
`untracked` | `"?"` | 作業ディレクトリに追跡されていないファイルがあります。
`stashed` | `"$"` | ローカルリポジトリ用のスタッシュが存在します。
`modified` | `"!"` | 作業ディレクトリにファイルの変更があります。
`staged` | `"+"` | 新しいファイルがステージング領域に追加されました。
`renamed` | `"»"` | 名前が変更されたファイルがステージング領域に追加されました。
`deleted` | `"✘"` | ファイルの削除がステージング領域に追加されました。
`show_sync_count` | `false` | 追跡されているブランチの先行/後方カウントを表示します。
`style` | `"bold red"` | モジュールのスタイルです。
`disabled` | `false` | `git_status`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[git_status]
conflicted = "🏳"
ahead = "🏎💨"
behind = "😰"
diverged = "😵"
untracked = "🤷‍"
stashed = "📦"
modified = "📝"
staged = "➕"
renamed = "👅"
deleted = "🗑"
```

## Golang

`golang`モジュールは、現在インストールされているGolangのバージョンを示します。次の条件のいずれかが満たされると、モジュールが表示されます。

- カレントディレクトリに`go.mod`ファイルが含まれている
- カレントディレクトリに`go.sum`ファイルが含まれている
- カレントディレクトリに`glide.yaml`ファイルが含まれている
- カレントディレクトリに`Gopkg.yml`ファイルが含まれている
- カレントディレクトリに`Gopkg.lock`ファイルが含まれている
- カレントディレクトリに`Godeps`ファイルが含まれている
- カレントディレクトリに`.go`の拡張子のファイルが含まれている

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`symbol` | `"🐹 "` | Golangのバージョンを表示する前に使用される記号です。
`style` | `"bold cyan"` | モジュールのスタイルです。
`disabled` | `false` | `golang`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[golang]
symbol = "🏎💨 "
```

## ホスト名

`hostname`モジュールには、システムのホスト名が表示されます。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`ssh_only` | `true` | SSHセッションに接続されている場合にのみホスト名を表示します。
`prefix` | `""` | ホスト名の直前に表示するprefixです。
`suffix` | `""` | ホスト名の直後に表示するsuffixです。
`style` | `"bold dimmed green"` | モジュールのスタイルです。
`disabled` | `false` | `hostname`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[hostname]
ssh_only = false
prefix = "⟪"
suffix = "⟫"
disabled = false
```

## ジョブ

`jobs`モジュールには、実行中のジョブの現在の数が表示されます。このモジュールは、実行中のバックグラウンドジョブがある場合にのみ表示されます。1つ以上のジョブがある、または`threshold`に指定した値以上にジョブがある場合は実行中のジョブの数を表示します。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`symbol` | `"✦ "` | ジョブの数を表示する前に使用される記号です。
`threshold` | `1` | 超過した場合、ジョブの数を表示します。
`style` | `"bold blue"` | モジュールのスタイルです。
`disabled` | `false` | `jobs`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[jobs]
symbol = "+ "
threshold = 4
```

## 改行

`line_break`モジュールは、プロンプトを2行に分割します。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`disabled` | `false` | `line_break`モジュールを無効にして、プロンプトを1行にします。

### 設定例

```toml
# ~/.config/starship.toml

[line_break]
disabled = true
```

## Nix-shell

`nix_shell`モジュールは、nix-shell環境を示しています。このモジュールは、nixシェル環境内にあるときに表示されます。

### オプション

変数 | デフォルト | 説明
--- | --- | ---
`use_name` | `false` | nix-shellの名前を表示します。
`impure_msg` | `impure` | impureメッセージをカスタマイズします。
`pure_msg` | `pure` | pureメッセージをカスタマイズします。
`style` | `"bold red"` | モジュールのスタイルです。
`disabled` | `false` | `nix_shell`モジュールを無効にします。

### 設定例

```toml
# ~/.config/starship.toml

[nix_shell]
disabled = true
use_name = true
impure_msg = "impure shell"