不具备 URL 形式的链接—即不以已知协议或文件名开头的链接— 指向当前文档。将光标放在链接上时, 可通过 C-c C-o 或鼠标点击打开(见 Handling Links)。
Org 对文档内部导航提供了多项增强功能。 最常用的是 ‘[[#my-custom-id]]’ 这样的结构, 它精确指向 ‘CUSTOM_ID’ 属性为 ‘my-custom-id’ 的条目。 此外,形如 ‘[[*Some section]]’ 的内部链接会指向标题为 ‘Some section’ 的标题26。
当链接不属于以上任何一种情况时,Org 会查找 专用目标(dedicated target) : 即使用双层尖括号的相同字符串,例如 ‘<<My Target>>’ 。
如果没有专用目标,链接会尝试匹配缓冲区中某个元素的确切名称。 命名通过 ‘NAME’ 关键字完成,该关键字必须放在其所指向元素的前一行, 如下例所示:
#+NAME: My Target | a | table | |----+------------| | of | four cells |
最后,如果以上方式均未匹配成功,Org 会根据 org-link-search-must-match-exact-headline 的值,
搜索与链接文本完全一致(可包含 TODO 关键字与标签)的标题,
或发起纯文本搜索。
注意:你必须确保自定义 ID、专用目标和名称在整个文档中唯一。 如有需要,Org 提供语法检查工具辅助处理。详见 Org Syntax。
导出时,内部链接用于标记对象并为其分配编号。 被标记的对象会被指向它们的链接所引用。 特别是没有描述文本的链接,会显示为被标记对象的编号27。 以下是 Org 缓冲区中的一段示例:
1. one item 2. <<target>>another item Here we refer to item [[target]].
导出后最后一句话会显示为: ‘Here we refer to item 2’ 。
在非 Org 文件中,搜索会查找链接文本中的单词。 上例中,搜索内容为 ‘target’ 。
打开链接时会向 Org 的标记环中添加一个标记。 你可以使用 C-c & 返回上一位置。 连续多次使用该命令可回到更早记录的位置。
插入指向标题的链接时可使用框架内补全:在框架中输入星号与若干可选字母,按下 M-TAB,当前框架内所有标题均可作为补全项。
当指向 ‘NAME’ 关键字时, 必须搭配 ‘CAPTION’ 关键字才能获得正确编号(见 Captions)。