尝试从 "首选项->设置->键盘" 进行映射,但 "key" 组合框仅有 "前向删除" 而没有 "删除"。然而,我的键盘上只有 "删除" 没有 "前向删除"!
除了首选项之外,还有其他方法可以完成映射吗?
尝试从 "首选项->设置->键盘" 进行映射,但 "key" 组合框仅有 "前向删除" 而没有 "删除"。然而,我的键盘上只有 "删除" 没有 "前向删除"!
除了首选项之外,还有其他方法可以完成映射吗?
{
)的程序员来说,这种设置方法并不实用,因为当 Option 键被用作元键时,它将无法正常工作。 - Magne删除上一个单词:
Ctrl-w。
OS X的终端运行bash,其中包括readline支持。按照Glomek的建议,告诉终端使用选项作为元键(或者使用Esc),然后你就有了一堆方便的选项: Ctrl+w删除上一个单词(如前面提到的Meta+delete一样),但你还可以使用Meta+f和Meta+b向前和向后遍历单词,Ctrl+a和Ctrl+e到达行首和行尾,Ctrl+k从光标处删除(kill)到行尾,还有很多其他的选项。
请参阅http://www.bigsmoke.us/readline/shortcuts获取一个不错的简短快捷键表。
delete
删除单词。 - idrouggecat .git/refs/heads
的末尾时,按下Ctrl-w会导致删除cat
。Meta+delete可以删除cat .git/refs/
。 - idbrii命令编辑快捷键
Ctrl + a – 移动到命令行的开头
Ctrl + e – 移动到命令行的结尾
Ctrl + k – 从光标处删除到命令行的结尾
Ctrl + u – 从光标处删除到命令行的开头
Ctrl + w – 从光标处删除到单词的开头(即向后删除一个单词)
Ctrl + y – 在光标后粘贴被剪切的单词或文本(例如上面提到的那个删除快捷键)
Ctrl + xx – 在命令行开头和当前光标位置之间移动(并返回)
Alt + b – 向后移动一个单词(或者到光标当前所在单词的开头)
Alt + f – 向前移动一个单词(或者到光标当前所在单词的结尾)
Alt + d – 从光标开始删除到单词结尾(如果光标在单词开头,则删除整个单词)
Alt + c – 从光标开始将单词转换为大写(如果光标在单词开头,则将整个单词转换为大写)
Alt + u – 将光标到单词结尾的单词转换为大写
Alt + l – 将光标到单词结尾的单词转换为小写
Alt + t – 将当前单词与前一个单词交换位置
Ctrl + f – 向前移动一个字符
Ctrl + b – 向后移动一个字符
Ctrl + d – 删除光标下的字符
Ctrl + h – 删除光标前面的字符
Ctrl + t – 将光标下的字符与前一个字符交换位置
命令召回快捷键
Ctrl + r – 向后搜索历史记录
Ctrl + g – 退出历史记录搜索模式
Ctrl + p – 历史记录中的上一个命令(即向后浏览命令历史记录)
Ctrl + n – 历史记录中的下一个命令(即向前浏览命令历史记录)
Alt + . – 使用上一个命令的最后一个单词
命令控制快捷键
Ctrl + l – 清屏
Ctrl + s – 停止输出到屏幕(用于长时间运行的详细命令)
Ctrl + q – 允许将输出发送到屏幕(如果先前使用了上面的命令停止输出)
Ctrl + c – 终止命令
Ctrl + z – 暂停/停止命令
Bash Bang (!) 命令
Bash 还有一些方便的功能,使用 !(bang)允许您在 bash 命令中执行某些有趣的操作。
!!
– 运行最近一次命令
!blah
– 运行以“blah”开头的最近一条命令(例如:!ls)
!blah:p
– 打印出 !blah 将运行的命令(同时将其添加为最新的命令历史记录)
!$
– 上一个命令的最后一个单词(与 Alt + . 相同)
!$:p
– 打印出 !$ 将替换的单词
!*
– 上一个命令,但不包括最后一个单词(例如:如果您键入 _find somefile.txt /
,那么 !*
将给您 _find somefile.txt
)
!*:p
– 打印出 !* 将替换的内容
默认情况下,大多数shell中的meta+backspace将执行向后单词复制。如果您按escape键然后再按backspace键,那么这种方式基本上在任何地方都有效。
<Esc> b
和 <Esc> f
也可以用于跳转到前一个或后一个单词。 - joeytwiddle⌃W
(控制键+W)与meta + delete不是相同的东西(如果你没有勾选使用选项作为元键,则为ESC+delete)
meta+delete将把/ _
视为单词分隔符,而^W
将把空格视为分隔符。
例如,当光标在末尾时,使用ESC+Bakcspace
rm /dira/dirb/file1
提供
rm /dira/dirb/
同时在同一地方使用^W将会产生
rm
在定义和修改终端配置文件时,最好使用\033\177而不是^W。这样,您实际上将⌥⌫映射到esc⌫正在执行的操作,并且您仍然可以使用^W基于空格分隔符来擦除单词。
我很想能够发布如何执行此操作的图片,但作为新手,我不能。
请参考bouke的评论以了解如何修改终端配置文件。
iterm2
中这样做,您可以打开“偏好设置”> “键盘”> 添加按键映射 “⌥⌫” 并将其发送为十六进制代码 0x1B 0x7F
。 - qix\033\177
可以用于“删除一个单词中的一部分”的呢? - adiabatic您可以在终端的配置文件中将 ⌥⌫(option+delete)绑定到 ⌃W(control+W),这样它就和其他应用程序类似了。
在个人资料-> 键 中启用“自然文本编辑”预设后,您可以简单地删除该单词。
alt+delete
向后删除fn+alt+delete
向前删除