ITerm2: 删除行?

我正在尝试映射 ⌘+Delete(退格)删除到行的开头(就像它在浏览器和文本编辑器中工作一样)在 ITerm2中,我无法找到它的工作转义代码。我尝试1K (^[1K)的基础上,我读取 在维基百科上。上面只有一个“ K”。

编辑: 我找到了 Ctrl+U。现在来看看如何绘制地图。也许是十六进制代码21(U 是第21个字母) ,所以是0x15?

54442 次浏览

我知道了。我不知道为什么 iTerm2中的十六进制代码映射会产生相关的 Ctrl + 键映射,但它们确实产生了。也不知道0x00是什么意思,因为它没有像预期的那样分配给 A。(尽管我相信 Unix 在处理空字节方面有它自己的惯例——例如,我们有 xargs接受来自 find的空字节分隔格式——如果我们能用 iTerm2把它绑定到热键上,那就太好了)

我发现 Ctrl + U 几乎完成了我想要的任务(它删除了整行,而不是只删除光标之前的内容,但是无论如何... ... Ctrl + Y 作为额外奖励可以把它们都带回来)。然后我好奇地看到,我有十六进制代码 0x10x5映射到 ^A^E分别为我的 Cmd + 左和 Cmd + 右... 所以 0x15^U

我希望 这个可以帮助你

Map something <-删除至发送十六进制代码: 0x1B 0x08

我做了测试,结果是正确的。


2013年9月18日更新

这句话删掉一个字,不是一行。

正如所指出的,^U删除该行。您可以使用 更好的触摸工具轻松地重新映射该命令。

它还有很酷的自动化、鼠标、键盘和键盘映射功能,还包括智能边框的窗口功能。

在大多数 shell 中,将十六进制代码 0x15映射到 + ←Delete会删除整行内容(游标左侧和右侧的内容)。虽然有时候不太兼容,但我发现这种映射:

发送十六进制代码:

0x18 0x7f

如果你正在运行 ZSH,你可能还需要把它添加到你的.zhrc 文件中:

$ echo 'bindkey "^X\\x7f" backward-kill-line' >> ~/.zshrc

因为默认情况下 ZSH 不会将 backward-kill-line映射到任何地方。

此外,您还可以通过映射删除光标右侧的所有内容:

+ fn + ←Delete + Delete→发送十六进制代码:

0x0b

我写了一个全面的指南,添加大多数 OSX 的标准键绑定到您的终端 给你

在 OSX 中,something + something 和 something + something 分别是删除单词和行的快捷方式。Something + 额和 something + →是用来表示行的开头和结尾。默认情况下,iTerm2不是这样配置的,网上有很多误导性的指南。以下是我在我的机器上发现的工作原理。

  1. 打开首选项(something + ,)并转到“键”选项卡。
  2. 添加全局快捷键,然后键入快捷键
  3. 在“操作”下拉列表中,选择“发送十六进制代码”

十六进制代码是..。

  1. 删除一个单词: 0x17。
  2. 删除一行: 0x15。
  3. 第一句,第一季,第1集。
  4. 到终点站了,第五季,第5集。 只要打开一个新的标签,它应该工作!

为了清晰起见,下面是一个截图: alt text

对于 Mac OS,大多数编辑器共享通用快捷键 + Delete: delete 到行的开始,在 iTerm2中,我们可以切换到这个键配置

enter image description here

在 iTerm2上,您可以设置操作系统的完全相同的快捷方式。在这种情况下,由于 MacOS 上删除一行的默认快捷方式是 ⌘+Delete(退格) ,因此可以这样做。

要设置 iTerm 的默认密钥绑定,您必须:

  1. 转到首选项(或 ⌘+,)
  2. 档案
  3. 钥匙
  4. 密钥映射
  5. 预置..。
  6. 选择“自然文本编辑”选项

enter image description here

位置已更改。为了能够进行自然编辑,请访问:

Preferences -> Profile -> Keys -> Load Presets... -> and select Natural Text Editing

enter image description here

更多信息和周去 https://blog.arturofm.com/install-iterm-terminal-emulator-on-macos/