🎉
Nushellの設定について
設定
各種設定が~/.config/nushell/config.nu
にありますが、簡単にまとめてみました。わかりにくい設定は補足に追記しています。
Ver0.72からは設定にgroup
でグルーピングするようになってきました。banner
以外は変更しなくていいかもしれません。
グループ名 | オプション名 | 説明 | 初期値 |
---|---|---|---|
ls | use_ls_colors | 環境変数LS_COLORS[1]に従って色付きでls コマンドの結果を表示する |
true |
lsl | clickable_links | URLリンクをクリックしたときの振る舞いを有効にするか | true |
rm | always_trash | rmコマンド使用時ゴミ箱に移動する | false |
cd | abbreviations | ディレクトリ名に省略形[^cd s/o/f をcd some/other/folder に展開]を許すか |
true |
table | mode | 表の表示形式[2]を選択 | rounded |
table | index_mode | 表にインデックス番号を表示するか[3] | always |
table | trim methodology | 画面端を超える場合折り返す(wrapping),切り詰める(truncating)か選択します | wrapping |
table | trim wrapping_try_keep_words | 折返しする場合、単語をそのまま表示します | true |
table | trim truncating_suffix | 切り詰め指定している場合、のサフィックスを指定します | ... |
history | max_size | ヒストリの保持数を指定します | 10000 |
history | sync_on_enter | 複数のセッションで履歴を共有するか決めます | true |
history | file_format | ヒストリの保存形式を決めます(plaintext:テキスト,sqlite:SQlite3のDB形式) | plaintext |
completions | case_sensitive | 補完時に大文字・小文字の無視するか決定します | true |
completions | quick | 補完候補が1つの場合、選択状態にするか決定します(選択:true,非選択:false) | true |
completions | partial | プロンプトの部分的な入力を防ぐには、これを false に設定します | true |
completions | algorithm | 補完アルゴリズムを選択します(prefix[4],fuzzy[5]) | prefix |
completions | external enable | 外部のプログラム[6]による補完に関する設定です。true で有効です。補足参照 |
true |
completions | external max_results | 最大候補数を設定します.小さくすることでパフォーマンス向上が見込まれます | 100 |
completions | external completer | 外部プログラムを実行するための関数を指定します | null |
filesize | metric | ファイルサイズの単位をISO準拠の2のべき乗とする(true)か、Windows同様キビバイト[7](false)にします | true |
filesize | format | 表示単位を決めます(自動:auto,それ以外のb/kb/kib/mbなどの単位) | auto |
color_config | 色付けのテーマを指定します | $dark_theme | |
use_grid_icons |
grid 使用時にnameがあれば、対応するicon をファイル名先頭に付与(補足参照) |
true | |
footer_mode | テーブルのフッター(カラム名)を表示します(常に:"always", 指定行以上:数値文字, 自動:"auto", 表示しない:"never").補足参照 | "25" | |
float_precision | 表示する小数点の桁数を決めます | 2 | |
buffer_editor | [TODO] | ||
use_ansi_coloring | ANSI Escapeシーケンスによる色付けを行うか決めます(色つけ:true,色つけしない:false) | true | |
edit_mode | 編集モードをemacsかviから選択します | emacs | |
shell_integration | VS Code ターミナルでコマンドの開始を示す丸い青/赤/灰色の装飾を表示します。 | true | |
show_banner | Nushell起動時にバナー表示するか決めます(表示する:tue,表示しない:false) | true | |
render_right_prompt_on_last_line | 最下行で右側にプロンプトを表示するか | false |
補足
- use_grid_icons = true
grid
使用時にnameがあれば、対応するicon
をファイル名先頭に付与
- footer_mode
footer_mode = 25:
❯ ls
╭───┬───────────────────┬──────┬────────┬────────────╮
│ # │ name │ type │ size │ modified │
├───┼───────────────────┼──────┼────────┼────────────┤
│ 1 │ README.md │ file │ 78 B │ a week ago │
│ 2 │ articles │ dir │ 4.1 KB │ a day ago │
│ 3 │ books │ dir │ 4.1 KB │ a week ago │
│ 4 │ images │ dir │ 4.1 KB │ a week ago │
│ 5 │ node_modules │ dir │ 4.1 KB │ a day ago │
│ 6 │ package-lock.json │ file │ 657 B │ a day ago │
│ 7 │ package.json │ file │ 526 B │ a day ago │
╰───┴───────────────────┴──────┴────────┴────────────╯
footer_mode = "always"
❯ ls
╭───┬───────────────────┬──────┬────────┬────────────╮
│ # │ name │ type │ size │ modified │
├───┼───────────────────┼──────┼────────┼────────────┤
│ 1 │ README.md │ file │ 78 B │ a week ago │
│ 2 │ articles │ dir │ 4.1 KB │ a day ago │
│ 3 │ books │ dir │ 4.1 KB │ a week ago │
│ 4 │ images │ dir │ 4.1 KB │ a week ago │
│ 5 │ node_modules │ dir │ 4.1 KB │ a day ago │
│ 6 │ package-lock.json │ file │ 657 B │ a day ago │
│ 7 │ package.json │ file │ 526 B │ a day ago │
├───┼───────────────────┼──────┼────────┼────────────┤
│ # │ name │ type │ size │ modified │
╰───┴───────────────────┴──────┴────────┴────────────╯
footer_mode = 5:
❯ ls
╭───┬───────────────────┬──────┬────────┬────────────╮
│ # │ name │ type │ size │ modified │
├───┼───────────────────┼──────┼────────┼────────────┤
│ 1 │ README.md │ file │ 78 B │ a week ago │
│ 2 │ articles │ dir │ 4.1 KB │ a day ago │
│ 3 │ books │ dir │ 4.1 KB │ a week ago │
│ 4 │ images │ dir │ 4.1 KB │ a week ago │
│ 5 │ node_modules │ dir │ 4.1 KB │ a day ago │
│ 6 │ package-lock.json │ file │ 657 B │ a day ago │
│ 7 │ package.json │ file │ 526 B │ a day ago │
├───┼───────────────────┼──────┼────────┼────────────┤
│ # │ name │ type │ size │ modified │
╰───┴───────────────────┴──────┴────────┴────────────╯
- External Completions
Nushll Ver0.68より外部プログラム[8]による補完と統合できるようになりました。この機能はまだ完全には洗練されておらず、場合によっては外部コンプリーターが正しくトリガーされないことに注意してください (External completions command issue · Issue #6378 · nushell/nushell)。
Config.nu設定内容:
let carapace_completer = {|spans|
carapace $spans.0 nushell $spans | from json
}
completions: {
・・・
external: {
enable: true
max_results: 100
completer: $carapace_completer
}
- banner(ver. 0.72)
__ ,
.--()°'.' Welcome to Nushell,
'|, . ,' based on the nu language,
!_-(_\ where all data is structured!
Please join our Discord community at https://discord.gg/NtAbbGn
Our GitHub repository is at https://github.com/nushell/nushell
Our Documentation is located at http://nushell.sh
Tweet us at @nu_shell
It's been this long since Nushell's first commit:
3yr 6month 3wk 6day 17hr 51min 33sec 593ms 587µs 565ns
You can disable this banner using the config nu command
to modify the config.nu file and setting show_banner to false.
let-env config = {
show_banner: false
...
}
-
basic,compact,compact_double,light,thin,with_love,rounded,reinforced,heavy,none ↩︎
-
always,never,auto ↩︎
-
prefixでは、単語の先頭から始まる同一の部分文字列に対してのみ照合 ↩︎
-
fuzzyではスペル チェック機能に類似したアルゴリズムを使用して、類似しているが同一ではない一致を検出するため、最も可能性の高い一致が検出 ↩︎
-
例えばrsteube/carapace: command argument completion generator for spf13/cobra ↩︎
-
rsteube/carapace: command argument completion generator for spf13/cobra ↩︎
Discussion