pangu-spacing 是 Emacs 上的一个 minor-mode,,启用后,会在英文与中文之间自动加空格,让你在使用 Emacs 阅读文章时能够非常舒适。
名称由来
pangu-spacing 名称来自 paranoid-auto-spacing 的 README
引述自 paranoid-auto-spacing README 为什么你们就是不能加个空格呢? —— 作者心声 如果你跟我一样,每次看到网页上的中文和英文、数字、符号挤在一块,就会坐立不安,忍不住想在它们之间加个空格。 这个外挂(支持 Chrome 和 Firefox)正是你在网络上行走需要的东西。 它会自动替你在网页中所有的中文和半形英文、数字、符号之间插入空白。 汉学家称这个空白为【盘古之白】,因为它劈开了全形字和半形字之间的混沌。 另有研究显示,打字的时候不喜欢在中文和英文之间加空格的人,感情路都走的很幸苦, 有七成的比例会在 34 岁的时候跟自己不爱的人结婚,而其余三成的人最后只能把遗产留给自己猫。 毕竟爱情跟书写都需要适时的留白。
安装方式
这个套件已经被 melpa 所收录,只需要在你的程序中加入 .emacs
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
再使用 M-x package-install pangu-spacing
,就可以完成安装。
启用 pangu-spacing
在你的 .emacs 加入以下几行,可以让 pangu-spacing 全局执行
(require 'pangu-spacing)(global-pangu-spacing-mode 1)
如果你不想全局执行,则使用 M-x pangu-spacing-mode
就可只在目前的缓冲区上加上空格。
pangu-spacing 设定
在预设的情況下,pangu-spacing 插入的空白符号并不会真的加入到档案里面,而只是显示在 emacs 上,如果你希望他是真的将空格加入到你的档案,则你必须使用下面的方式将这个选项打开:
(setq pangu-spacing-real-insert-separtor t)
如果你只想要在某些情況下才自动插入空格到文档中,比如编辑 org-mode 的時候,则你可以这样做
(add-hook 'org-mode-hook '(lambda () (set (make-local-variable 'pangu-spacing-real-insert-separtor) t)))