Emacs Meta 键位 MacOS 与 Linux 切换

2019-03-22 03:13:50 +08:00
 visylar

经常在 MacOS 和 Linux 系统之间切换使用 Emacs,Meta 键位在 MacOS 上是在 cmd 外面,而正常 Linux 使用的键盘 Meta 键直接在空格边上,所以切换系统之间按键很容易按错,有类似问题的各位是如何解决这个矛盾的?

4566 次点击
所在节点    程序员
12 条回复
Tiande
2019-03-22 03:45:50 +08:00
用同一个键盘?
sinxccc
2019-03-22 04:28:58 +08:00
几个大同小异的方案,看你哪个顺手用哪个了:

1. 两个系统都用同一个键盘或者同一款键盘
2. 在 Mac 上把 Cmd 设置成 Meta 键,或者 Linux 上把 Win 键设置成 Meta。两种设置都很简单。
3. 两个系统上都用 Esc
Yvette
2019-03-22 05:26:16 +08:00
试试换成 Caps Lock
wd
2019-03-22 05:44:48 +08:00
我记得可以把 cmd 作为 meta 的,我回头查查
visylar
2019-03-22 08:56:24 +08:00
@Tiande 这个比较困难,因为 linux 是台式机在家,Macbook 带出去会用它自带的键盘
@sinxccc 个人比较喜欢方案 2,暂时在 iterm 里面把 cmd 和 meta 交换
@Yvette 似乎得买个 hkkb
@wd 合并 meta 与 cmd ?
Yvette
2019-03-22 09:03:56 +08:00
@visylar 不是 Emacs 用户,不太清楚 Meta 的具体场景是啥,只是因为 Caps Lock 这个键并没有什么实际用处,反倒占了一个风水宝地,所以还不如换成其他会用得着的键。我自己在非 HHKB 布局的键盘上也是把 Caps Lock 当功能键用的,每个系统都有现成的方案,还挺方便的
kidlj
2019-03-22 09:12:24 +08:00
macOS 修饰键那里可以把 cmd 和 option 互换。
SamsonWang
2019-03-22 09:24:04 +08:00
wd
2019-03-22 09:55:28 +08:00
@visylar #5 应该是把 cmd 作为 meta
wd
2019-03-22 15:09:03 +08:00
(when (eq system-type 'darwin) ;; mac specific settings
(setq mac-option-modifier 'meta)
(setq mac-command-modifier 'meta)
(global-set-key [kp-delete] 'delete-char) ;; sets fn-delete to be right-delete
)

这个配置,把 cmd 也改成 meta,反正 win 那个 super 键似乎没有用。
visylar
2019-03-23 10:16:22 +08:00
@wd 谢谢,好用!
ceyes
2019-03-26 09:08:54 +08:00
个人玩法,主要工作环境是 MacBook,iterm2 把左边 opt 和 cmd 都设成 alt 的功能(并把 cmd+tab, cmd+v 等排除映射保留原始功能),从而享受和 Linux 下一致的终端键位。gui 的 emacs 是用 opt 做 meta,再把 cmd+x 绑定成 meta+x,想用哪个用哪个,还保留了 cmd 的正常功能不受影响。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/547243

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX