我在 Mac OS X 终端中选中“使用选项作为元键”复选框,因为我喜欢使用 emacs 在单词之间移动的方式:Mf 和 Mb。
但是,如果我这样做,我将无法获得反斜杠(Option + º;即:Option + key-at-the-left-of-1-in-spanish-keyboard)。如果我取消选中它,那么我可以输入反斜杠,但我没有 Mf 和 Mb。
有没有办法两者兼得?
默认情况下,转义键用作元键;无需使用 option 作为元键(除了更方便的位置)。
这不是一个很好的解决方案,但 XTerm(在 OS X 上的 X11 中运行)可以使用 CMD 作为 Meta 键。
您可能还会从KeyRemap4MacBook获得一些不错的结果。
作为一个附带的好处,XTerm 还应该为您提供适当的终端鼠标交互,例如在基于 Emacs 或 ncurses 的应用程序中。
您可以自定义键盘映射以使用不同的键来输入反斜杠。在看
首选项 > 设置 > [配置文件] > 键盘
例如,您可以将 Control-F1 映射到反斜杠。
请注意,默认键盘映射将 Option-Left/Right Arrow 映射到 Mb/f,因此您可以使用它们而不是使用 Option for Meta(您必须习惯使用箭头键而不是 b 和 f,但我'从来没有习惯使用 b 和 f 并且更喜欢箭头键)。
您很可能会在该设置中遇到更多问题,因为 Mac OS 在许多快捷方式中使用“Alt”作为修饰符。但无论如何,如果您输入 unicode 字符“∫”(即 E288AB),则在 ~/.bash_profile 中包含以下行将发送反斜杠:
bind '"\033\xE2\x88\xAB"':'"\\"'
我遇到过同样的问题。这就是我解决它的方法。
我用 iTerm2 替换了内置终端,这也给了我一些其他不错的功能。为了获得一个理智的元密钥,我做了以下事情:
对于我想使用的配置文件,我检查了“Alt 发送 +Esc”,它给了我一个在 Emacs、Bash 和其他系统中工作的健全的元密钥。但是,我确实丢失了反斜杠键。因此,要取回它并在配置文件中添加一个绑定,该绑定执行“发送文本:\”,然后我将它绑定到我的退格键组合(Shift-Alt-7,我是挪威人)。
现在我在 Emacs 中有 Mf,Mb,M-。在 Bash 中,我可以发送反斜杠。我还有一个“Visor shell session”,我可以通过按下另一个组合键来向下滑动。
This is years late, but for people coming across this page whilst searching for a solution, as I did, I have decided to build one myself.
It is a simple status bar app that runs in the background and rewrites all left-Alt + $KEY key events to two key events in rapid succession, Esc, then $KEY; however, it only does this if Terminal.app is the focused application.
You can find it here at https://github.com/habibalamin/Metalt.