![在终端中按“v”将在编辑器中打开 bash-fc.some_random_string](https://linux22.com/image/1180500/%E5%9C%A8%E7%BB%88%E7%AB%AF%E4%B8%AD%E6%8C%89%E2%80%9Cv%E2%80%9D%E5%B0%86%E5%9C%A8%E7%BC%96%E8%BE%91%E5%99%A8%E4%B8%AD%E6%89%93%E5%BC%80%20bash-fc.some_random_string.png)
最近我开始在终端中使用 vim 键绑定。我通过在 ~/.bashrc 文件中添加以下行来更改终端的键绑定。
set -o vi
但我注意到一个问题。当我按“Esc”键进入正常模式,然后按“v”时,它会在默认编辑器中打开一个具有以下名称的文件。
/tmp/bash-fc.some_random_string_here
例如,/tmp/bash-fc.PFb1Vy
我尝试检查所有终端快捷键,但找不到任何带有“v”的内容。虽然我是 shell 脚本的新手,但我检查了 ~/.bashrc 文件,但找不到任何与“bash-fc”相关的内容。
你们当中有谁能告诉我这背后的原因是什么?每次不小心打开 vim 然后又退出 vim 真的很烦人 :(
答案1
没有视觉模式在 Bash 的 Vi 模式下。v正常模式下,用户首选的编辑器中会转储当前行。用户在那里输入/编辑命令,保存并退出编辑器(在 Vim 或:x
中:wq
),Bash 会发出命令。
禁用绑定您可以将其重新绑定到不引人注意的操作。只需将其添加到文件中~/.inputrc
:
set keymap vi-command
"v":redraw-current-line
该文件仅影响 GNU Readline(处理 Bash 中的用户输入的库),而不会影响 Vim 编辑器本身。
目前,Vi 模式的用户大多居住在未记录的领域(v既不在 Bash 手册中,也不在Readline 手册),并遇到一些错误。例如,如果你输入
a b b
在提示符下,将光标放在 上a
,然后尝试tb
在正常模式下,光标将跳转到第一个b
,但是如果您尝试用 重复移动;
,光标将不会移动。