标签: Linux

1 org-mode简介

org-mode是Emacs提供的一个很强大的编辑模式,可以用于做会议笔记以及制作各种待办事项。其语法类似于Markdown,但是 提供了比Markdown更多的操作,再加上Emacs强大的编辑功能,能给笔记增加很多动态的操作(能纯文本上实现折叠、展开、树状试图 、表格求和、代码运行结果等功能)。这个博客就是用Emacs下的org-mode模式编辑的。org-mode强大的同时,也导致了它很复杂,至少我 用了这么久也只会一些平常的用法(好尴尬)。于是在网上找了些学习资料整理一下,写篇博客为笔记。

2 使用

2.1 安装

Emacs的最新版本(24.4)自带了org-mode, 这就意味着只要打开一个后缀名为org的文件就会自动进入org-mode编辑模式。因此只需要下载最新版的Emacs即可。

install Emacs in Ubuntu:
$ sudo apt-get install emacs

2.2 章节(标题)

org-mode用 * 标识章节,一个 * 代表一级标题,两个表示两级,以此类推。

* 标题一
** 标题二

效果相当于两级的html的<h>标签。注意星号后面要接一个空格。不同层级的颜色是不一样的,同级的标$ 当光标在标题那一行的时候,按Alt加左右方向键可以升降标题的层级。下面是一些常用的快捷键:

  • S+Tab 展开、折叠所有章节
  • Tab 对光标所在章节进行展开、折叠
  • M+left/right 升级/降级标题

2.3 列表

列表是文本中一个比较常用的元素,可以列出各种待完成的事项等。org-mode提供了一种很独特的功能, 可以加入checkbox(实际上就是加入一对中间有空格的方括号 [ ])标记任务的完成情况,而且如果一个总任务有多个子任务, 还可以根据子任务的完成情况计算总进度(只需要在总任务后面添加一对方括号,里面加上 %/[%], [/])。列表 分为有序和无序两种,有序列表以 1.=或 =1) 开头,无序列表以 +- 开头,后面要加一个空格。

无序列表:

+ treeroot
  + branch1
  + branch2

在输入的时候,我们按 M-RET (Alt+回车)可以自动输入同级的条目,按 M+left/right 调整层级。

有序列表:

1) [-]任务1 [33%]
   1) [ ] 子任务1
   2)[x] 子任务2
   3) [ ] 子任务3
2) [ ] 任务2

当我们按住 M-S-RET 可以输入一个带checkbox的列表项,而在总任务后面可以输入一个 [%] 或者 =[/]=则能自动计算总任务进度。

2.4 脚注

[fn:1] 的方式插入脚注,而在最下面插入 [fn:1]本文参考自http://orgmode.org/orgguide.pdf

2.5 表格

创建表格时,首先输入表头:

 input | Name | Phone | sub1 | sub2 | total |
|-

然后在第二行后面按tab,表格就会自动生成 下面我们可以填入一些数据,在填写的过程中,按Tab键可以调到右方表格,按Enter则能跳到下方表格。如果同时按住Shift,则是 反向跳。输完数据后,按 C-c C-c 则能自动对齐表格。 input | Name | Phone | sub1 | sub2 | total |

maple134…8998
hello world142…8276
wizard152…9964

快捷键:

  • C-c| 此时会提示输入表格的大小,插入表格
  • C-c C-c 对齐表格,按tab键可以加行,此时也会自动对齐
  • Tab 跳到右边一个表格(和shift一起按效果相反)
  • enter 跳到下方的表格(和shift一起按效果相反)
  • M-up/right/down/left/right 上下左右移动行(列)
  • M-S-up/down/left/right 向上下左右插入行(列)

2.6 链接

链接用于链接一些资源地址,如图片、文件、URL等,格式如下:

[[链接地址][链接内容]]

[[http://orgmode.org/orgguide.pdf][grgguid.pdf]]] 
[[file:/home/maple/图片/test.jpg][a picture]]

如果去掉标签,则能直接显示图片:

[[file:/home/maple/test.jpg]]

直接显示的图片在Eamcs里默认不显示,需要按 C-c C-x C-v 才能显示,在输出成其他格式(html,pdf)后也可以看到

2.7 一些特殊的文本格式

*bold* 粗体
/italic/ 斜体
_underlined_ 下划线
=code= 
~verbatim~
+strike-through+

效果: bold italic underline code verbatim strike-through

2.8 富文本导出

org-mode的强大之处在于它导出成各种不同的格式,如html、pdf等。在导出时,可以加入一些说明符号,来定制 导出选项,常用的导出符号如下:

  • 设置标题和目录:
# +TITLE: This is the title of the document
# +OPTIONS: toc:2 (only to two levels in TOC)
# +OPTIONS: toc:nil (no TOC at all)
  • 添加引用: <qTab
# +BEGIN_QUOTE
Everything should be made as simple as possible,
but not any simpler -- Albert Einstein
# +END_QUOTE
  • 设置居中 <cTab
# +BEGIN_CENTER
    Everything should be made as simple as possible,but not any simpler
# +END_CENTER
  • 设置样例(在这里面的内容将会被直接输出,不会被转义) <eTAB

3 总结

org-mode是很强大的,但并不是每个功能我都用的上,目前只是用来写博客的,这些差不多就够用了,有需要的时候再补。弱水三千,只取一瓢饮。若不止渴,再来取!!!

作者: FangQian <qiangu_fang@163.com>

日期: 2016/08/08

HTML generated by org-mode 6.33x in emacs 23