- 書式
- abbr --add word phrase...
- 書式
- abbr --show
- 書式
- abbr --list
- 書式
- abbr --erase word
概要
abbr
コマンドは
fishが展開する 短縮名 を管理します。
短縮名とは、
ユーザ定義の文字列か単語で、
入力後に長い文字列に置換されるものです。
(訳注:短縮名は他のシェルにおける
別名定義(エイリアス)に相当します。)
たとえば、 git checkout
を
頻繁に実行するならば
gco
という短縮名を付けられます
。
gco
と入力した後にスペースかEnterを押すと、
コマンドラインに本来の git checkout
が出てきます。
短縮名は
変数 fish_user_abbreviations
に
格納されます。
これは最初に短縮名が定義されたときに
自動的に ユニバーサル変数 として作成されます。
短縮名を特定のfishセッション固有にして
他のセッションに波及させたくないときは、
最初の短縮名を定義する前に以下の設定を
~/.config/fish/fish.config
に加えてください。
if status --is-interactive set -g fish_user_abbreviations abbr --add first 'echo my first abbreviation' abbr --add second 'echo my second abbreviation' ... end
短縮名はコマンドラインから
直接作成できます。
fish_user_abbreviations
が
ユニバーサル変数であるならば、
短縮名は自動的に保存され、
他のfishセッションからも
使えるようになります。
fish_user_abbreviations
を
ユニバーサル変数のままにしておくならば、
abbr --add
を config.fish に書くと
起動時間が遅くなるだけです。
オプション
以下のパラメータが使えます。
-a WORD PHRASE
/--add WORD PHRASE
WORD
をPHRASE
に展開する
新しい短縮名を定義する。-s
/--show
- すべての短縮名と展開後の文字列を
実行可能な形で出力する。 -l
/--list
- すべての短縮名を出力する。
-e WORD
/--erase WORD
- 短縮名
WORD
を削除する。
注意:
fish 2.1から abbr -a WORD=PHRASE
の
書式をサポートしました。
今でも使うことができますが非推奨です。
実行例
gco
を git checkout
に置換させます。
abbr -a gco git checkout
短縮名 gco
を削除します。
abbr -e gco
another_host
で定義された
全短縮名をSSH経由でインポートします。
ssh another_host abbr -s | source
補足
短縮名は alias コマンドによる
別名 とは異なります。
alias
はあくまでも
function コマンドによる
関数定義のラッパーです。
fishにおいて
別名と関数名は同列のものであり、
区別はできません。
短縮名はコマンド
(ビルトイン、関数、外部コマンド)
に展開されるため、
他のシェルにおける別名に相当します。
fishの短縮名は
それをさらに推し進めて、
入力後にコマンドライン上で
見た目としてフィードバックされます。
履歴にも
展開後の文字列が登録されます。
つまり、
入力の省力化にそのまま貢献します。
ただし、短縮名は
コマンドを受け付ける位置でのみ
展開されます。
文字列リテラル中などでは
展開されません。
上記の例では
gco
という短縮名を定義しましたが、
echo gco
は gco と表示されます。
最後までお読みいただき、ありがとうございました。参考になれば嬉しいです。