【问题标题】:How to change shortcut for iTerm2 clear lines?如何更改 iTerm2 清除线的快捷方式?
【发布时间】:2016-07-08 10:26:05
【问题描述】:

Ctrl + l是iTerm2中清除行的默认快捷方式,我想改成Cmd + l,但是找不到这个动作:

顺便说一句,我正在使用 zsh。

【问题讨论】:

  • 我投票结束这个问题,因为它不是关于编程的。试试apple.stackexchange.com
  • @Droppy 也许我们可以尝试单独留下关于iTerm2的问题,要解决这个问题,可能需要您查看iTerm2的源代码,它与编程有关:)
  • @sel-fish 在这方面,任何程序的任何配置问题,如果源代码可用,应该在堆栈溢出时发布?那么 Blender 或 Unreal Engine 或 Gimp 的问题在这里都可以吗?
  • @Droppy :) 你是对的,但我认为你在这里转换了问题。我同意你提到的观点,但我只想谈谈 iTerm,我们提出问题只是因为如果我们这样做,它可以从正确的地方引起更多关注。

标签: macos zsh iterm2


【解决方案1】:

Ctrl-L 或“换页”是 ANSI/VT100 协议 (http://wiki.bash-hackers.org/scripting/terminalcodes) 的一部分,它并不特定于 iTerm2。

最好的办法是在按下 Cmd-L 时使用 Applescript 将 Ctrl-L 发送到终端。

【讨论】:

    【解决方案2】:

    这是一个 zsh 绑定不是 iTerm 绑定。 Ctrl+l 是 zsh 中 clear-screen 小部件的默认绑定。它也适用于 bash (可能还有其他 shell)的事实仅仅是约定俗成的。在 bash - 或者更确切地说是 readlinebash 的 命令行编辑器 - 它是一个命令的默认绑定,也被命名为 clear-screen

    通常,您可以使用命令bindkey KEYSEQUENCE WIDGET 更改zsh 中的键绑定。不幸的是,iTerm2 可能并不支持所有修饰符与 shell 一起使用。您可以通过运行cat -v 然后按下所需的组合键来测试是否支持。如果支持 Cmd+l,则显示的输出应该不仅仅是“l”。如果它不仅仅是“l”,那么您可以使用输出来绑定它。例如,如果cat -v 显示“^[l”,那么您可以将其与bindkey '^[l' clear-screen 绑定,如果您想删除默认绑定,则可以使用bindkey -r '^l' 进行。

    【讨论】:

    • 很遗憾,Cmd+l 不支持您描述的方法测试。
    猜你喜欢
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 2016-03-19
    • 2015-02-08
    • 1970-01-01
    • 2011-03-07
    • 1970-01-01
    • 2021-12-22
    相关资源
    最近更新 更多