当vi-mode中的bash切换到insert-mode时,我总是有点困惑,因为它没有给出任何关于使用模式(命令或编辑)的提示。有什么方法可以区分mods吗?可能是光标颜色的自动改变或类似的东西?
发布于 2017-02-08 16:06:31
基于@Isaac Hanson的回答,您可以通过在.inputrc中设置光标样式来反映模式(就像在VIM中一样)。
set editing-mode vi
set show-mode-in-prompt on
set vi-ins-mode-string \1\e[6 q\2
set vi-cmd-mode-string \1\e[2 q\2
# optionally:
# switch to block cursor before executing a command
set keymap vi-insert
RETURN: "\e\n"这将使您在插入模式下显示一个梁光标,或在普通模式下显示一个块光标。
其他选项(替换\e[后的数字):
Ps = 0 -> blinking block.
Ps = 1 -> blinking block (default).
Ps = 2 -> steady block.
Ps = 3 -> blinking underline.
Ps = 4 -> steady underline.
Ps = 5 -> blinking bar (xterm).
Ps = 6 -> steady bar (xterm).您的终端必须支持DECSCURSR (如xterm、urxvt、iTerm2)。TMUX也支持这些(如果您在tmux外部设置了TERM=xterm-256color )。
发布于 2011-11-22 03:15:19
在korn shell中使用vi模式多年之后,我基本上已经训练自己在键入任何命令之前只需点击ESC几次,然后点击ESC,然后点击i开始键入。
基本的前提是,如果你只是点击ESC,你就会确切地知道你所处的模式。
https://stackoverflow.com/questions/7888387
复制相似问题