starship/docs/ja/config
Thomas Lee 27e8c8f3eb refactor: Rewrite `time` module to use module config (#483)
- Config option renamed: `12hr` → `use_12hr`
2019-10-06 00:07:00 +09:00
..
README.md refactor: Rewrite `time` module to use module config (#483) 2019-10-06 00:07:00 +09:00

README.md

設定

::: tip

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

:::

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

$ touch ~/.config/starship.toml

Starshipのすべての設定は、このTOMLファイルで行われます。

# Don't print a new line at the start of the prompt
add_newline = false

# Replace the "" symbol in the prompt with "➜"
[character]      # The name of the module we are configuring is "character"
symbol = "➜"     # The "symbol" segment is being set to "➜"

# Disable the package module, hiding it from the prompt completely
[package]
disabled = true

用語

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

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

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

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

スタイルの設定

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

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

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

プロンプト

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

オプション

変数 デフォルト 説明
add_newline true プロンプトの開始前に新しい行を追加します。
prompt_order link プロンプトモジュールを出力する順序を設定します。

設定例

# ~/.config/starship.toml

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

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

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

prompt_order = [
    "username",
    "hostname",
    "kubernetes",
    "directory",
    "git_branch",
    "git_state",
    "git_status",
    "package",
    "dotnet",
    "golang",
    "java",
    "nodejs",
    "python",
    "ruby",
    "rust",
    "nix_shell",
    "memory_usage",
    "aws",
    "env_var",
    "cmd_duration",
    "line_break",
    "jobs",
    "battery",
    "time",
    "character",
]

AWS

aws モジュールは現在のAWSプロファイルが表示されます。 これはAWS_PROFILE環境変数に基づいています。

オプション

変数 デフォルト 説明
symbol "☁️ " 現在のAWSプロファイルを表示する前に表示される記号です。
style "bold yellow" モジュールのスタイルです。
disabled false awsモジュールを無効にします。

設定例

# ~/.config/starship.toml

[aws]
style = "bold blue"
symbol = "🅰 "

バッテリー

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

オプション

変数 デフォルト 説明
full_symbol "•" バッテリーが満タンのときに表示される記号です。
charging_symbol "⇡" バッテリーの充電中に表示される記号です。
discharging_symbol "⇣" バッテリーが放電しているときに表示される記号です。
display link モジュールの閾値とスタイルを表示します。
disabled false batteryモジュールを無効にします。
いくつかのまれなバッテリー状態のオプションもあります。
変数 説明
unknown_symbol バッテリー状態が不明なときに表示される記号です。
empty_symbol バッテリーが空のときに表示される記号です。

オプションを指定しない限り、バッテリーの状態がunknownもしくはemptyになった場合にインジケーターは非表示になります。

設定例

# ~/.config/starship.toml

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

バッテリーの表示

display</ 0> オプションを使用して、バッテリーインジケーターを表示するタイミング(閾値)と外観(スタイル)を定義します。 <code>display が提供されない場合、 デフォルトは次のとおりです。

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

オプション

displayオプションは、次の表の通りです。

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

設定例

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

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

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

文字

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

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

オプション

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

設定例

# ~/.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フレームワークを使用できます。 eval $(starship init $0) を実行する前に、preexec_functions、およびprecmd_functions定義するだけで、通常どおり続行します。

オプション

変数 デフォルト 説明
min_time 2 時間を表示する最短期間です。
prefix took Prefix to display immediately before the command duration.
style "bold yellow" The style for the module.
disabled false Disables the cmd_duration module.

設定例

# ~/.config/starship.toml

[cmd_duration]
min_time = 4
prefix = "underwent "

ディレクトリ

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

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

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

オプション

変数 デフォルト 説明
truncation_length 3 現在のディレクトリを切り捨てる親フォルダーの数です。
truncate_to_repo true 現在いるgitリポジトリのルートに切り捨てるかどうかです。
style "bold cyan" モジュールのスタイルです。
disabled false directoryモジュールを無効にします。
このモジュールは、どのようにディレクトリを表示するかについての高度なオプションをいくつか持っています。
変数 デフォルト 説明
fish_style_pwd_dir_length 0 fish shellのpwdパスロジックを適用するときに使用する文字数です。
use_logical_path true OSからのパスの代わりに、シェル(PWD) によって提供される論理パスを表示します。

設定例

# ~/.config/starship.toml

[directory]
truncation_length = 8

Dotnet

The dotnet module shows the relevant version of the .NET Core SDK for the current directory. If the SDK has been pinned in the current directory, the pinned version is shown. Otherwise the module shows the latest installed version of the SDK.

This module will only be shown in your prompt when one of the following files are present in the current directory: global.json, project.json, *.sln, *.csproj, *.fsproj, *.xproj. You'll also need the .NET Core command-line tools installed in order to use it correctly.

Internally, this module uses its own mechanism for version detection. Typically it is twice as fast as running dotnet --version, but it may show an incorrect version if your .NET project has an unusual directory layout. If accuracy is more important than speed, you can disable the mechanism by setting heuristic = false in the module options.

オプション

変数 デフォルト 説明
symbol "•NET " The symbol used before displaying the version of dotnet.
style "bold blue" The style for the module.
heuristic true Use faster version detection to keep starship snappy.
disabled false Disables the dotnet module.

設定例

# ~/.config/starship.toml

[dotnet]
symbol = "🥅 "
style = "green"
heuristic = false

Environment Variable

The env_var module displays the current value of a selected environment variable. The module will be shown only if any of the following conditions are met:

  • variableオプションが、既存の環境変数と一致する
  • variableオプションが定義されておらず、defaultオプションが定義されている

オプション

変数 デフォルト 説明
symbol The symbol used before displaying the variable value.
variable The environment variable to be displayed.
default The default value to be displayed when the selected variable is not defined.
prefix "" Prefix to display immediately before the variable value.
suffix "" Suffix to display immediately after the variable value.
style "dimmed black" The style for the module.
disabled false Disables the env_var module.

設定例

# ~/.config/starship.toml

[env_var]
variable = "SHELL"
default = "unknown shell"

Git Branch

The git_branch module shows the active branch of the repo in your current directory.

オプション

変数 デフォルト 説明
symbol " " The symbol used before the branch name of the repo in your current directory.
truncation_length 2^63 - 1 Truncates a git branch to X graphemes
truncation_symbol "…" The symbol used to indicate a branch name was truncated. You can use "" for no symbol
style "bold purple" The style for the module.
disabled false Disables the git_branch module.

設定例

# ~/.config/starship.toml

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

Git State

The git_state module will show in directories which are part of a git repository, and where there is an operation in progress, such as: REBASING, BISECTING, etc. If there is progress information (e.g., REBASING 3/10), that information will be shown too.

オプション

変数 デフォルト 説明
rebase "REBASING" The text displayed when a rebase is in progress.
merge "MERGING" The text displayed when a merge is in progress.
revert "REVERTING" The text displayed when a revert is in progress.
cherry_pick "CHERRY-PICKING" The text displayed when a cherry-pick is in progress.
bisect "BISECTING" The text displayed when a bisect is in progress.
am "AM" The text displayed when an apply-mailbox (git am) is in progress.
am_or_rebase "AM/REBASE" The text displayed when an ambiguous apply-mailbox or rebase is in progress.
progress_divider "/" The symbol or text which will separate the current and total progress amounts. (e.g., " of ", for "3 of 10")
style "bold yellow" The style for the module.
disabled false Disables the git_state module.

設定例

# ~/.config/starship.toml

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

Git Status

The git_status module shows symbols representing the state of the repo in your current directory.

オプション

変数 デフォルト 説明
conflicted "=" This branch has merge conflicts.
ahead "⇡" This branch is ahead of the branch being tracked.
behind "⇣" This branch is behind of the branch being tracked.
diverged "⇕" This branch has diverged from the branch being tracked.
untracked "?" There are untracked files in the working directory.
stashed "$" A stash exists for the local repository.
modified "!" There are file modifications in the working directory.
staged "+" A new file has been added to the staging area.
renamed "»" A renamed file has been added to the staging area.
deleted "✘" A file's deletion has been added to the staging area.
show_sync_count false Show ahead/behind count of the branch being tracked.
prefix [ Prefix to display immediately before git status.
suffix ] Suffix to display immediately after git status.
style "bold red" The style for the module.
disabled false Disables the git_status module.

設定例

# ~/.config/starship.toml

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

Golang

The golang module shows the currently installed version of Golang. The module will be shown if any of the following conditions are met:

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

オプション

変数 デフォルト 説明
symbol "🐹 " The symbol used before displaying the version of Golang.
style "bold cyan" The style for the module.
disabled false Disables the golang module.

設定例

# ~/.config/starship.toml

[golang]
symbol = "🏎💨 "

Hostname

The hostname module shows the system hostname.

オプション

変数 デフォルト 説明
ssh_only true Only show hostname when connected to an SSH session.
prefix "" Prefix to display immediately before the hostname.
suffix "" Suffix to display immediately after the hostname.
style "bold dimmed green" The style for the module.
disabled false Disables the hostname module.

設定例

# ~/.config/starship.toml

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

Jobs

The jobs module shows the current number of jobs running. The module will be shown only if there are background jobs running. The module will show the number of jobs running if there is more than 1 job, or more than the threshold config value, if it exists.

オプション

変数 デフォルト 説明
symbol "✦ " The symbol used before displaying the number of jobs.
threshold 1 Show number of jobs if exceeded.
style "bold blue" The style for the module.
disabled false Disables the jobs module.

設定例

# ~/.config/starship.toml

[jobs]
symbol = "+ "
threshold = 4

Kubernetes

Displays the current Kubernetes context name and, if set, the namespace from the kubeconfig file. The namespace needs to be set in the kubeconfig file, this can be done via kubectl config set-context starship-cluster --namespace astronaut. If the $KUBECONFIG env var is set the module will use that if not it will use the ~/.kube/config.

オプション

変数 デフォルト 説明
symbol "☸ " The symbol used before displaying the Cluster info.
style "bold blue" The style for the module.
disabled false Disables the kubernetes module

設定例

# ~/.config/starship.toml

[kubernetes]
symbol = "⛵ "
style = "dim green"
disabled = true

Line Break

The line_break module separates the prompt into two lines.

オプション

変数 デフォルト 説明
disabled false Disables the line_break module, making the prompt a single line.

設定例

# ~/.config/starship.toml

[line_break]
disabled = true

Nix-shell

The nix_shell module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.

オプション

変数 デフォルト 説明
use_name false Display the name of the nix-shell.
impure_msg impure Customize the "impure" msg.
pure_msg pure Customize the "pure" msg.
style "bold red" The style for the module.
disabled false Disables the nix_shell module.

設定例

# ~/.config/starship.toml

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

Memory Usage

The memory_usage module shows current system memory and swap usage.

By default the swap usage is displayed if the total system swap is non-zero.

::: tip

This module is disabled by default. To enable it, set disabled to false in your configuration file.

:::

オプション

変数 デフォルト 説明
show_percentage false Display memory usage as a percentage of the available memory.
show_swap when total swap non-zero Display swap usage.
threshold 75 Hide the memory usage unless it exceeds this percentage.
symbol "🐏 " The symbol used before displaying the memory usage.
style "bold dimmed white" The style for the module.
disabled true Disables the memory_usage module.

設定例

# ~/.config/starship.toml

[memory_usage]
show_percentage = true
show_swap = true
threshold = -1
icon = " "
style = "bold dimmed green"

Java

The java module shows the currently installed version of Java. The module will be shown if any of the following conditions are met:

  • カレントディレクトリにpom.xml, もしくはbuild.gradleファイルが含まれている
  • カレントディレクトリに拡張子が.java, .class, もしくは.jarのファイルが含まれている

オプション

変数 デフォルト 説明
symbol "☕ " The symbol used before displaying the version of Java.
style "dimmed red" モジュールのスタイルです。
disabled false Disables the java module.

設定例

# ~/.config/starship.toml

[java]
symbol = "🌟 "

NodeJS

The nodejs module shows the currently installed version of NodeJS. The module will be shown if any of the following conditions are met:

  • カレントディレクトリにpackage.jsonファイルが含まれている
  • カレントディレクトリにnode_modulesディレクトリが含まれている
  • カレントディレクトリに.jsの拡張子のファイルが含まれている

オプション

変数 デフォルト 説明
symbol "⬢ " The symbol used before displaying the version of NodeJS.
style "bold green" The style for the module.
disabled false Disables the nodejs module.

設定例

# ~/.config/starship.toml

[nodejs]
symbol = "🤖 "

Package Version

The package module is shown when the current directory is the repository for a package, and shows its current version. The module currently supports npm, cargo, and poetry packages.

  • npm npmパッケージバージョンは、現在のディレクトリにあるpackage.jsonから抽出されます
  • cargo cargoパッケージバージョンは、現在のディレクトリにあるCargo.tomlから抽出されます。
  • poetry poetryパッケージバージョンは、現在のディレクトリにあるpyproject.tomlから抽出されます

⚠️ 表示されるバージョンは、パッケージマネージャーではなく、ソースコードが現在のディレクトリにあるパッケージのバージョンです。

オプション

変数 デフォルト 説明
symbol "📦 " The symbol used before displaying the version the package.
style "bold red" The style for the module.
disabled false Disables the package module.

設定例

# ~/.config/starship.toml

[package]
symbol = "🎁 "

Python

The python module shows the currently installed version of Python.

If pyenv_version_name is set to true, it will display the pyenv version name.

Otherwise, it will display the version number from python --version and show the current Python virtual environment if one is activated.

The module will be shown if any of the following conditions are met:

  • カレントディレクトリに.python-versionファイルが含まれている
  • カレントディレクトリにrequirements.txtファイルが含まれている
  • カレントディレクトリにpyproject.tomlファイルが含まれている
  • カレントディレクトリに.pyの拡張子のファイルが含まれている
  • カレントディレクトリにPipfileファイルが含まれている
  • カレントディレクトリにtox.iniファイルが含まれている

オプション

変数 デフォルト 説明
symbol "🐍 " The symbol used before displaying the version of Python.
pyenv_version_name false Use pyenv to get Python version
pyenv_prefix "pyenv " Prefix before pyenv version display (default display is pyenv MY_VERSION)
style "bold yellow" The style for the module.
disabled false Disables the python module.

設定例

# ~/.config/starship.toml

[python]
symbol = "👾 "
pyenv_version_name = true
pyenv_prefix = "foo "

Ruby

The ruby module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:

  • カレントディレクトリにGemfileファイルが含まれている
  • カレントディレクトリに.rbの拡張子のファイルが含まれている

オプション

変数 デフォルト 説明
symbol "💎 " The symbol used before displaying the version of Ruby.
style "bold red" The style for the module.
disabled false Disables the ruby module.

設定例

# ~/.config/starship.toml

[ruby]
symbol = "🔺 "

Rust

The rust module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:

  • カレントディレクトリにCargo.tomlファイルが含まれている
  • カレントディレクトリに.rsの拡張子のファイルが含まれている

オプション

変数 デフォルト 説明
symbol "🦀 " The symbol used before displaying the version of Rust.
style "bold red" The style for the module.
disabled false Disables the rust module.

設定例

# ~/.config/starship.toml

[rust]
symbol = "⚙️ "

Time

The time module shows the current local time. The format configuration value is used by the chrono crate to control how the time is displayed. Take a look at the chrono strftime docs to see what options are available.

::: tip

This module is disabled by default. To enable it, set disabled to false in your configuration file.

:::

Options

Variable Default Description
use_12hr false Enables 12 hour formatting
format see below The chrono format string used to format the time.
style bold yellow The style for the module time
disabled true Disables the time module.

If use_12hr is true, then format defaults to "%r". Otherwise, it defaults to "%T". Manually setting format will override the use_12hr setting.

Example

# ~/.config/starship.toml

[time]
disabled = false
format = "🕙[ %T ]"

Username

The username module shows active user's username. The module will be shown if any of the following conditions are met:

  • カレントユーザーがroot
  • カレントユーザーが、ログインしているユーザーとは異なる
  • ユーザーがSSHセッションとして接続されている
  • show_always変数がtrueに設定されている

Options

Variable Default Description
style_root "bold red" The style used when the user is root.
style_user "bold yellow" The style used for non-root users.
show_always false Always shows the username module.
disabled false Disables the username module.

Example

# ~/.config/starship.toml

[username]
disabled = true