Equation Citator v1.3.7 Documentation
    Preparing search index...

    2. 快速入门

    1. 核心功能概览

    公式引用插件(Equation Citator) 将 Obsidian 转变为一个强大的学术写作环境,支持 LaTeX 风格的引用,让仓库内的引用变得前所未有的简单。它包含非常丰富的功能,包括:

    • 自动编号:自动为公式/图表编号,所有引用自动更新。
    • 重命名标签:你可以重命名特定公式/图表的标签,同时保持引用正确。
    • 公式、图表和标注引用:使用 \tag{}\ref{} 标记和引用公式。使用 |fig:1.1| 引用图表,也支持通过标注引用表格/定理。使用引用可在任意位置预览和跳转。
    • 连续引用和跨文件引用:以紧凑视图引用多个文档中的多个公式。
    • 引用时自动补全:在书写 \ref{} 语法时自动补全你要查找的内容。也支持图表/标注的丰富自动补全。
    • 图表标题:在图表的元数据中添加 fig:1.1|title:|desc:描述 将自动在图下方渲染。
    • 公式、图表和标注管理面板:完整的管理面板,支持列表/大纲视图。
    • 拖拽引用:从管理面板拖拽公式。
    • PDF 导出:生成格式正确的文档以供发表。
    • 网页笔记导出(v1.3.5+):将笔记同步到网站构建文件夹。

    兼容性 Typst Mate 支持(v1.3.1+):本插件也支持 Obsidian Typst Mate,你可以设置 设置 > 显示(分类)> 其他 > 启用 Typst 模式 使其兼容 Typst 语法。 Excalidraw 支持(v1.3.3+):Excalidraw 图表可以像 fig: 一样被引用,并具有正确的预览。

    2. 基础引用语法

    我们设计本插件是以简单易用为目标。 引用的语法总结如下表所示。如果你不需要示例,可以先查看 #1.4 交互功能,然后直接跳转到 公式管理面板教程

    引用语法表

    功能 语法 示例
    公式标签 \tag{label} \tag{2.1}
    公式引用 $\ref{eq:label}$ $\ref{eq:2.1}$
    图表 ![标题|fig:标签|desc:文本](img) ![图表|fig:3.1](graph.png)
    表格 > [!table:标签] 标题 > [!table:3.1] 结果
    跨文件 $\ref{eq:脚注^{标签}}$ $\ref{eq:1^{2.3}}$
    多重引用 $\ref{eq:1.1, 2.1}$ 引用多个公式
    连续引用 $\ref{eq:1.1~3}$ 范围表示法

    1.1 创建和引用公式

    使用 \tag{标签} 为任意公式添加标签:

    E=mc2(1.1)\Large\boxed{E = mc^2} \tag{1.1}

    要引用此公式,输入 \ref{eq:1.1},渲染为 (1.1)

    快速命令(使用 Ctrl + P 搜索并添加快捷键😄!):

    • 在光标位置插入引用:快速插入 \ref{}
    • 在光标位置插入公式引用:快速插入 \ref{eq:}
    • 在光标位置插入标签并自动编号:当光标位于公式块中时,添加带自动编号的标签。

    自动补全功能:只需插入 \ref{eq:} 然后输入,比拖拽引用快得多,因为我们支持所有类型引用的自动补全。

    对于公式,只需在自动补全面板中选择你要插入的内容。

    简洁/丰富自动补全模式:对于图表和标注,默认只显示标签和标题。你可以通过鼠标悬停在选项上来预览内容。或者你也可以使用 设置 > 引用 > 自动补全中显示完整图片和标注预览 在自动补全选项中显示完整的图片/标注。

    一次引用中只能引用一种类型,要么是公式、要么是图表、要么是标注,例如 $\ref{eq:1.1, 1.2}$$\ref{fig:1.1, 1.2}$,它会将 ref{ 后面的前缀作为标记引用类型的依据。因此混合引用 \ref{eq:1.1, fig:1.2, table:1.3} 是不允许的。

    1.2 多重/连续引用

    你可以用逗号引用多个公式,如 $\ref{eq:1.1, 1.2, 1.3}$,渲染为 (1.1~3)

    F=ma(1.2)\boxed{F = ma} \tag{1.2}
    p=mv(1.3)\boxed{p = mv} \tag{1.3}

    连续引用:此功能默认开启。连续引用 会合并引用并将其渲染为 (1.1~3)。我们也可以使用 \ref{eq:1.1~3} (1.1~3) 作为多个公式的连续引用语法。

    1.3 跨文件引用

    跨文件引用依赖 Obsidian 内置的脚注系统:因此你可以使用以下语法创建脚注:

    [^1]: [[文档_A|论文-A]]
    [^2]: [[文档_B|报告-B]]
    

    跨文件引用语法:$\ref{eq:脚注^{标签}}$。例如 (2.3.1)[1]。跨文件引用也完全支持来自文章 A[1:1] 的图表 Fig. F1[1:2] 和标注 Table. basic-grammar[1:3]

    1.4 交互功能

    交互功能对于快速检查和管理你的公式非常有用,如下表所示:

    功能 编辑器弹窗 公式面板 公式 图表 标注
    预览(按住 Ctrl + 悬停) 已有
    跳转到源双击
    分栏打开并跳转Ctrl + 双击
    重命名标签右键单击标签并选择重命名标签
    右键复制
    • 对于预览,你可以通过 设置 > 分类 > 样式 > 预览组件尺寸 设置面板大小。
    • 对于分栏打开并跳转,在预览组件中,如果已经打开了多个编辑器,它将重用现有的相邻编辑器而不是打开新编辑器。但在公式面板中,它总是会打开一个新编辑器,以防止重用现有编辑器。
    • 对于重命名标签,选中 \tag{} 来重命名公式标签,选中整个图片 ![[image.png|fig:1.1]] 来重命名图表标签。
    • 对于右键复制,你可以在 设置 > 显示(分类)> 公式面板 > 公式组件右键复制内容 中自定义复制的内容,选择是否复制带标签/括号的公式内容。

    2. 图表和标注引用

    1) 图表引用

    1. 语法

    我们使用增强的图片语法来使图表可引用:

    %% 我们同时支持 wiki 链接和 markdown 链接格式:
    %%wiki 链接格式%%
    ![[James_Lovell.jpg|fig:3.1|desc:描述]]
    
    %%markdown 链接格式%%
    ![fig:1.3|title:测试|desc:可选描述](images.png)
    

    我们在标题描述中提供完整的 Markdown 语法支持,因此你可以在其中书写行内公式。使用 $\ref{fig:1.1}$ Fig. 1.1引用以下图表

    ![[img/A minecraft image.png|fig:1.1|title: 一张 Minecraft 图片|desc:这是 $\text{Minecraft}$ 图片的描述|214]]

    请注意,插件仅在添加了 fig:xx 时才会渲染标题和描述。如果这与其他插件冲突,你可以在 设置 > 分类 > 样式 > 渲染图片标题和描述 中切换。

    预览组件中的标题/描述可以在 设置 > 分类 > 样式 > 预览组件中渲染图表信息 中切换。

    2. 支持 Excalidraw 和章节预览

    v1.3.3 之后,我们也可以使用相同的语法引用 excalidraw 图片 Fig. 1.2

    Excalidraw 支持功能

    Excalidraw 支持功能

    要正确渲染 excalidraw,需要在 设置 > 显示(分类)> 其他 > 使用 Markdown 渲染器的扩展名 中包含 excalidrawexcalidraw.md,其中 excalidraw.md 必须被添加。

    章节引用:由于外部文件链接视图 ![[#1.4 交互功能|fig:1.6]] 的语法与图片相同,当 md使用 Markdown 渲染器的扩展名 设置中时,我们甚至可以引用章节预览 Fig. 1.3

    Click here to jump to #1.4 交互功能

    3. 局限性

    本插件不支持为网页链接的 Markdown 格式图片创建标题。但你仍然可以用 Fig. 1.4 引用它。

    为什么不支持:我们在 .internal-embed image-embed 类中添加标题,而网页链接图片渲染为 <img> 标签,没有这个包装类。在这些图片外部创建元素会在编辑时引发一些问题。你可以简单地将其设为本地图片文件来解决。

    1.4

    2) 标注引用

    1. 语法

    本插件支持引用自定义类型的标注,这为我们引用表格、定理和任何自定义内容提供了灵活性

    你可以在 标注引用前缀 设置中配置自定义前缀。默认只启用了 table:

    我们给出一个引用表格的示例:

    2024 年 Q4 销售数据

    产品 收入 增长
    部件 A $100K +15%
    部件 B $150K +22%

    使用以下语法引用表格:$\ref{table:2.1}$,渲染为 Table. 2.1

    标注内的引用必须严格匹配大小写。例如:

    • 标注标签:> [!NOTE:1]
    • 引用使用:$\ref:{NOTE:1}$(区分大小写)

    所有图表和标注引用支持 #1.1 创建和引用公式 中的语法和交互功能。

    2. 自定义标注颜色

    我们还支持通过将 callout.css 添加到 设置 > 外观 > CSS 代码片段 来自定义标注颜色,这样你就可以写出像这样漂亮的标注(添加此代码片段后生效):

    2024 年 Q4 销售数据

    这是一个红色的标注表格

    产品 收入 增长
    部件 A 100K +15%
    部件 B 150K +22%
    部件 C 200K +33%

    3. 局限性

    1. 目前插件不支持标注的自动编号和重命名。请查看 zh-CN/5. 进阶技巧 了解如何更好地使用标注引用。

    2. 遗憾的是,我们目前还不支持为标注自定义图标。因为它使用图标作为 data-callout,而我们也使用第一个字段作为引用标签。

    3. 使用自动编号系统

    你可以基于标题级别自动为当前文件中的所有公式/图表编号:

    • 使用命令 自动编号当前文件公式 / 自动编号当前文件图表
    • 使用工具栏按钮

    1) 自动编号方式和深度

    你可以在 设置 > 分类 > 自动编号 中自定义 自动编号方式自动编号深度

    自动编号方式:

    • 相对:基于相对标题层级编号(2.1.1、2.1.2 等)
    • 绝对:使用绝对标题级别进行自动编号(# 对应 1.1、1.2 等)

    编号深度(1-6):控制自动编号的最大级别 (1.1)、(1.1.1)

    自动编号全局前缀:如果你正在撰写一本书的特定章节,可以使用此设置。你可以将其设置为 5.,这样在第 1 节中,公式将显示为 \tag{5.1.4}

    2) 自动编号期间的引用更新

    当自动编号运行时,所有引用都会自动更新以匹配新的编号。这使你可以在任意位置插入或删除公式,无需担心重新编号或引用断裂。

    在自动编号过程中解决冲突有 2 个设置:

    1. 自动删除冲突的标签引用(默认:开启):当一个标签被重命名为另一个标签,而该标签的旧引用仍然存在(在自动编号后未被修改),它们将被自动删除以避免错误引用。
    2. 自动删除未使用的标签引用(默认:关闭):如果引用未被使用,它将被自动删除。(仅当你完全依赖自动编号进行标签管理时才使用此设置)。

    3) 排除特定标签的公式

    标注中的公式默认不会包含在自动编号系统中。因此,要防止公式被自动编号,你应该将其放入标注中(参见 #166)。

    此公式将被排除在自动编号系统之外: $$\iiint \nabla \cdot A dx = \iint A \cdot \vec{n} dS$$

    你仍然可以通过 设置 > 分类 > 自动编号 > 标注内公式自动编号 来包含标注中的公式。

    4) 仅对重要公式编号

    如果文件中包含许多推导步骤,但你只想为你打算引用的少数关键公式分配编号:

    1. 启用选项:
      • 设置 > 分类 > 仅自动编号带标签的公式
    2. 为你关心的公式手动添加标签:
      • 在末尾:使用你的快捷键(例如"在光标位置插入标签并自动编号")。
      • 在表达式中间:先插入 \tag{A} 或其他临时标签,然后运行自动编号。

    对于我的工作流程,我建议对重要公式使用 \boxed


    1. 2. 跨文件引用功能 ↩︎ ↩︎ ↩︎ ↩︎