行号显示及设置
Table of Contents
1. 如何显示行号
让当前的 buffer 显示行号:
M-x linum-mode
或者让所有 buffer 显示行号:
M-x global-linum-mode
2. 启动 Emacs 自动显示行号
如果要让 Emacs 启动后自动显示行号,在配置文件里加入:
(global-linum-mode)
3. 只对打开的文件显示行号
Emacs 打开文件会把文件内容放置到 buffer 中,Emacs 有很多 buffer,但并不是每个 buffer 都是文件,如果使用(global-linum-mode),会让所有的 buffer 都显示行号。对于一些交互式开发一类的 buffer 其实没有必要显示行号。可以在你的 Emacs 配置文件中加入以下代码,让非打开文件的 buffer 不显示行号:
(defun my-linum-mode () (if buffer-file-name (linum-mode))) (define-globalized-minor-mode my-global-linum-mode linum-mode my-linum-mode) (my-global-linum-mode)
4. 设置行号显示列的宽度
默认显示的行号会紧挨着文本内容,如图:
在文本内容较多的情况下会显得非常紧凑,如果行首是以数字开头的,更让人难以辨认,所以我们希望行号显示和文本区域中间有间隔,就像下图中这样:
在配置文件中加入以下代码即可:
(setq linum-format "%4d ")
5. 设置行号字体的颜色
上面第二张图中,我的行号颜色是黄色,Emacs 可以自定义显示颜色:
M-x customize-face
输入 linum,然后可以设置 Foreground 等等。设置后按 C-x C-s 保存。保存后 Emacs 会在配置文件中加入类似以下的 Emacs Lisp 代码:
(custom-set-faces '(linum ((t (:inherit (shadow default) :foreground "yellow")))))