我们平时使用Obsidian软件进行笔记管理时,时间一长,就会出现内容杂乱的情况。举个简单的例子:假如我们用了一个月时间陆续读完了一本书籍,并坚持按卡片法每天记录了感悟及心得,这样一个月后,我们就有了30个每日笔记文件,所以我们就有定期要整理的需求了。如下以我的笔记目录演示:
如上图,在2021年5月起,我使用了Calendar插件每天(请自动忽略)创建一个笔记,按照一元化笔记方法把所有的内容都记录在了当天的笔记中,如每天事项及工作内容,个人随想、个人感悟,读书笔记,信息摘要等。(说明:如果笔记内容太长,可以分割为多个ZK笔记并链接。)
日历笔记太长可链接ZK笔记
笔记整理三步曲:笔记的拆分及合并、笔记的引用或嵌入、创建TOC内容。
步骤一:笔记的拆分及合并
更新 Obsidian 到最新0.12.10版本后,官方提供了 composer 插件可以实现笔记的提取和合并功能,你可以在核心插件菜单中开启。另外你也可以选择安装第三方的 note refactor 插件来实现。官方的composer插件功能较少但也能完成拆分及合并的工作,整体上比较简洁。下面我们简要的介绍下note refacotor第三方插件和composer核心插件的操作。
如下,在设置->快捷键上搜索插件note refactor,并设置好快捷键,如下我设置了两个快捷键来演示:先在笔记中选中内容后使用 Command+Shift+N 进行笔记的拆分,并自动使用提取内容第一行作为新的文件名。 (说明:你也可用 Command+Shift+C 来操作,在拆分内容时设置一个新笔记文件名称,来把内容拆分至我们新建的笔记文件中。)
Note Refactor插件设置
或者在笔记中选中内容后使用快捷键 Command+Shift+C 把内容合并到一个指定的文件 ( 你可以在弹出列表框中选择已存在的笔记文件,或输入笔记名来创建一个新笔记作为合并的目标笔记 )。总之,如果是提取至一个新创建的笔记则是拆分,如果是一个存在的文件则是合并。
输入要合并的目标文件合并内容后的最终文件
补充下官方composer插件操作:
确保启用官方自带的管理插件
选中内容后,右键Extract菜单来操作,在弹出窗口中可以选择目标文件来实现合并,或者创建一个新的文件来拆分。
使用官方插件的演示输入合并目标文件名称合并内容后的最终文件
步骤二:笔记的引用或嵌入
在一个笔记中我们如何引用或嵌入其它笔记呢?Obsidian中提供了文件引用、标题引用、块引用三种引用及加!的嵌入方式:
说明: 我们还可以在不同的笔记中使用相同的标签来实现笔记间的引用,这样当我们打开关系图时,可以通过标签来展示引用的关系。
关联之前文档常用几种引用写法:[[2020-07-13]] 文件引用[[2020-07-13#大纲]] 标题引用[[2020-07-13#^块内容]] 块引用- 在多个笔记中使用同一个标签,并在关系图中查看 #运营 #电商/拼多多
除如上常用几种,我们还可以使用query语法查询、dataview插件查询两种查询内嵌、以及嵌入引用的形式(在以上前三种引用写法前加!)来引用笔记中的内容。
如何关联之前文档的某些内容:- 通过查询引用内容 ```query file:2021 人货场 ```- 使用dataview插件 ```dataview list from (#电商 and #运营) | (文件夹) | todo-list ```- 通过嵌入形式来引入内容 ![[2020-07-13]] ![[2020-07-13#大纲]] ![[2020-07-13#^块内容]]- 支持全局搜索标题(不清楚标题在哪个文件时,挻有用) [[##信息流 第一章 原理 - 支持本文搜索标题 [[#信息流 第一章 原理 - 支持全局搜索块(不清楚内容块在哪个文件时,挻有用) [[^^信息流 巨量大学 2021 - 支持本文搜索块 [[^信息流 巨量大学 2021
按以上markdown写法操作后,Obsidian预览如下:
query及dataview查询内嵌Obsidian块嵌入的效果用标签关联的关系图谱
步骤三:创建TOC内容
我们通过以上的拆分及合并方法对笔记内容进行了重新结构化,并通过如:内容引用(文件/标题/块),内容嵌入(query/dataview/引用前加!),标签关联引用 等方式来实现了笔记内容的引用及关联。这样我们便可以把归属于同一类的内容进行整理输出。如:本例中,我们把每天的读书笔记及感悟,整理到了对应的笔记文件中,并在最终导出为一个TOC书目。
Obsidian搜索框搜索:-----------------------------path: 读书笔记 认知与觉醒
获取并整理TOC信息
如上,我们通过以上的几个关键步骤:拆分、合并、引用、汇总TOC,以整理一本书籍的读书笔记为例讲解了如何对Obsidian的笔记内容进行整理的流程,希望对你在使用Obsidian软件时有所帮助。接着我讲解下我平时是怎么按上面的流程来进行具体操作的,详见分割线后内容:
多条件查询及快速引用、嵌入演示:
我们在拆分、合并、引用或嵌入内容时一般会先查找待处理的内容,这里可以使用Obsidian强大且灵活的查询表达式来操作。如下作简要的一些介绍:我一般先新建一个 ZK 笔记,输入下面的查询表达式内容,并开启编辑,预览双布局,快速的对笔记查询结果进行引用,比如 [[^^多个关键词 来进行块引用或块嵌入(前加个感叹号) ,当然也可以使用 [[文件名 或 [[文件名#标题名 来引用或嵌入,这里不再详细的赘述。
ZK笔记中使用query表达式
如下为在ZK笔记中的query查询表达式:```queryline:(广告 西瓜 头条 微信) file:2021``````queryfile:2021 content:下载 ROI line:(/\^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{6,6}$/) ``````queryfile:2021 content:下载 ROI -line:(/\^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{6,6}$/) ``````queryfile:2021 section:(广告 /\^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{6,6}$/) ``````queryfile:2021 block:(广告 /\^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{6,6}$/) ``````queryfile:2021 line:(广告 /\^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{6,6}$/) ```
如上所列,我们使用的query表达式,在 Obsidian 搜索框也都是可以使用的,但是为了方便操作,我一般是把每次的查询条件都存储并备注在ZK笔记中。
搜索框组合条件及正则搜索
如下图所示,展示了在ZK笔记中更丰富的查询示例: (这里ZK笔记名称我手动更改过,请忽略)。
ZK笔记中更多的查询示例
在上图中,在笔记内容的query查询中我们作了笔记的左右分割布局,方便一边编辑条件一边观看返回结果。上面我们举例了常见的section、block、line、file、content、以及/正则式/、-符号取差集,空格符号取并集等查询操作。可看到不同的查询范围及关键词定义返回的结果是不同的。接下来便可依据右侧查询结果在左侧ZK笔记中直接引用或嵌入我们想要的内容:
ZK笔记中引用或嵌入内容:(提示:编辑时,你同样可以添加标签、提取大纲,高亮等方式来组织内容)1.全局的块搜索[[^^穿山甲也 2.前面加!可以嵌入内容![[^^穿山甲也3.也可以用文件名、标题来引用,支持前加!嵌入内容[[文件名]] [[文件名#标题]] [[文件名#^块id]] 如:![[文件名#^块id]]
嵌入内容后的预览结果
经过在ZK笔记中迭代操作: 1.编写query查询 2.对查询结果进行引用、嵌入、添加标签 3.对已体系化ZK笔记归档 。 使用如上几个步骤便可生成一个整理好的ZK笔记,我们可对 ZK 笔记的内容进行大纲管理、重命名归档或合并到其它文件。
说明:当上图的202107132138 ZK笔记内容够丰富及体系化后,我们可直接命名为:认知与觉醒-第1章.md 存储,或者把内容合并至存在的名为 认知与觉醒-第1章.md 的文件中,这样迭代式的完成第1章节的笔记整理,后面的操作则是如上几个步骤重复,并最终获取及导出TOC。
对ZK笔记操作流程的演示说明文本替换功能生成块引用符号文本替换功能生成标题引用符使用系统插件拆分及合并笔记输入检索条件来获取TOC信息
--2021-07-21 添加如下: 参考:Obsidian 插件之 Text{{expand}} (zhihu.com)
使用query及dataview或搜索框查询,获取处理内容再通过语法引用及嵌入内容的操作比较繁琐。后来想了下,有几个简单的方法,即使用Text expand 及 Admonition插件。
两款高效整理笔记的插件
如下,我们使用代码块语法进行笔记内容组织,这里用了标题级别提取,因为行级别、块级别提取会遗漏关键字查询匹配的上下文内容。使用 text expand 提取了大纲后,我们还可以使用插件admonition来定义引用块的粒度,admonition支持跨obsidian的多行、多块、多标题级别的引用,即它可以定义引用的内容块粒度,同时可对text expand返回的长内容进行折叠。
两个基本的示例写法,更多请参考官方文档:```expander/^(.*)信息流(.*)\n/$header:##!$header:###``````ad-notetitle: 内容标题1color: 50, 205, 50collapse: false文档:https://github.com/valentine195/obsidian-admonition#non-code-block-admonitions色系参考:RGB颜色 < 255 185 15 | 138 43 226 > https://tool.oschina.net/commons?type=3---[[2021-06-05#大纲]]![[2021-06-05#信息流聚合]][[2021-06-09#大纲]]![[2021-06-09#信息流广告]]```
提取大纲并进行整理使用了KM的快捷脚本
相关链接:
补充链接:
结束:
至此,本文结束.... 欢迎小伙伴们一起探讨和评论!