与 *nix 相比,Terminal.app 似乎很差劲。我该如何让它:
- 向应用程序发送 Page-Up/Down,而不是仅仅滚动终端输出
- 在 vim 中鼠标四处移动
set mouse=a
没有帮助。 - 以上所有操作均通过 SSH 连接到另一台机器
答案1
- 打开终端.app
- 打开“首选项”窗口(CMD+,)
- 单击设置选项卡
- 选择当前的设置主题,然后单击“键盘”选项卡
- 编辑(或添加)主页的条目:
- 设置操作:将字符串发送到 shell:
- 将字符串设置为
\001
(或按 Ctrl+a) - 编辑(或添加)结束的条目:
- 设置操作:将字符串发送到 shell:
- 将字符串设置为
\005
(或按 Ctrl+e) - 编辑(或添加)Page Up 的条目:
- 设置操作:将字符串发送到 shell:
- 将字符串设置为
\033[5~
(复制并粘贴) - 编辑(或添加)Page Down 的条目
- 设置操作:将字符串发送到 shell:
- 将字符串设置为
\033[6~
(复制并粘贴) - 关闭设置窗口。
就这样。终端应该可以按照 Windows/Linux 用户的期望使用 Home、End、Page Up 和 Page Down 键了。
通过 SSH 进入您最喜欢的 Linux 服务器,打开 nano、vi 或 emacs 即可享受。
如果 home 或 end 键在 vim 中不起作用,请尝试以下操作:
- 主页:\033[7~
- 结束:\033[4~
至于鼠标问题,我不确定 Termminal.app 是否支持 xterm 鼠标报告。据说它需要这个功能才能工作。终端 是支持鼠标报告的替代终端程序。MouseTerm 是一种向 Terminal.app 添加鼠标报告的黑客程序,但我没有尝试过,不知道效果如何
您也可以安装 X11。
一旦您完成上述三件事之一,您就应该能够使用 ssh 和 set mouse=a。
答案2
至于 Page Up/Down 和 Home/End,只需按住 Shift 键即可将它们发送到应用程序。否则,如 Kelbizzle 所述,重新映射按键将完全违背 Apple 对于滚动浏览最重要的内容(即回滚)的想法。
答案3
在 Terminal mc (midnightcomander) 内与Fn+Shift+向上键和Fn+Shift+向下键
答案4
在 10.10 Yosemite 中(不确定以前的版本是否如此),您可以使用触控板或鼠标向下滚动,就像浏览网页一样。将鼠标放在终端窗口上,然后使用鼠标滚轮或触摸板上的两根手指滚动。