Emacs的简单配置与常用快捷键
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Emacs的简单配置与常用快捷键相关的知识,希望对你有一定的参考价值。
在我的一篇日志中提到过Emacs,这里把我自己使用时的一些简单配置列出来以供大家参考。
-
界面配置
1.1 安装插件
先创建目录~/.emacs.d/plugins/,然后进入这个目录,这里用来摆放我们要下载和使用的插件(大家可以按照自己喜好设定,不一定非要这样设置)。
1.1.1 下载window-numbering插件,用于窗口快速切换;git clone https://github.com/nschum/window-numbering.el.git
1.1.2 下载emacs-neotree插件,用于显示左侧树形目录;
git clone https://github.com/jaypei/emacs-neotree.git
1.1.3 下载tabbar插件,用于设置标签栏;
git clone https://github.com/dholm/tabbar.git
1.1.4 安装emacs-goodies-el插件,用于配色主题。
sudo apt install emacs-goodies-el
下载安装好上述插件后,编辑~/.emacs文件(如果没有就创建)。文件内容如下:
;; ---------------------界面设置--------------------- ;; 关闭启动画面 (setq inhibit-startup-message 1) ;; 隐藏工具栏 (tool-bar-mode 0) ;; 显示行号 (global-linum-mode 1) ;; 设置行号格式 (setq linum-format "%d ") ;; 显示列数 (setq column-number-mode 1) ;; 当前行高亮 (global-hl-line-mode 1) ;; 设置窗口的宽度与高度 (set-frame-width (selected-frame) 120) (set-frame-height (selected-frame) 40) ;; 设置窗口切换快捷方式(通过Alt+1,2,3,...来快速切换窗口) (add-to-list ‘load-path "~/.emacs.d/plugins/window-numbering.el") (require ‘window-numbering) (window-numbering-mode 1)
;; 设置左侧树形目录 (add-to-list ‘load-path "~/.emacs.d/plugins/emacs-neotree") (require ‘neotree) (neotree-toggle) ;; 让启动时就显示左侧目录 (global-set-key [f8] ‘neotree-toggle) ;; 设置快捷键f8来打开隐藏目录 (setq projectile-switch-project-action ‘neotree-projectile-action)
;; 垂直分屏,上面窗口分配的大小 (windmove-right) ;; 切换到右边的窗口 ;; 注意,window的尺寸比frame小,我这里window实际只有34,frame有40 ;; 所以在划分大小时要计算好比例 (split-window-vertically 25)
;; 设置标签栏 (add-to-list ‘load-path "~/.emacs.d/plugins/tabbar") (require ‘tabbar) (tabbar-mode 1) (global-set-key [(meta k)] ‘tabbar-forward) ;; 快捷键M-k前翻 (global-set-key [(meta j)] ‘tabbar-backward) ;; 快捷键M-j后翻 ; close default tabs,and move all files into one group (setq tabbar-buffer-list-function (lambda () (remove-if (lambda(buffer) (find (aref (buffer-name buffer) 0) " *")) (buffer-list)))) (setq tabbar-buffer-groups-function (lambda()(list "All"))) (set-face-attribute ‘tabbar-button nil)
;; 设置标签栏颜色 (set-face-attribute ‘tabbar-default nil :background "gray23" :foreground "white") (set-face-attribute ‘tabbar-selected nil :inherit ‘tabbar-default :background "gray" :foreground "black" :box ‘(:line-width 2 :color "white") ) (set-face-attribute ‘tabbar-unselected nil :inherit ‘tabbar-default :box ‘(:line-width 1 :color "gray")) ;; 设置标签之间的间距 (custom-set-variables ‘(tabbar-separator (quote (0.4))))
;; 设置代码配色主题 (require ‘color-theme) (color-theme-initialize) ;;(color-theme-bharadwaj-slate) ;; 配色方案 ;;(color-theme-charcoal-black) (color-theme-goldenrod) ;;(color-theme-classic)
其中的一些尺寸、颜色大家看自己的喜好,自行设置。保存、退出,再打开Emacs,效果如下:
- 功能配置
2.1 下载插件auto-complete,用于代码补全。下载目录和上面的一样。git clone https://github.com/auto-complete/auto-complete.git
2.2 然后还是编辑~/.emacs文件,增加以下内容:
;; ---------------------功能设置--------------------- ;; 关闭自动备份 (setq make-backup-files nil) ;; 把urdf文件做为xml文件模式处理 (setq auto-mode-alist (cons ‘("\.urdf$" . nxml-mode) auto-mode-alist)) ;; 把xacro格式的文件做为xml文件模式处理 (setq auto-mode-alist (cons ‘("\.xacro$" . nxml-mode) auto-mode-alist)) ;; 把launch格式的文件做为xml文件模式处理 (setq auto-mode-alist (cons ‘("\.launch$" . nxml-mode) auto-mode-alist)) ;; 自动缩进 (global-set-key (kbd "RET") ‘newline-and-indent)
;; ---------------------代码补全--------------------- ;; 配置auto-complete (add-to-list ‘load-path "~/.emacs.d/plugins/auto-complete/") (require ‘auto-complete-config) (add-to-list ‘ac-dictionary-directories "~/.emacs.d/plugins/auto-complete/dict/") (ac-config-default)
上面那三个文件格式处理代码大家可以不用加,那是我用在ROS仿真建模用的。(以上代码被分成好几块摆放,是因为放在一块儿的话,博客显示会有问题)
以上只是对Emacs很简单的一些配置,我目前也只是用到这些(其他功能在用其他工具),所以就没有进行更深入的订制了。网络上相关文章比较多,大家根据自己的实际需要进行取舍。此外,大家可以把配置好的~/.emacs.d目录与~/.emacs文件复制保存在自己的备份中(移动硬盘、U盘、云盘……),以后重装系统或在别的电脑上安装时直接复制粘贴过去就可以使用,不用再重新下载编辑。
下面列出一些常用的快捷键,其中C-开头的表示是按Ctrl键,M-开头的表示是按Alt键。
- 基本命令
a. 关闭Emacs:C-x C-c b. 强制取消当前操作:C-g
- 文件操作命令
a. 打开/新建文件:C-x C-f b. 保存当前缓冲区:C-x C-s c. 当前缓冲区另存为:C-x C-w d. 关闭当前缓冲区并打开新文件:C-x C-v e. 关闭当前缓冲区:C-x k
- 窗口命令
a. 切换窗口:C-x o b. 快捷窗口切换:M-1, 2, 3, ...(注意:需要下载配置window-numbering.el插件,前面已有介绍。) d. 进入shell模式:M-x shell(这里是按了Alt+x键后,再键盘输入shell命令)
- 编辑命令
a. 复制标记区内容:M-w b. 粘贴:C-y c. 剪切:C-w d. 删除一行:C-k e. 撤销:C-x u f. 全选:C-x h
- 搜索命令
a. 向下搜索:C-s b. 向上搜索:C-r
以上是关于Emacs的简单配置与常用快捷键的主要内容,如果未能解决你的问题,请参考以下文章