Is there any way in the OS X Terminal to move the cursor word by word?我知道ctrl+a组合跳到当前命令的开头,ctrl+e组合跳到结尾。 但是,是否有任何方法可以逐字跳转,比如可可应用程序中的alt+←/→? 您可以使用非常奇怪的esc+f移动到下一个单词的开头,并使用esc+b移动到当前单词的开头。 在Mac OS X上-以下键盘快捷键默认工作。请注意,您必须使选项键在终端首选项中(在"键盘"选项卡下)像元键一样工作。
我注意到,用于简单文本导航的默认Emacs键绑定似乎可以在bash shell上工作。你可以使用
你可以这样做 默认情况下,终端具有逐字(左和右)移动的快捷方式:
您可以配置alt+←和→为您生成这些序列:
或者,您也可以在textmate上引用此博客文章: http://blog.macromates.com/2006/word-movement-in-terminal/ 切换到ITerm2。它是免费的,而且比普通的老式航站楼要好得多。此外,它还有很多自定义选项,比如键盘快捷键。 另外,我喜欢您可以使用CMD和1-9在选项卡之间切换。尝试一下,您将永远不会回到常规终端:) 如何在iterm2中设置自定义键盘首选项
我经常用箭头键点击错误的按钮(cmd/control/alt),所以我的箭头键组合与这些按钮都设置为向前和向后跳单词,但请做最适合你的事情。 实际上,有一种更好的方法。按住option(某些键盘上的alt),然后按向左或向右箭头键按Word移动。很简单。 option←(option←)option→ 此外,CtrLBakBd将带您到达行尾,CtrLA将带您到达行首。 我有alt+←/→工作:打开首选项?设置?键盘,将选项光标左键的项设置为将字符串发送到shell:33b,并将选项光标右键设置为将字符串发送到shell:33f。您也可以将此项用于其他控制键组合。 实际上,这取决于您使用的shell,但是大多数shell都有类似的绑定。您所指的绑定(例如ctrl+a和ctrl+e)是您在许多其他程序中可以找到的绑定,它们可以使用很长时间,btw也可以在大多数UI应用程序中使用。 下面是bash的默认绑定: 最重要的bash键盘快捷键 请注意,您可以自定义它们。您需要创建一个文件,名称如您所愿,我将其命名为mine.bash_key_bindings并将其放入我的主目录。在这里,您可以设置一些常规的bash选项,还可以设置键绑定。为了确保应用了它们,您需要修改一个名为".bashrc"的文件,bash在启动时读取该文件(如果不存在,则必须创建该文件),然后在该文件中进行以下调用:
~表示bash中的主目录,如上所述,您可以根据自己的喜好命名文件,也可以将其放在自己喜欢的位置,只要您提供正确的路径+要绑定的名称。 让我向您展示一些.bash_key_bindings文件的摘录:
这些只是设置了几个选项(例如,禁用铃声;可以在bash网页上查找所有选项)。
这些操作确保仅字符一个不做任何事情,但要确保字符是"键入的"(它们将自己插入外壳)。
这很有趣。如果我只点击ctrl+d(我选择了d作为删除),什么都不会发生。但是如果我输入小写的w,光标左侧的单词就会被删除。但是,如果我键入一个大写,光标右侧的单词将被删除。对于从光标开始的整行,L和L也是如此。如果我输入一个"A",整个行实际上被删除(光标前后的所有内容)。 我在ctrl+f上向前跳一个字,在ctrl+b上向后跳一个字。
正如您所看到的,您可以创建一个快捷方式,它会立即导致一个操作,或者您可以创建一个快捷方式,它只初始化一个字符序列,然后您必须键入一个(或多个)字符,以使操作发生,如上面的示例所示。 因此,如果您对默认绑定不满意,可以随意自定义它们。这里有一个到bash手册的链接以获取更多信息。 如果您碰巧是一个VIM用户,您可以尝试使用bash的VIM模式。运行此文件或将其放入您的
默认情况下,您处于插入模式;点击Escape,您可以像在正常模式VIM中一样四处移动,所以按单词移动是 如果在"首选项"的"键盘"选项卡中选中 我建议从bash到z-shell阅读。如果你想提高你的bash/zsh能力! 从Mac OS X Lion 10.7开始,终端默认将option LEFT/右箭头映射到esc B/F,因此现在这是内置于bash和其他使用这些Emacs兼容键绑定的程序中。 在bash中,这些绑定到esc b和esc f。bash有许多,更多的快捷键;查看 按住选项键并单击要移动光标的位置 在 当我试图为(ctrl+←)录制一个时,我注意到在键盘快捷键字段中箭头从未出现。结果发现我必须先禁用默认的Mac系统首选项>键盘>快捷键>任务控制快捷键以使事情正常工作,因为它们将覆盖ITerm2的默认快捷键。对于标准的终端应用程序也是如此。 |