Emacs+Muse 使用

安装muse

用package system安装muse即可。现在是Emacs 24的时代了。:)


发布


发布当前单个muse文件

C-c C-t 是发布

C-u C-c C-t 是不管有没有发不过的文档,都强制发布

发布pdf文件

muse发布pdf的时候需要安装几个必须的文件

apt-get install latex-cjk-all


在~/.emacs中配置如下:

;;muse
(require 'muse-mode)     ; load authoring mode

(require 'muse-html)     ; load publishing styles I use
(require 'muse-latex)
(require 'muse-texinfo)
(require 'muse-docbook)

(require 'muse-project)  ; publish files in projects
(setq process-path "~/Documents/process")
(setq process-html-path (concat process-path "/html"))
(setq process-pdf-path (concat process-path "/pdf"))
(setq muse-project-alist
      `(("website" ( ,process-path :default "index");;很奇怪,必须用反引号和,process-path提前求值才行
         (:base "html" :path process-html-path)
         (:base "pdf" :path process-pdf-path))))

最后是创建了一个project 名叫process,位于~/Documents目录下。

运行muse-project-publish命令,将html文件和pdf文件发布到html和pdf目录下。


访问当前编辑的muse文件发布后的文件,比如正在打开的是index.muse文件。

C-c C-v 之后,会询问需要访问那种风格,回答Html,将打开浏览器显示html目录下的index.html.


常用标记

主题

#title 后面添加文字即可

作者

#author 后面写上名字


链接

在muse中可以直接复制HTTP链接地址,如果你想对某个文字说明增加链接地址,可以用下面的标记:

[[link target][link description]]
比如

[[code][代码管理]] 

将在生成的html页面上出现代码管理字样,点击后跳转到code.html页面。前提是code.muse文件是存在的。

直接插入原始标记

这个功能非常有用,特别时如果想插入javascript,css和html标记,让网页变得更加丰富一些的时候。

用<literal></literal>包起来就行了。以前没有体会到这个功能的强大,今天试了一下,直接插入一个按钮很方便。

意味着我可以将我的muse文档编成web2.0的网页,直接写程序了。


标题 heading

* 开头是一级标题

** 开头是二级标题

依次类推


标题索引

只需要添加<contents>即可显示所有的标题目录

也可以指定depth参数,比如

<contents depth="3"> 就是最多显示3层目录


表格

表头用 || 

表身用 |

表尾用 |||


图片

插入图片很简单,用[[  ]] 里面加上图片路径即可,而且muse当时就可以显示出来。

如果给图片加上标题文字,则类似下面:

[[../pics/mycat.png][My cat Dexter]]

 

保留原文

比如HTML代码,这些文字能够直接嵌入到muse文档中,而不被修改,可以用<literal> ... </literal> 标记。

<literal>
  <table>
    <tr>
      <td>
	1
      </td>
      <td>
	2
      </td>
    </tr>
    <tr>
      <td>
	3
      </td>
      <td>
	4
      </td>
    </tr>
    <table>
</literal>

这对特殊场合需要表达漂亮的内容是很有帮助的。


class标签

这是用来生成HTML的span tag的,它的name参数将被转化为span的class属性。比如:

aaa
<class name="color:blue">
sss
</class>
bbb
产生的HTML代码是:

<p>aaa
<span class="c1">
sss
</span>
bbb</p>

span标签可以用来引入CSS,修改字体的颜色等属性.


CSS

init.el中指定main.css

muse编写html的时候可以指定CSS文件,要想用muse制作精美的HTML文档, CSS是必须要使用的技术。

在init.el里可以配置一下默认的CSS文件:

(setq muse-html-style-sheet "<link rel='stylesheet' type='text/css' href='main.css'/>")

main.css前面也可以有相对路径。

这样的配置,会导致发布出来的html文件开头有main.css文件被引入。

需要做的就是在html相同目录下有一个main.css文件即可。

同样的方法,可以加入多个


Header和Footer

可以自己准备好一个header.html,然后让muse自动合并进入HTML. init.el中可以这样配置:

(setq muse-html-header "header.html")

在muse文件的相同目录下,header.html文件内容如下:\

<!DOCTYPE html>
<html>
<head>
  <title>Your Title</title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <link rel="stylesheet" type="text/css" href="style/main.css"></link>
</head>
<body>


footer文件也可以在init.el中指定:

(setq muse-html-footer "footer.html")

footer.html文件如下:

<footer>
  <div class="colophon-author">
    Posted by: Dean Chen
  </div>
  <div class="colophon-mailto">
    Contact information: <a href="mailto:[email protected]">[email protected]</a>
  </div>
  <div class="colophon-date">
    Last updated: 2014-04-05 21:17
  </div>
  <div class="colophon-url">URL: 
    <span class="colophon-uri">
      <a href="http://blog.csdn.net/csfreebird">http://blog.csdn.net/csfreebird</a>
    </span>
  </div>
</footer>
</body>
</html>


发布后,这两部分都会出现在html文件中。

注意,当使用了header和footer后,muse-html-style-sheet变量就无效了。所以最好在header中指定css文件。推荐这样做。

你可能感兴趣的:(Emacs+Muse 使用)