[英]Emacs windmove key in Mac
我将Alt设置为windmove键,以在Mac下的Emacs中切换帧。
(windmove-default-keybindings 'meta)
对于GUI版本的Emacs(带有小部件和其他Windows装饰的GUI版本),此方法效果很好,但是如果我从Mac Terminal.app中使用emacs -nw
启动emacs,则效果emacs -nw
。 例如,如果我首先使用Cx 2
分割窗口,然后按Alt + <Down>
,则Emacs报告
ESC + <Down> is undefined.
有人可以帮忙吗?
从brew install安装了Emacs版本24.4。
似乎最简单的方法是仅安装iterm2 。 并在“首选项”>“配置文件”选项卡中。 在左侧选择您的配置文件,然后打开“键控”选项卡并将选项键设置为+ESC
。
然后在emacs设置中手动设置密钥,
(global-set-key (kbd "ESC <up>") 'windmove-up)
(global-set-key (kbd "ESC <down>") 'windmove-down)
(global-set-key (kbd "ESC <right>") 'windmove-right)
(global-set-key (kbd "ESC <left>") 'windmove-left)
我建议您使用iterm2
因为它是更好的终端。 但是,如果您要使用terminal.app,请不要忘记在“首选项”>“设置”>“键盘”中选中“ Use option as meta key
,它在默认emacs的基础上可以扩展。
当我使用terminator
作为终端时,对于Ubuntu来说,同样的问题也适用。
您可以使用win-switch
程序包解决此问题,该程序包在每种情况下都对我有效。 在这里,您可以将一个简单的配置放入初始化文件(.eg: .emacs
)中:
;; install win-switch package using package manager
(if (package-installed-p 'win-switch)
nil
(package-install 'win-switch))
;; my favourite quick keybindings
(global-set-key (kbd "M-<left>") 'windmove-left)
(global-set-key (kbd "M-<right>") 'windmove-right)
(global-set-key (kbd "M-<up>") 'windmove-up)
(global-set-key (kbd "M-<down>") 'windmove-down)
win-switch
程序包还有许多其他强大的实用程序,这些功能在代码的注释部分中进一步详细介绍。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.