cwd*_*cwd 137 mac keyboard-shortcuts iterm iterm2 macos
我正在阅读 Linux 手册,我注意到它说我可以在编辑时使用 control+left 和 control+right 在终端中前后移动单词。
“按 Ctrl 加向左或向右箭头键一次向后或向前移动一个单词,就像按 Esc 然后按 B 或 F 一样。”
在 OS X 上control+left
,control+right
通常控制空间。我已经禁用了那些。我还尝试使用首选项窗格来设置键盘快捷键:
但是,这不起作用并导致此错误:
另外,如果我在 iTerm 中并使用alt+escape
B 或 F 字符来回移动。这是在我的任何配置更改之前发生的。但我真的很希望能够使用 control + 箭头键。
slh*_*hck 155
只需将以下内容添加到~/.inputrc
:
"\e[1;5D": backward-word
"\e[1;5C": forward-word
Run Code Online (Sandbox Code Playgroud)
有关更多解释,请参阅此存档的 Wiki 帖子。如果您想使用该alt键进行字对字移动(如默认的 OS X 行为),请使用:
"\e[1;9D": backward-word
"\e[1;9C": forward-word
Run Code Online (Sandbox Code Playgroud)
zsh 默认不使用readline
库,因此不会读取~/.inputrc
. 要获得相同的功能,您可以将以下内容添加到您~/.zshrc
的使用中ctrl:
bindkey -e
bindkey '\e\e[C' forward-word
bindkey '\e\e[D' backward-word
Run Code Online (Sandbox Code Playgroud)
要使用alt密钥:
bindkey -e
bindkey '^[[1;9C' forward-word
bindkey '^[[1;9D' backward-word
Run Code Online (Sandbox Code Playgroud)
有关内置 zsh 行编辑器 (zle) 的更多信息,请参阅此文档。
为什么是这样?您已将配置文件设置为使用 Xterm 默认值:
这就是为什么你需要“捕捉”这个序列并告诉readline
你要做什么。
如果以上仍然不起作用并且您使用的是 OS X 10.9 (Mavericks) 或其他版本,您可能需要禁用全局 Mission Control 快捷方式,以防止 Control+箭头键到达 iTerm,即使 Mission Control 本身已被禁用。您可以从系统偏好设置这样做吗?键盘 ?捷径?任务控制:
小智 73
zsh 的工作解决方案。简单、直接、开箱即用。
去:
?, Preferences ? Profiles ? Keys ? Keyboard Behavior
加载预设: Natural Text Editing
ras*_*som 12
我是这样修复的:
在顶部菜单中;去
Profiles
-> Open profiles...
-> Edit profiles... (button)
-> Keys (tab)
-> Load Preset... (dropdown)
-> Choose "Natural text editing". Done! :-)
Run Code Online (Sandbox Code Playgroud)
我使用了不同的方法。我使用BetterTouchTool为 iTerm2 编写了一个自定义键盘快捷键。当我在 iTerm2 中按 alt-left 时,它会发送键盘快捷键 ctrl-left 和操作“将键盘快捷键发送到特定应用程序”。应用程序是 iTerm2。我对映射到 ctrl-right 的 alt-right 做了同样的事情。
效果是在 iTerm 中按下 alt-left 或 alt-right 会直接向 iTerm2 发送 ctrl-left 或 ctrl-right,绕过通常的系统范围的快捷方式来向左或向右移动桌面。像这样,我在 iTerm2、本地终端会话和远程 SSH 会话中获得了典型的 mac 行为,我可以使用标准的 ctrl-left / ctrl-right 移动到不同的桌面。我写在这里:
http://www.callum-macdonald.com/2013/04/17/ctrl-left-and-ctrl-right-on-iterm2/
小智 7
实际上,我发现最简单的解决方案是转到我的配置文件设置(在 Profiles/Keys 中找到),删除有问题的配置文件快捷方式(因为配置文件覆盖了 iTerm 中的全局),在我的情况下是 alt+left 和 alt+right,然后是全局快捷方式非常适合我!
此外,如果您使用的是 OS X,最好坚持使用系统范围的快捷方式,即为此目的使用 alt+left 和 alt+right,终端中的不同行为最终必然会导致痛苦。
除了 chmac 使用 Better Touch Tool 的解决方案之外,它是一种仅在 iterm 中更改控件 + 箭头行为的优雅方式。
归档时间: |
|
查看次数: |
59742 次 |
最近记录: |