大家都有哪些自己设置的emacs快捷键?

秦书磊
  • 154

快捷键是一个让人很纠结的东西。好的快捷键设置,易于记忆也易于使用。但键盘的键就那么多,寸土寸金,所以想看看大家都是怎么取舍和设置的?

win键(super)在ubuntu下有很多组合还是没有绑定的?你们有对super进行绑定吗?

我的提问
一是想看看大家有哪些经常用的命令,开阔视野。
二是看看大家的快捷键绑定的模式,学习一些比较优雅的绑定方式。

回复
阅读 6.7k
5 个回答
douglarek
  • 448

首先

除了常用的快捷键,打开保存文件(C-x C-f C-x C-s)、退出(C-x C-c)、undo(C-x C-u)、执行命令(M-x)等,你不需要记住任何快捷键

另外一个真相是

所有快捷键操作都对应一个命令(使用 M-x 可以呼出)

最后

高手最常用的快捷键是(M-x

最后的最后

有两个插件你值得拥有,一个是 smex(使 M-x 好用到一万倍),一个是 ido (交互式的做与 buffer 和 文件相关的任何事情)

如果恰好你也使用 Emacs 24+ ,可以使用我的配置仓库 git clone https://github.com/douglarek/.emacs.d.git ~/.emacs.d

elisp;; Copy and comment
(defun copy-and-comment (beg end &optional region)
  "Copy and comment."
  (interactive (list (mark) (point)
             (prefix-numeric-value current-prefix-arg)))

  (let ((str (if region
                 (funcall region-extract-function nil)
               (filter-buffer-substring beg end))))
    (comment-region beg end region)
    (insert str)))

(global-set-key (kbd "M-C") 'copy-and-comment)

这个我用的非常非常多

hickwu
  • 4
新手上路,请多包涵

楼上 @douglarek 的去快捷键化很赞同, 传统的 Emacs 使用方式严重依赖各种快捷键组合, 这种思路应该彻底抛弃了.

smex 是 一种很不错的走另类键操作的方式, 通过输入少量字符尽可能的快速匹配你想用的函数(或者说命令). 尤其是会自动调整用过的命令频率等. 其实 smex 官方有说是 on the top of ido , 所以如果是 Emacs 24 以后的包管理方式安装的 smex 貌似是会自动安装 ido 的 --- 我确实是都安装了.

另外其实 05 年开始有了一个新的选择, 就是 hydra, 新兴包, 乐观预计如果能学 yasnippet 的模板配置的思路, 估计能对整个 Emacs 的体验带来跟 yasnippet 式的提升! 个人已通过 issue/blog 等方式给原作者提建议了.

截止目前, 中文圈里应该就我这一篇介绍 hydra 的, 同时也有提 smex 等相关想法:
http://blog.hickwu.com/posts/336 欢迎不吝赐教, 哈哈哈

林果皞_hackerone_
  • 2
新手上路,请多包涵

我设置的 Custom Shortcuts 快捷组合键:
Super+C: cherrytree
Super+D: dconf-editor
Super+E: eclipse
Super+F: firefox
Super+G: gedit
Super+K: gnome-control-center keyboard
Super+N: nautilus note/
Super+T (Terminal): konsole --workdir ~/note/
Super+X: xkill
Super+Y (skYpe): skype
Super+A (All): /bin/sh /home/xiaobai/note/autostart/myautostartup.sh

myautostartup.sh 里面的内容:

$ cat /home/xiaobai/note/autostart/myautostartup.sh
#!/bin/sh
xdotool key Super+f
xdotool key Super+t
xdotool key Super+e
xdotool key Super+y
$ 
discover
  • 1
新手上路,请多包涵
宣传栏