← 全部文章

Org Mode 使用教程:笔记、任务与文章写作

从创建第一个 .org 文件开始,学会标题折叠、任务清单、链接、表格、代码块和 HTML 导出。

文章目录

Org Mode 让纯文本同时具备清晰的大纲、任务清单和文档结构。你可以先把它当作笔记工具,再逐步加入待办、日程和文章导出。本文以 Emacs 自带的 Org Mode 为起点,不要求额外插件。

创建第一份 Org 笔记

在 Emacs 中按 C-x C-f=,输入 =~/learning.org 并回车。=.org= 扩展名通常会自动启用 Org 模式;若没有,可执行 M-x org-mode RET=。输入下面的内容,按 =C-x C-s 保存。

#+TITLE: 我的学习笔记
#+AUTHOR: 我

* 今天学会了什么
用纯文本记录学习过程。

** 一个小练习
- 打开文件
- 修改内容
- 保存结果

开头的 #+TITLE: 是文档标题。正文用星号和空格表示章节:=* 标题= 是一级,=** 标题= 是二级。=#+AUTHOR:= 等元数据不是章节。

用大纲整理长文档

把光标移到章节标题上,按 Tab 折叠或展开当前章节;Shift+Tab 切换整份文档的大纲显示。先折叠只看标题,能更快发现文章结构是否清楚。

按键在标题上的作用
M-RET插入同级标题;在列表中则插入条目
M-LEFT / M-RIGHT提升 / 降低当前标题层级
M-S-LEFT / M-S-RIGHT连同子标题一起提升 / 降低层级
M-UP / M-DOWN向上 / 向下移动整个章节

这里的 S- 是 Shift,LEFT、RIGHT、UP、DOWN 是方向键。移动章节会带着正文和子标题一起走,适合把“实践结果”整段移到“方法”之后。

练习:在“今天学会了什么”下面增加“明天继续练习”,写两条计划,然后折叠所有标题。

把计划写成任务与复选框

* TODO 完成一篇学习笔记
** TODO 整理快捷键
** DONE 创建 Org 文件

* 出门前检查
- [ ] 带上电脑
- [X] 备份笔记

标题中的 TODO、DONE 是任务状态。在任务标题上按 C-c C-t 切换状态。复选框适合一件任务里的小步骤,把光标放在复选框条目上,用 C-c C-c 勾选或取消。

先保留默认的 TODO / DONE 两种状态,等到实际需要时再增加“进行中”等自定义状态。

链接、强调与图片

这是 *重点*,这是 /补充说明/,命令写成 =C-x C-s=。

[[https://orgmode.org/][Org 官方网站]]
[[file:notes.org][另一份笔记]]
[[file:images/example.png]]

链接前一组方括号放目标,后一组放显示文字。图片路径相对于当前 Org 文件。Emacs 中可以用 C-c C-l 插入或编辑链接,用 C-c C-o 打开光标处的链接。

本站文章图片也可以放在文章目录中,用相对路径引用。网页浏览器与 Emacs 对本地文件路径的处理不同,发布前必须检查图片和链接能否访问。

用表格整理信息

| 操作 | 快捷键 |
|------+--------|
| 保存 | C-x C-s |
| 取消 | C-g |

在 Emacs 中输入竖线分隔的行,按 Tab 移到下一个单元格,Org 会帮助对齐表格;回车可以移到下一行。无需手动补齐每一列的空格。

练习:增加一行“打开文件”,填入 =C-x C-f=,然后按 Tab 观察对齐效果。

用代码块保存可复现的示例

代码块要成对写出开始和结束标记。下面的代码会在文章中展示为 JavaScript 代码块:

#+begin_src javascript
function greet(name) {
  return `你好,${name}!`;
}
console.log(greet("Org"));
#+end_src

在 Emacs 的代码块中按 C-c '=,可以打开专门的编辑缓冲区;编辑后再次按 =C-c ' 返回原文。指定语言可以帮助编辑器识别语法,也方便导出时高亮。

本教程只展示代码,不要求执行。Org Babel 执行代码需要相应语言环境与配置;本站 Hugo 构建和浏览器预览都不会执行这些代码块。

从待办扩展到日程

需要按日期查看任务时,在任务标题上按 C-c C-s 设置计划日期,或按 C-c C-d 设置截止日期,在日期提示中选择目标日期。

日程视图需要知道从哪些文件读取任务。在当前 Org 文件中按 C-c [ 加入日程文件列表,然后执行 M-x org-agenda RET=,在菜单中选择 =a 查看日程,选择 t 查看待办。修改状态或日期后记得保存文件。

很多配置使用 C-c a 打开日程,但这个全局快捷键需要自己设置,不能假定新装 Emacs 已经绑定。初学时使用命令名称即可。

导出成 HTML,与别人分享

先保存文件,再按 C-c C-e 打开导出菜单,按 h h 导出 HTML 文件。通常会在 Org 文件同目录生成同名的 =.html=,可以用浏览器打开检查。

如果只选中一段文字,导出可能只包含选区;想导出整篇文档,应先取消选区。内置导出、本站浏览器预览与 Hugo 的支持范围不同,复杂语法以目标工具实际生成的结果为准。

把笔记发布到一言堂

本站使用 Hugo 直接读取 Org 内容,不需要先从 Emacs 导出 HTML。站长在文章开头填写:

#+TITLE: 我的学习笔记
#+DATE: 2026-10-06
#+DESCRIPTION: 这篇文章解决了什么问题。
#+TAGS[]: Emacs Org
#+DRAFT: false

将文件保存为 content/posts/my-note.org=,运行 =make build 检查构建,再按站点的部署流程发布。=DRAFT: true= 的文章仅用于草稿预览;公开发布前改为 =false=。

也可以先在 写作练习 中写作、预览和导出 Org。页面里的“保存文章”只写入本机浏览器,不会自动发布给其他访客。

完成你的第一篇笔记

今天先写一个标题、两个章节、一张快捷键表和一个待办。保存后折叠大纲,再导出 HTML 看一遍。若编辑操作还不熟悉,可回看 Emacs 使用教程。

搜索