我知道组合Ctrl+A可以跳转到当前命令的开头,Ctrl+E可以跳转到结尾。
但是有没有办法像Cocoa应用程序中的Alt+←/→那样逐字跳转呢?
我知道组合Ctrl+A可以跳转到当前命令的开头,Ctrl+E可以跳转到结尾。
但是有没有办法像Cocoa应用程序中的Alt+←/→那样逐字跳转呢?
当前回答
使用自然文本编辑预设!
本质上,它在其他键序列中绑定Option + LeftArrow到^[b序列,Option + RightArrow到^[f序列
这适用于fish和bash,以及在psql终端。
其他回答
按住Option键,然后单击光标要移动的位置
在Bash中,这些绑定到Esc-B和Esc-F。 Bash有很多很多快捷键;看一看bind -p的输出,看看它们是什么。
如果您碰巧是Vim用户,您可以尝试bash的Vim模式。运行这个或者把它放在~/中。bashrc文件:(
set -o vi
默认情况下,您处于插入模式;点击escape,你就可以像在普通模式的Vim中一样四处移动,所以按字移动是w或b,通常的移动键也可以工作。
只要检查“使用选项作为元键”选项在终端>首选项>设置>[配置文件]>键盘,在这里已经提到了@ crisr -page。
但是请注意,在macOS Catalina(10.15)和更新版本中,zsh成为新添加用户的默认shell:它的默认配置仅将空白视为单词边界,而旧的bash将元左/右跳转到最近的非字母数字字符(类似于B/W,而不是vim中的B/W):
v----v- bash jumps here
$ vim some-folder/what.txt_<- jump left twice from here
^---^- zsh jumps here by default
(类似的动作也适用于元退格)
有不止一种方法使zsh命令行编辑器导航工作类似于bash -这里是一个这样的方法:
# Place in your profile init script, e.g. `~/.zshrc`
autoload -U select-word-style
select-word-style bash
你可以使用非常奇怪的Esc+F键移动到下一个单词的开头,Esc+B键移动到当前单词的开头。