我在 bash shell 中使用 vi 模式。
如果我进入插入命令模式并输入 1-9 之间的数字(例如:5,在下面的示例中),我会收到以下提示:
(arg: 5) <cursor>
Run Code Online (Sandbox Code Playgroud)
这是什么意思?我似乎无法对这个提示做任何有用的事情,我不知道它的目的是什么。
我什至查看了 bash 源代码,而这些源代码又进入了 GNU Readline 源代码。
最终被调用的函数是rl_vi_arg_digit,然后调用rl_digit_argument,显示(arg: N)提示。但我无法从评论或相关代码中看到它实际用于.
有人知道吗?
您实际上退出了插入模式并处于命令模式。数字是一个可以与运动键一起使用的参数,就像在vi:例如5h向左移动 5 个字符。同样,您可以说5s删除接下来的 5 个字符并进入插入模式(s替换 5 个字符)。