当我在Linux Mint上使用Fish Shell时,使用 Ctrl + Left 或Ctrl + Right键不会将光标移动到上一个或下一个单词。它在I
和N
之间切换:
这是我,然后是N:
我当时不能完成部分完成,所以真的很无聊。
我该如何解决这个问题?
答案 0 :(得分:1)
格伦杰克曼的评论是正确的 - 你正在使用vi模式。
某些第三方提示(例如来自Oh-My-Fish或类似提示)由于某种原因启用它。
要切换回去,一旦删除了有问题的行或包(搜索fish_default_key_bindings
),通常以交互方式执行fish_vi_key_bindings
就足够了。
或者,如果你喜欢vi-mode,你可以添加一个绑定。创建一个名为fish_user_key_bindings
的函数(例如,使用funced
)。
内容应如下所示
function fish_user_key_bindings
bind -M $mode $sequence $command
end
其中" $ command"这将是"落后词"。 $ mode将是您希望绑定有效的vi模式,例如"插入"或"默认" (vi会调用"正常"模式)。
" $序列"将是按下此组合键时终端发送给fish的文本序列。不幸的是,它们没有标准化,因此您需要确定它在您的系统中的位置。
fish_key_reader
在这里很有用 - 执行它,按下组合并使用它告诉你的内容。在我的终端上,ctrl + left发送\e\[1\;5D
(和ctrl +右发送相同的C而不是D)。