CatCoding

Emacs Muse 的使用

2010-11-15

Muse 简介


Muse 是由 EmacsWiki 衍生的,为 emacs 下的一个扩展模式,可以方便快捷的为文档生成各种格式,包括 html,pdf,latex 等等。Muse 的编辑规则很简单,而且支持“所见即所得”的编辑方式可以让文档编辑更轻松。我使用这个工具已经快一年了,强烈推荐。这个 html 文件就是从 Muse 调用 htmlize 生成的。


Muse 的配置

这里下载最新版本的 Muse,比较简单的安装方法是解压后直接在目录下运行 make,然后把所有的文件都拷贝到 emacs 的一个加载目录下面 (比如~/.emacs.d/muse/)。设置.emacs 加入以下几行。

;; 加载 muse
(require 'muse-mode)
(require 'muse-html)</pre>

然后就可以利用 Muse-mode 来方便地创建文档。这里有个QuickStarted,看一遍就基本掌握了编辑规则。编辑完成以后按键 C-u C-c C-t 即可发布该文档。


Muse 中源代码高亮显示


在 Muse-mode 中编辑时是所见即所得样式的显示,但是有一个问题是代码不能高亮显示,要贴代码就有点不方便,解决的方法是要下载 htmlize.el,而且需要 1.34 以后的版本才支持这个功能,在这里下载。使用方法也有说明。


Muse 来写主页和博客


很多搞学术的同学喜欢建一个看起来很严谨的静态主页,这样的主页用 Muse 来维护非常方便。对于 wordpress 的博客或者主页,一款离线撰写工具是必须的,在 windows 下可以用 WindowsLiveWriter,Linux 下也有相应工具。不过我大部分还是在自己电脑上用 Muse 来写完发布成 html 格式,然后再发布到主页上。首先我们需要建立一个主页的工程。比如我的:

;;==新建一个 wiki 工程
(setq muse-project-alist
      '(("MainPage"
         ("~/document/blog/Home" :default "index")
         (:base "html" :path "~/document/blog/Home_Page"))
        ("Computer"
         ("~/document/blog/Home/Computer/" :default "index")
         (:base "html" :path "~/document/blog/Home_Page/Computer"))
        ("Sport"
         ("~/document/blog/Home/Sport" :default "index")
         (:base "html" :path "~/document/blog/Home_Page/Sports"))
        ("Other"
         ("~/document/blog/Home/Other" :defualt "index")
         (:base "html" :path "~/document/blog/Home_Page/Other"))))

然后到相应目录下撰写 muse 文件,快捷键 C-c c-p 就发布了整个工程,在 Home_Page 相应的目录下生成了 html 的文件。看起来有点复杂,其实还是很方便的,代码高亮这个程序员都喜欢的功能肯定就不用操心了,同时在本机上留有个备份。这种 wiki 风格的网页还是很利于浏览。不过有一个弊端,图片插入虽然在撰写过程中能直接预览的,但是上传到 wordpress 上路径肯定会变,所以还是要再稍微编辑一下。

screenscreen

公号同步更新,欢迎关注👻