Emacs org-mode



Table of Contents



  • 1 新建文档
  • 2 结构化编辑
  • 2.1 标题
  • 2.2 段落
  • 2.3 字体
  • 2.4 列表
  • 2.5 注释
  • 3 富文本编辑
  • 3.1 表格
  • 3.1.1 使用如下方法可以建立表格
  • 3.1.2 TAB快速建立表格
  • 3.1.3 隐藏表格过多内容
  • 3.1.4 C-c C-c/回车对齐表格
  • 3.2 引用文字
  • 3.3 引用代码
  • 3.4 引用图片
  • 3.5 链接
  • 3.5.1 链接的格式
  • 3.5.2 访问链接
  • 3.5.3 链接的类型
  • 3.5.4 内部链接 Internal Link
  • 4 常用的快捷键
  • 5 导出文档
  • 5.1 导出文本文档
  • 5.2 导出html



1



这里面有两种选择,一种是建立普通的TXT文档,然后在emacs里面选择org-mode进行编辑。另外一种方式是新建以org为后缀的文档,这种方式更简便一些,所以我会以后一种方法进行讲解。



2



这里面,最常用的就是各级标题了,通过划分标题能有效组织文章的结构和逻辑性。org-mode就是以不同颜色来高亮显示各级标题,从而达到划分的目的。



2.1



在标题前面加上*表示标题,其中*表示一级标题,**表示二级标题,依次类推。 注意,*必须顶格写,然后和后面的标题空一格,这样你就可以看出它们在颜色 上的区别了。

例如:



*一级标题 **二级标题 文本内容



2.2



只有回车两次才相当与换行,回车一次和空格一样。

使用双反斜杠可以充当换行。



2.3



*粗体* /斜体/ +删除线+ _下划线_ 下标:CO_2 上标:X^2 等宽字: =李硕lishuo=




效果:

粗体

斜体

删除线

下划线

下标:CO2

上标:X2

等宽字: 李硕lishuo



2.4



列表可以用"1."或"1)"来表示。注意,列表后面都要有空格,且同一级别的列表缩进要一致。



1. 第一级 2. 第二级 3. 第三级




效果:

  1. 第一级
  2. 第二级
  3. 第三级

其中,M+RET可以在当前位置插入一个列表项,C+RET在文档尾部插入一个列表项。



2.5



添加注释的方式有两种:



comment[1] comment[fn:2] 然后接下来就是注释,它会在生成html文档的时候放在最后。 [1] 这种方式最简单易用。 [fn:2] 注意冒号前的fn为固定格式,不能改变,后面可以随意。



效果:

comment1

comment2

C-c C-c可以在注释的标记和内容之间切换。



3




3.1




3.1.1



|--------+-----+-----------| | name | Age | Address | |--------+-----+-----------| | li | 24 | haerbin | |--------+-----+-----------| | chen | 23 | changchun | |--------+-----+-----------|




效果:

li

24

haerbin

name

Age

Address

chen

23

changchun



3.1.2



首先建立如下表格形式: |name|age|sex| |- 然后按下TAB键,就会自动补齐,并生成如下格式。 | name | age | sex | |------+-----+-----| | | | | 此时你仅仅需要使用TAB键进行编辑。



3.1.3



如果在表格中出现某一行的内容过多,你可使用如下办法进行隐藏,然后可以在另一个窗口查看完整表格。


1

one

2

two

3

this ia a test !


|---+------------------| | | | |---+------------------| | 1 | one | | 2 | two | | 3 | this ia a test ! | |---+------------------|



3.1.4






3.2





使用#+BEGIN_EXAMPLE #+END_EXAMPLE ,在这之间的文字会保留原有的格式。为了保留引文的格式,还可以使用#+BEGIN_VERSE #+END_VERSE和#+BEGIN_QUOTE #+END_QUOTE. 将引文居中排版可以使用#+BEGIN_CENTER #+END_CENTER.


例如:



这是一个测试实例! 无题 本是后山人; 偶作前堂客。



3.3



使用#+SRC_SRC SRC_TYPE开头和#+END_SRC结尾来保存代码原有格式。其中SRC_TYPE为代码类型,它会保存对应代码的语法格式.


#include <stdio.h>

int main()
{
   printf("This is a test !\n");
   return 0;
}



3.4



引用图片的方式很简单,就是[[/path/to/image]]就可以了。



3.5




3.5.1





链接主要是两种格式:[[link][description]] 或者 [[link]] 例如 [[][google]]



3.5.2



在一个链接上按C-c C-o即可访问,至于调用什么程序访问,取决于链接的内容,emacs和org mode的配置了。



3.5.3



如下都是可以支持的常用link类型:



Web http://www.sina.com 本地文档,用相对路径表示 file:paper/lastdoc.pdf 本地文档,用绝对路径表示 file:/path/to/filename 新闻组 news:comp.emacs 邮件地址 caole82@



实例:打开本目录下的文档:

函数指针解析(C语言)



3.5.4



内部链接就类似于HTML的锚点(实际上export成HTML文件后就变成了锚点),可以实现在一个文档内部的跳转。


如下命令定义了一个名为target的跳转目标:



#<<target>>




如下方式可以设置到target的链接:



[[target]]] 或 [[target][description]]



4



前/后以及标题,同级

C-c C-f/b

当前位置插入一个列表项或标题

M-RET

在文档尾部插入列表项或标题

C-RET

改变当前标题级别

M-LEFT/RIGHT

同时改变标题下所有的标题级别

M-S-LEFT/RIGHT

隐藏或打开标题下内容

TAB

自动对齐文本

M+q

对齐表格

C-c C-c

前/后一级标题

C-c C-n/p

编辑链接

C-c C-l



5



导出的方式很简单,使用快捷键C-c C-e,然后选择相应格式的文件即可。




文档元数据 #+TITLE: 标题 #+AUTHOR: 作者 #+DATA:创作日期 #+EMAIL:email地址 #+DESCRIPTION:对文档的简要描述 #+KEYDORDS:关键字 #+OPTION:H:2 num:t toc:nil #+OPTION是复合的选项,它包括以下内容。 H:设置导出标题的级别 num:打开或者关闭section-numbers toc:打开或关闭表格 \n:打开或关闭换行



5.1



C-c C-e a就可以导出文本文档。



5.2



C-c C-e h导出html文档。




Footnotes:



1

2




Date: 2012-10-14 Sun

Author: 作者