Bash vi模式配置默认为命令模式


14

是否可以配置bash vi模式,使其最初处于命令模式而不是插入模式?我发现我必须按Esc得太多。似乎有可能在zsh中指定它,但是我还没有找到在bash / readline中执行此操作的方法。

Answers:


2

我认为使用该标准是不可能的 GNU Readline库

但是,您可以使用xdotool进行简单的破解来达到相同的效果。向您添加.bashrc模拟Escape按键的命令将确保您的字词在命令模式下打开:

xdotool key Escape

您可能需要稍微延迟一下, --delay开关,以防止其干扰您的提示...

请注意,这可能会带来比您预期更多的挫败感:终端被设计为接受输入;打破那个(尽管只有一点)可能并不证明是个好主意...


1

我将其收回,这不适用于光标移动。它可以工作,但是如果您将其删除,则会表现出有趣的行为:PS1="$PS1 ^[


更改PS1提示:

PS1="test $ \[^[[s^[^[[u\]"

^[文字转义符(Ctrl+ V Esc)在哪里。

中间的转义符会自动更改为命令模式,而^[[s和的^[[u转义符会存储并恢复光标位置;没有那个,我发现有一些有趣的行为。



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.