4

の終わりに/usr/share/fish/config.fish、次のコマンドがあります。

bind \e\[1\;5C forward-word
bind \e\[1\;5D backward-word
echo foo

その後、魚を実行すると、「foo」が出力されます。次にbind、すべてのバインドされたキーの組み合わせのリストを出力するために実行しますが、の出力に「前方単語」および「後方単語」のエントリはありませんbind

私は何か見落としてますか?

4

2 に答える 2

11

編集: fish 3.0+ では、起動時に、config.fishまたは構成スニペット内でキー バインドを作成できます ( conf.d/*.fish)。フィッシュシェル/プル/5195を見る


これらのキーバインドはすでにfish_default_key_bindingsで定義されているため、問題は端末エミュレータにあり、正しいエスケープ シーケンスを送信していないと推測しています。

グローバル設定も編集しないでください/usr/share/fish/config.fish。カスタム構成が入ります~/.config/fish/config.fish

カスタム キー バインディングを指定する場合は、関数内で行う必要がありますfish_user_key_bindings

これは、次を編集して手動で行うことができます~/.config/fish/functions/fish_user_key_bindings.fish

または、提供されているツールを使用します。

関数が存在しない場合は、次のことができます。

function fish_user_key_bindings
  bind \e\[1\;5C forward-word
  bind \e\[1\;5D backward-word
end
funcsave fish_user_key_bindings

または、すでに関数がある場合:

funced fish_user_key_bindings
funcsave fish_user_key_bindings

設定でこれらを指定できない理由は、後でリセットされるためです。ここでは fish_default_key_bindings 内です

于 2013-05-21T16:35:36.190 に答える
6

これを関数内に置くだけfish_user_key_bindingsで、config.fish

function fish_user_key_bindings
  bind \e\[1\;5C forward-word
  bind \e\[1\;5D backward-word
end
于 2013-06-09T18:22:37.957 に答える