succi0303 blog

This is my personal blog. All posts are my own.

Bashに高機能プロンプトのStarshipを導入する

Bashのシェル環境に高機能プロンプトツールのStarshipを導入しました。

Starshipは複数のOSで動作するカスタマイズ可能なプロンプトユーティリティです。Gitのブランチを表示したり、AWSのプロファイル情報を表示したりできます。

Starshipのインストール

公式サイトのクイックインストールを参考に、環境にあわせてインストールコマンドを実行します。Homebrew (Linuxbrew)を利用する場合は、以下のコマンドどインストールできます。

brew install starship

.bashrcの最後にStarshipの初期化スクリプトを追加します。

# ~/.bashrc

eval "$(starship init bash)"

動作の前提としてNerd Fontsが必要です。

Starshipの設定

~/.config/starship.tomlに設定を記述します。公式の設定ドキュメントを参考に、好みに応じて設定します。デフォルトでは無効な機能があるので必要に応じて無効化を解除するようにします。

# Get editor completions based on the config schema
"$schema" = 'https://starship.rs/config-schema.json'

# Inserts a blank line between shell prompts
add_newline = false

# Replace the '❯' symbol in the prompt with '➜'
[character] # The name of the module we are configuring is 'character'
success_symbol = '[➜](bold green)' # The 'success_symbol' segment is being set to '➜' with the e

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

[hostname]
ssh_only = false
format = '[$ssh_symbol](bold blue) on [$hostname](bold red) '
trim_at = '.companyname.com'
disabled = false

[sudo]
style = 'bold green'
symbol = '👩‍💻 '
disabled = false

[time]
disabled = false
format = '🕙[\[ $time \]]($style) '
time_format = '%T'
utc_time_offset = '+9'
time_range = '10:00:00-14:00:00'

[username]
style_user = 'white bold'
style_root = 'black bold'
format = 'user: [$user]($style) '
disabled = false
show_always = true

イメージ

Starship prompt