fish:在自动提示中可以交换“right”和“Alt + right”键绑定吗?

时间:2017-12-22 11:00:46

标签: fish

在鱼类自动提示中,right完全接受该建议,Alt + right接受语言。由于我个人更喜欢通过单词建议,我想交换这两个键绑定。

我发现我可以使用accept-autosuggestion命令将键绑定更改为bind,但我无法找到交换这两种行为的方法。

是否可以交换这些,如果可能的话,我该如何设置鱼?

2 个答案:

答案 0 :(得分:1)

我的一个旧答案:

  

没有

     

Fish的绑定接受了他们将光标移到的建议部分 - 例如"前向字"如果实际上是在命令行中,那么它将移动到下一个单词,因此它接受该建议的下一个单词。

     

例外是" forward-char" (默认情况下绑定到例如右箭头和ctrl-f),它接受整个建议。

澄清:forward-char 硬编码以接受整个自动提示,如果它移过它的第一个字符。请参阅the source

这需要一个补丁来捕鱼。

答案 1 :(得分:0)

您需要做的就是创建自己的自定义键绑定,以覆盖这些键的默认绑定。创建一个名为〜/ .config / fish / functions / fish_user_key_bindings.fish 的文件,内容与此类似:

function fish_user_key_bindings
    bind \e\[C forward-bigword
    bind \e\e\[C forward-char
end

我说"类似"因为你的密钥发送的确切顺序可能与我的系统不同(但可能是相同的)。查找密钥发送方式的最简单方法是使用fish_key_reader程序。请注意,您可以通过键入bind,然后键入它发送的键名称或字符序列,但无需执行任何操作,即可找到函数绑定到键。如果您只需输入bind,您就会看到当前有效的所有绑定。