Appearance
Obsidian 概述
常用设置与操作
同步滚动的分屏
按住 Ctrl 键,同时使用鼠标点击右上角的视图图标,即可直接打开一个新的同步滚动的分屏,再根据需求分别调整两个分屏显示“阅读模式”或者“编辑模式”。
实用 CSS 代码片段
引用笔记限高
如果某个笔记中引用其他内容并想直接显示,但该引用的内容又太长,会导致将原笔记展示过长,此时可以使用 css 样式来限制引用内容的显示高度。新建 scroll-embed.css 文件,复制以下代码:
css
/* 为笔记限制其内部嵌入笔记的预览高度 */
.scroll-embed .markdown-embed-content {
max-height: 400px; /* 限制最大高度为400像素,可根据需要修改 */
overflow-y: auto; /* 内容超出高度时,显示垂直滚动条 */
}此代码片段非全局样式,在需要使用限制预览高度的笔记中,增加 cssclasses 属性,属性值设置为 scroll-embed 即可
针对图片生成标准 Markdown 语法的链接
需求分析
需求:原生 Obsidian 无法分类型区分链接格式:要么全 ![[]],要么全 ![]()。现希望将 Obsidian 设置两种插入附件的方式。如拖入图片类型的文件到文档时,则生成 markdown 标准的语法 ;而插入除图片外其他类型的附件时,则生成 Obsidian 特有 Wiki 链接语法 ![[xxx]]。即保留双链、图片跨平台兼容、其他文件用内部链接。
最终目标
- 图片(截图 / 拖拽粘贴)
- 自动存入:当前笔记同级的
images文件夹 - 链接格式:强制生成标准 Markdown
![](),跨平台兼容 - 自动自定义命名,绝不重名
- 自动存入:当前笔记同级的
- 非图片(PDF / 文档 / 压缩包等)
- 插件完全不接管、不自动处理
- 保持 Obsidian 原生
![[]]双链格式 - 不会被误存入
images文件夹,可手动统一放到根目录attachments
- 全局保留 Obsidian 双链功能,不影响内部笔记跳转
- 基础系统设置(保证附件用
![[]])
解决方案
核心方案:使用 Custom Attachment Location 插件,全局默认用 Wikilinks,仅对图片类型强制生成标准 Markdown 链接,精准按文件类型区分。
Obsidian 原生文件的基础设置
- 打开 Obsidian 设置 ->
文件与链接 - 指定【附件默认存放的路径】,选择“指定的附件文件夹”
- 指定【附件文件夹路径】,按实际情况填写
- 链接【内部链接类型】-> "尽可能简短的形式"
- 开启✅【使用 Wiki 链接】。目的为了全局默认使用双链

INFO
其实【附件默认存放的路径】和【附件文件夹路径】的设置,后面使用 Custom Attachment Location 插件后,该插件的设置会覆盖这两项的值,所以这里填写什么没有什么意义,重点是必须要设置好内部链接类型使用 Wiki 链接!
Custom Attachment Location 插件的设置
- 在第三方插件选择该插件
- 设置【新附件位置】,此设置会 overwrite 了前面原生的【附件默认存放的路径】和【附件文件夹路径】的设置。按需求是希望将图片存在当前文档所在目录下的【images】文件夹中,因此这里设置
./images - 设置【生成的附件文件名】,此设置用于对粘贴或者拖入的图片(或附件)进行重命名的规则,这样可以避免图片(或附件)出现同名的情况。可以使用表达式去设置,如:
${date:{momentJsFormat:'YYYYMMDDHHmmssSSS'}} - 设置【重复文件名分隔符】,此设置用于如果有附件同名,就自动在名称后加上设置的“分隔符” + “1、2、3...”,来避免覆盖原有的文件。
- 设置【附件重命名模式】,此设置用于是否给粘贴或者拖入的图片(或附件)进行重命名。
- 【无】:按文件原来的名称
- 【仅粘贴的图片】:只对以粘贴方式插入到文档中的图片进行重命名。图片以外格式的附件和插入到文档的图片均不重命名
- 【全部】:不管是粘贴或者拖入的图片(或附件),都进行重命名

- 【Advanced】->【Markdown URL 格式】,此设置就是用于实现将
![[xxx.jpg]]的链接写法替换成写法的需求解决方案的关键配置。这里也是支持表达式设置,如有不同的需求可参考官方文档。此处设置images/${generatedAttachmentFileName}即可实现将图片变成 Markdown 语法的标准写法。

值得注意,此需求只为了统一图片按标准 Markdown 语法链接写法,**其他类型的附件建议手动管理**,此项目的附件都统一存到根目录的 attachments 目录中,需要引入附件的时候手动编写 `![[]]`,避免将非图片类的文件保存到 `images` 文件夹中,要保持其纯净不被污染。
文档编辑
属性
属性是用于组织笔记的相关信息。属性包含结构化数据,如文本、链接、日期、复选框和数字。
笔记添加属性的方式
有几种方法可以为笔记添加属性:
添加属性后,文件顶部会出现一行,包含两个输入项:属性的名称和属性的值。Obsidian 提供了几个默认属性:tags、cssclasses 和 aliases,也可以随意自定义属性。
属性类型
除了名称和值之外,属性还有一个类型。属性的类型决定了它可以存储什么样的值以及 Obsidian 如何处理它们。要更改属性的类型,点击属性名称旁边的类型图标并选择不同的选项。Obsidian 支持以下属性类型:
- 文本
- 列表
- 数字
- 复选框
- 日期
- 日期 & 时间
- 标签
一旦属性类型被分配给某个属性名称,仓库中所有具有该名称的属性都将使用相同的类型。
内联变量的写法(Dataview 插件的扩展功能)
- 使用两个冒号
::分隔,前面是key(属性名称),后面是value(属性值),value 的部分一直到换行为止。语句格式如下:
key::value- 如果想将内联变量放到一个句子中,可以使用中括号来限定他的范围。如:
如果写在一个句子中,可以用中括号来限定[key::value]的范围- 如果想在阅读视图中隐藏key,只显示value,可以使用圆括号
()包裹内联变量即可
想隐藏key只显示value,可以用圆括号(key::value)包裹来实现Plugin (插件)
Outliner
Outliner 进阶增强的列表大纲插件,可以对节点进行上下的移动。
Quiet Outline
Obsidian 核心插件“大纲”的增强版。
Tips: 此插件完全可以代替 Obsidian 自带的核心插件『大纲』,只保留其中一个即可。
Calendar
Calendar 日历插件,快速新建日记
Templater
增强版模板插件。官方文档:Introduction - Templater
插入模板后指定光标的位置
语法:
html
<% tp.file.cursor(order?: number) %>示例:
html
// File cursor
// File multi-cursor
ContentNote: 特别注意,此功能必须在 Templater 的设置中开启
Automatic jump to cursor选项。(此选项默认是关闭的,如果设置模板没有实现光标定位的效果,请检查此配置项!)
多光标定位(高级用法):如果需要多个光标位置,用 tp.file.cursor(1) tp.file.cursor(2),按 Tab 可以在多个光标之间切换。
html
<font color=red>****</font>关键说明:
<% tp.file.cursor(order?: number) %>是 Templater 专属光标定位标记,不会被渲染出来,仅控制光标位置;- 插入后的代码是标准 HTML + Markdown,兼容所有平台;
- 上面示例在预览模式下会直接显示相应HTML代码的效果,编辑模式会保留源码。
快捷插入内容至某个笔记的指定位置
在模板文件夹中,新增模板笔记,如:Capture.md。
js
<%*
const file = tp.file.find_tfile("想插入的文件名称")
if (file) {
const loggedItem = await tp.system.prompt("弹出框提示")
const time = tp.date.now("HH:mm")
const content = (await app.vault.read(file)).split("\n")
const index = content.indexOf("### 想将当前输入的内容插入到那个标题下面")
content.splice(index + 1, 0, `- ${time} - ${loggedItem}`)
await app.vault.modify(file, content.join("\n"))
} else {
new Notification("No File Found!")
}
-%>Notes: 假设示例是将输入内容插入到当天的日志中,并且日志的名称是按
YYYY-MM-DD的规则命名,则可以使用tp.date.now("YYYY-MM-DD")获取文件名。可以使用Alt+E来打开模板选择框,或者直接针对该模板设置单独的快捷键。
通过模板选择不同标注并输入(Callout)
在模板文件夹中,新增模板笔记,如:Insert-Callouts.md。然后使用Alt+E来打开模板选择框,或者给模板设置单独的快捷键。
js
<%*
const callouts = {
note: '🔵 ✏ Note',
info: '🔵 ℹ Info',
todo: '🔵 🔳 Todo',
tip: '🌐 🔥 Tip / Hint / Important',
abstract: '🌐 📋 Abstract / Summary / TLDR',
question: '🟡 ❓ Question / Help / FAQ',
quote: '🔘 💬 Quote / Cite',
example: '🟣 📑 Example',
success: '🟢 ✔ Success / Check / Done',
warning: '🟠 ⚠ Warning / Caution / Attention',
failure: '🔴 ❌ Failure / Fail / Missing',
danger: '🔴 ⚡ Danger / Error',
bug: '🔴 🐞 Bug',
};
const type = await tp.system.suggester(Object.values(callouts), Object.keys(callouts), true, 'Select callout type.');
const fold = await tp.system.suggester(['None', 'Expanded', 'Collapsed'], ['', '+', '-'], true, 'Select callout fold option.');
const title = await tp.system.prompt('Title:', '', true);
let content = await tp.system.prompt('Content (New line -> Shift + Enter):', '', true, true);
content = content.split('\n').map(line => `> ${line}`).join('\n')
const calloutHead = `> [!${type}]${fold} ${title}\n`;
tR += calloutHead + content
-%>可以适当地调整代码,根据需要减少弹出框的输入。
在日志中使用 dataview 插件上下
在日志模板中,使用 dataview 动态增加“上一篇日志”和“下一篇日志”链接的效果。将以下代码复制到日志模板中。需要将代码块的语言 js 改成 dataviewjs
js
// 1. 仅筛选带 #Diary 标签的日记,并按文件名(日期)升序排列
const diaries = dv.pages("#Diary").sort(p => p.file.name, "asc");
// 2. 获取当前文件
const current = dv.current();
const index = diaries.findIndex(p => p.file.path === current.file.path);
let nav = "";
// 3. 生成上一篇日志(存在则显示)
if (index > 0) {
const prev = diaries[index - 1];
nav += `🡸 [[${prev.file.name}|上一篇日志]]`;
}
// 4. 生成下一篇日志(存在则显示,自动找最近的日期)
if (index < diaries.length - 1) {
const next = diaries[index + 1];
if (nav) nav += " | ";
nav += `[[${next.file.name}|下一篇日志]] 🡺`;
}
// 5. 渲染居中可点击链接
dv.paragraph(nav);Dataview
Dataview 插件实现将 Obsidian Vault 视为一个可供查询的数据库。它提供了一个 JavaScript API 和基于管道的查询语言,用于对 Markdown 页面进行筛选、排序和数据提取。
Github 仓库地址:https://github.com/blacksmithgu/obsidian-dataview
Hover Editor
悬浮预览编辑器,可以有预览链接内容的同时直接修改对应的内容。
Tag Wrangler
批量管理标签插件
Custom Attachment Location
这是一个适用于 Obsidian 的插件,允许像 Typora 一样使用标记(如 ${noteFileName}、$ {date:{momentJsFormat:'YYYYMMDD'}} 等)自定义附件位置。部分功能简介如下:
- 修改附件文件夹的位置。
- 修改“粘贴的文件”的文件名。
- 收集附件——将笔记中的所有附件收集起来,并放入相应的配置文件夹中。
官方仓库与文档:https://github.com/mnaoumov/obsidian-custom-attachment-location
Easy typing
Easy Typing 是一个 Obsidian 书写体验增强插件,提供自动文本格式化、智能编辑增强和强大的规则引擎,用于自定义文本转换。
官网说明文档:easy-typing-obsidian · GitHub
Style Settings + AnuPpuccin(主题)
安装步骤
- 安装 Style Settings 插件。详情见官方仓库 obsidian-style-settings
- 在【外观】-> 【主题】->【管理】中,搜索并 AnuPpuccin 主题下载并使用。
- 需要安装 AnuPpuccin 扩展主题。【文件与链接】->【AnuPpuccin】->【Colors】->点击【Extended Color Schemes snippet】的“this Link”

- 跳转至代码仓库下载 css 代码。

- 设置【外观】->【CSS 代码片段】中,点击打开相应的文件夹,将 css 文件复制进去,刷新后开启。

- Ctrl+P 打开命令输入框,搜索
Style Settings: Show style settings view打开设置的界面进行调试
AnuPpuccin Themes Extended

【AnuPpuccin Themes Extended】选择相应亮/暗主题。注意需要和原生主题色的配置一致。
AnuPpuccin 样式设置

【AnuPpuccin】用于设置具体元素的样式。部分常用的样式设置如下:
- 【Colors】->【Force Custom Accents】,设置是否覆盖原生设置的主题色,开启则覆盖。
- 【File Editor & Markdown Elements】->【Active line highlight】,设置当前选择/编辑行的样式
- None:没有效果
- Highlight:高亮底色
- Highlight + Border:高亮底色+前边框色
- Border only:前边框色
- 【File Editor & Markdown Elements】->【Callouts】,Callous 相关设置
- 【File Editor & Markdown Elements】->【Codeblocks】,代码块相关设置
- 【Enable Codeblock Numbering】:是否显示代码行号
- 【Codeblock Line Wrap】:代码块内是否换行(但目前设置没有生效??)
- 【Show/Hide UI Elements】:设置显示/隐藏一些工作区的元素
- 【Typography】->【Heading】:标题相关设置
- 【Enable Custom Heading Colors】:是否开启标题颜色
- 【Typography】->【Text Decoration】:设置文字的“加粗”、“斜体”和“==高亮==”的样式
- 【Workspace】->【File Browser】:文件与文件夹相关设置
- 【Enable file icons】:是否开启文件图标
- 【Enable folder icons for collapse indicators】:是否开启文件夹图标
- 【Workspace】->【Rainbow Folders】->【Rainbow style】:彩虹色文件夹
- None:不开启
- Full:彩虹色底色
- Simple:仅文字为彩虹色
- 【Workspace】->【Status Bar】->【Status Bar style】:状态栏的样式
- Default:原生样式
- Floating:鼠标移动至位置时悬浮
- Fixed:固定在底部
- 【Workspace】->【Tabs】:文档标题 Tab 样式
- 【Workspace】->【Workspace Layout】->【Workspace Layout variant】:工作台布局
- Default:原生样式
- Border:边框式模块
- Cards:布片式模块
Advanced Tables
强大的表格插件
Github 仓库地址:https://github.com/tgrosinger/advanced-tables-obsidian/tree/main
Clear Unused Images
Clear Unused Images 用于删除在 Markdown 笔记中不再引用的图片,保持文档夹整洁。此插件会所有的 Markdown 文档中所有的图片链接,与存储库中所有图片文件进行对比。若图片没有在任何文档中被引用,将被自动删除。
Github 仓库地址:https://github.com/ozntel/oz-clear-unused-images-obsidian
Header Enhancer
Header Enhancer 全能型标题增强插件,核心功能用于给标题自动编号,相关设置如下:
- 打开插件设置 -> 开启 "Enable Auto Numbering Function" 总开关,配置如下:
- Numbering Format:选择编号样式(
1.1、1.2.3等) - Trigger Method:设置触发方式(输入标题后按 Enter 自动添加编号)
- Skip Levels:设置跳过的标题层级
- Numbering Format:选择编号样式(
- 额外增强功能:
- 智能反向链接:自动管理标题与内容的关联链接
- 标题字体自定义:为不同层级标题设置专属字体、大小、颜色
- 批量处理:通过侧边栏图标一键为当前文档标题添加 / 移除编号
使用 YAML 控制是否开开启:
yml
# 旧
---
header-auto-numbering: ["state on", "start-level h2", "end-level h6", "start-at 1", "separator ."]
---
# 新版本设置
---
header-auto-numbering:
- state on
- start-level h2
- end-level h6
- start-at 1
- separator .
---待试用
- [ ] Editing toolbar
- [ ] Quick Explorer - Obsidian 更快的切换文件,快捷资源管理器。
- [ ] Excalidraw
- [ ] Manual Sorting - 文件夹拖拽排序
- [ ] MySnippets 状态栏管理css片段
- [ ] Samrt connections
- [ ] Mind Map 笔记转成思维导图
- [ ] weread 导入微信读书书摘
- [ ] Open in new tab - 可设置默认单击在新的 tab 中打开文件
- [ ] ViewTuner - 样式调整
Obsidian 接入 AI
开启 Obsidian CLI 功能
将 Obsidian 升级到最新版,在设置页面中打开【命令行界面】选项,会弹出是否将 Obsidian 注册到环境变量中,点击注册即可。

安装 Claudian 插件
此插件主要功能是,将 Claude Code 的功能集成到 Obsidian 的工作界面中。
Github 仓库地址:https://github.com/YishenTu/claudian
此插件未上架到官方插件市场,需要自行到 Github 去下载下图中红色框内的 3 个文件。

然后到 Obsidian 仓库项目的 \.obsidian\plugins\ 目录中,创建 Claudian 文件夹,将前面下载的 3 个文件放入到此文件夹中。重启 Obsidian 后,在设置面板的【第三方插件】中开启即可。
推荐安装的 Skill
下面是关于 Obsidian 常用的一些操作的 Skill
| Skill | Description |
|---|---|
| obsidian-markdown | Create and edit Obsidian Flavored Markdown (.md) with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax |
| obsidian-bases | Create and edit Obsidian Bases (.base) with views, filters, formulas, and summaries |
| json-canvas | Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections |
| obsidian-cli | Interact with Obsidian vaults via the Obsidian CLI including plugin and theme development |
| defuddle | Extract clean markdown from web pages using Defuddle, removing clutter to save tokens |
打开 Obsidian Skill Github 仓库,点击下载 Zip 包。
