Answers:
使用control+ a产品和control+ e在末端。
也可以使用esc+ f移至下一个单词的开头,并使用esc+ b移至当前单词的开头。(您必须注意当前和下一个)
要回答有关如何获得行首或行尾的问题,默认情况下,Terminal会将这些键映射到它:
如果您想以“正常”方式回家(不需要换班),请转到[终端菜单]→[偏好设置]→[配置文件]选项卡(或某些OS X版本的设置)→[键盘]子选项卡。
然后将这些键修改/添加为以下“将字符串发送到外壳”
\033[H
\033[F
\033
如果需要添加零件,可以通过单击编辑对话框输入中的退出键来获得零件。
然后家庭和结束将再次正常工作(phe)。
另请注意,终端中的默认情况下,“ alt +←”和“ alt +→”分别映射到左单词和右单词,这是另一个便于记住的组合。
在更高版本的Mac OS X中,如果按Home / End键时终端屏幕上移或下移,则可能需要将Home键设置为\033[1~
,将End键设置为\033[4~
要获得所需结果的结束键(无需移动) 。
可以随意修改此答案以添加更多有用的键绑定,因为它是社区Wiki。
听起来您正在寻求使用readline和bash的帮助,这是从以下网站修改而来的疯狂的键盘内容列表:http : //www.math.utah.edu/docs/info/features_7.html#SEC45
Ctrla 移至行首。
Ctrle 移至行尾。
Escf 向前移动一个字。
Escb 向后移动一个字。
Ctrll 清除屏幕,在顶部重新打印当前行。
Ctrlk 从当前光标位置终止到行尾的文本。
Escd 从光标终止到当前单词的末尾,或者在单词之间终止至下一个单词的末尾。
EscDel 从光标处杀死前一个单词的开头,如果在单词之间,则终止于前一个单词的开头。
Ctrlw 从光标杀死前一个空格。这EscDelCtrla 与单词边界不同而不同。
Ctrld 删除光标下方的字符。
Ctrl_ 撤消您所做的最后一件事。您可以一路撤消以返回空行。
并且,这是如何将文本拉回到行中的方法。Yanking意味着从kill缓冲区复制最近被杀死的文本。
Ctrly 将最近被杀死的文本拉回到光标处的缓冲区中。
Escy 旋转压环,然后拉出新的顶部。仅当先前命令为Ctrly或时,您才能执行此操作Escy。
您可以使用option+ left和option+ 一次移动一个单词right。
关于使用home和end,终端的默认绑定如下:
在许多其他终端应用程序(在多个平台上)中,那些修改和未修改的对被反转(即裸露home并end用于在当前行周围跳转),修改后的版本(无论由shift或其他方式)用于导航回滚缓冲区)。如果愿意,可以执行以下操作来反转Terminal的绑定,使其工作:
转到终端菜单→首选项→设置/配置文件选项卡→键盘子选项卡。
然后将按键操作对修改为以下内容:
注意:通过按Esc键,将\ 033输入到“编辑”对话框的待发送文本框中。
在那里,您可能想要类似地交换已修改和未修改page up以及的绑定page down,以保持一致:按下带有的导航键shift代表Terminal本身的命令(像文档一样浏览回滚缓冲区),而按下不带通过对任何正在运行发送按键内它(例如bash
,less
,nano
,screen
,等)。关键-动作对是:
其他答案很好,也更便于移植,但这是常规键盘的“ OS X方式”(与许多其他终端相反)。请尝试以下操作:
ShiftHome-行首
ShiftEnd-行尾
具有所需功能的映射home和end键将轻松解决该问题。
已经发布了许多答案,但是如果您使用zsh
,则可以设置home为:
\001
并设置end为:
\005
通过单击首选项-配置文件-键盘。
这是使其与vim一起工作的最有效方法。转到终端->首选项->配置文件->键盘并添加:
键:↖操作:\ 033OH
键:↗动作:\ 033OF
我想为这个问题提供替代解决方案。如果您是vi用户,这将非常有用。终端中的Vim键绑定提供了一种以vim样式使用终端的方法。您可以通过set -o vi
在终端中键入来完成此操作,.bash_profile
如果需要,可以随时将其放入。之后,您的终端实际上就是vim编辑器。您可以使用esc
key进入命令模式并以vim的方式走动。例如,0
将您带到起点,$
将您带到终点。您还可以使用I
和A
转到开始和结束并立即进入编辑模式。w
并b
让你一个字向前和向后移动。如果您尝试通过按以下方式进入视觉模式v
,您将获得一个vim编辑器,离开该编辑器时拥有的文本将在终端中执行。
请注意,此vim键绑定将使您从其他答案中学到的所有热键无效。
这是可打印形式的列表,根据需要:)
我还修复了说明中的“错误”。这是您最初可以在说明中阅读的内容:
ESC-d从光标终止前一个单词的开头,或者如果在单词之间,则终止至前一个单词的开头。
这闻起来像是剪切和粘贴错误,非常难闻,因为两个部分句子都说明了同样的事情。从简单的逻辑上讲,前半部分实际上必须读取“从光标到当前单词的开头”。