日知录

学而不思则殆

org-mode 入门教程

  org-mode是Emacs提供的一个强大的编辑模式,可以用于做会议笔记以及制作各种待办事项(GDT)。其语法类似于Markdown但是提供了比Markdown更多的操作,再加上Emacs强大的编辑功能,能给笔记增加很多动态的操作(能纯文本上实现折叠、展开、树状视图、表格求和、求代码运行结果等功能),可以说org-mode是最强大的标记语言。而org-mode的强大,也导致了他比markdown更加复杂,需要花些时间来练习,本文选出了org-mode最强大、实用的功能,进行最简单的介绍,下面介绍org-mode的使用方法。

安装

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

配置

  org-mode功能基本比较完善,不需要更多的配置,但是org模式下默认没有自动换行的功能,我们在.emacs文件里面添加如下代码,实现自动换行:

(add-hook 'org-mode-hook (lambda () (setq truncate-lines nil)))

  

实例教程

    以下分别讲解org-mode下几个实用的功能,更完整的教程可以参考官网教程。下面一步一步完成我们的org文件。

常用控制键表述

  本教程中我们定义:

  • C-x 表示 Ctrl+x
  • M+x 表示 Alt+x
  • S+x 表示 Shift+x
  • RET 表示 回车(Enter)
  • TAB 表示 制表(tab)

  这也是Emacs的标准定义。

新建文件

  1. 打开 Emacs
  2. 输入 C-x C-f ~/ MyPage/test.org

  注意文件后缀名为org,该命令新建了一个名为test.org的文件。

  新建完文件后,我们就可以输入相应的内容了。以下是org-mode语法的具体介绍。

章节

  org-mode用 * 标识章节,一 个* 代表一级标题,两个 * 代表两级标题,以此类推。      注意星号后面有空格。可以发现,不同层级标题的颜色是不一样的。按Alt加左右键能够升降标题的层级。一些常用快捷键如下:

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

列项

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

常用列项快捷键:

  • M-RET 插入同级列表项
  • M-S-RET 插入有 checkbox的同级列表项
  • C-c C-c 改变 checkbox状态
  • M-left/right 改变列表项层级关系 -M-up/dowm 上下移动列表项

脚注

  用1的方式插入脚注,而在最下面插入 

1 本文参考自 http://orgmode.org/orgguide.pdf

  这个标签是可以点击的。

表格

  表格常用于数据展示,org-mode提供了方便的列表操作。其中最独特的是支持类似于Excel的表格函数,可以完成简单的求和等操作。

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

  然后在第二行后面按 tab,表格就会自动生成:

Name Phone sub1 sub2 total
maple 134... 89 98 187
wizard 152... 78 65 143
Hello World 123... 76 87 163
hehe 157... 87 78 165

  下面我们填入一些数据,在填写的过程中,按Tab键可以调到右方表格,按Enter则能跳到下方表格。如果同时按住Shift,则是反方向跳。输入表格完成后,按 C-c C-c则能自动对齐表格,输入完成对齐后,表格如下:

  下面我们来体验下org-mode的强大的表格函数。我们在total列任选一个位置,输入=$3+$4 ,然后按C-u C-c C-c ,org-mode便能自动为我们计算所有三列加四列的和,并放到第五列。最后完成的表格如下:

  如果要插入行和列,可在表头添加一个标签或者新起一行,输入|再调整格式即可。其中最后一行是ogr-mode自动添加的。一些快捷键如下:

  • C-c | 通过输入大小的方式插入表格
  • C-c C-c 对齐表格
  • Tab 调到右边一个表格
  • enter 跳到下方的表格
  • M-up/right/left/right 上下左右移动行(列)
  • M-S-up/right/left/right 向上下左右插入行(列)

链接

  链接用于链接一些资源地址,如图片、文件、URL等。

  链接的格式是:

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

  如:

[[http://orgmode.org/orgguide.pdf][grgguid.pdf]]

[[file:./bluemix-graphic.png][a picture]]

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

[[file:./bluemix-graphic.png]]

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

  常用快捷键:

  • C-c C-x C-v 直接预览图片。

Footnotes:

1

DEFINITION NOT FOUND.

Comments

使用Disqus评论 使用多说评论
comments powered by Disqus