思源作为块编辑器,支持通过 [[
创建 块引
。使用这个方式,可以很方便地对内容进行链接。
如果要用一个大家都熟知的概念作为对比的话,块引
实际上就是一种 标签
。以往你使用 标签
的地方,全都可以用 块引
代替。
在我看来,相比于其他笔记软件,你在思源里唯一需要新学习的操作,只有这个 [[
。(注: 【【
也可以)。
一、块引
和 标签
的使用对比
注意:以下为纯文本展示效果。实际上在思源里使用块引和标签,两者都会触发内容的搜索,只不过一个是输入 [[
后,另一个是输入 #
。
1、第一种风格
标签的用法:
这个#想法不错,给日记的年文档的图标,设置成十二生肖
块引的用法:
这个[[想法]]不错,给日记的年文档的图标,设置成十二生肖
2、第二种风格
标签的用法:
#想法 #知道或发生的事件
某软件推送了这个帖子 link,然后知道了个 mymind 的软件。mymind.com/
似乎是能轻松收集,然后自动帮助进行整理。
不过这类软件,感觉会收集用户的数据,不是很喜欢。
感觉可能还是自己搭建大模型,然后接入思源笔记的数据。
块引的用法:
[[想法]] [[知道或发生的事件]]
某软件推送了这个帖子 link,然后知道了个 mymind 的软件。mymind.com/
似乎是能轻松收集,然后自动帮助进行整理。
不过这类软件,感觉会收集用户的数据,不是很喜欢。
感觉可能还是自己搭建大模型,然后接入思源笔记的数据。
对于两种风格,现在有一个比较统一的叫法,第一种叫 关联型
,第二种叫 传递型
。顾名思义:
- 关联型:代表内容跟
标签
或块引
有关联。 - 传递型:代表将内容传递过去
二、关联型块引和传递型块引
除了在笔记软件中,标签
的概念也被广泛使用。
我们之所以使用 标签
,实际上是为了将内容与一个主题、或者一个概念进行挂勾。目的是在后续检索内容时,可以通过选择具体的标签,快速找到这些关联的内容。
也就是 通过选择标签---快速找到/汇总--->与之关联的内容(也就是我们想要的内容)
。
而在我们使用标签时,由于标签的文本是否适合放入正文,导致了标签放置的位置出现了不一样。
就像你前面看到的那样。第一种方式,想法
这个 标签文本
适合直接放在文字内部。而第二种方式,由于整段内容是隐含 个人想法
这样的概念,因此需要在整个文字以外的地方,加上 想法
这样的标记。
但无论哪种方式,实际上都是为了将一段内容传给一个概念/主题。 (右边图片半透明,代表内容不是真的在这)
既然都是 传递内容
,因此两者在实际作用上并没有区别,目的都是为了将内容传递,或者说是发送到我们想要的主题下。
但因为各自的写入位置不同,在具体处理时会有一些细节上的区分。
对于 关联型块引
将整段文字传递过去即可,这很好办。
而对于 传递型块引
,需要将后续所有的目标文本都传递过去。
那如何知道后续哪些文本是我们需要传递的内容呢?
这个时候 容器块
的作用就出现了。关于容器块,你知道是可以包着一堆内容的东西就行,在思源里,主要就是 列表、列表项、超级块、引述块。
思源在这方面,一开始是借鉴的老大哥 RoamResearch 的做法。如果列表项只有 传递型块引
,在反链面板中,就像下图所示。
除了上面这种情况以外,其他所有情况,都只能展示孤零零的 块引
。你可以在下图最右侧的反链面板中看到,除了上图以外,其他情况都只有一个孤零零的块引 [[foo]]
。
更多的展示细节,可以参考我之前写过的内容:关于反链统一传递型块引展示效果——你最需要的反链面板展示效果 - 链滴
在思源笔记 v3.1.20 版本发布后,现在你可以在列表项、超级块、引述块中任意位置增加 块引
,从而将你想要的内容传递给对应的主题。(右侧为 foo 的反链面板)
而我平时,就是这样对内容进行标记的。不过 v3.1.20 版本以前,像下面这样写完以后,还需要手动移动到列表项的最前面,但是现在可以随便写了。
三、思源笔记里使用块引的技巧
关于块引,还有一些使用上的细节,这里单独说明一下:
1、只有传递型块引需要手动标记
思源有提及功能,所有 关联型块引
,可以考提及功能进行传递。
就像我这篇文章开头写的 想法
,就能在 [[想法]]
这篇文档的提及中展示出来。
所以这种文字没有一点变化的地方,完全不需要再花功夫转换成 关联型块引
。
2、为块引设置合适的别名
这个操作不仅可以让提及自动命中一个主题的不同写法。 比如下面两张图,就是我给想法设置了 xiangfa
这个拼音别名,在提及中,也能展示只写了 xiangfa
这个拼音的块。
还可以让我们方便地创建传递型块引。
首先是因为我们大多数时候都是用的输入法,同样的拼音打出来的词不一定是我们想要的,但是直接回车,一定是你输入的字母。用这种方法,能够省去一定的时间去找对应的词。
像我在使用 [[经验 | 思源笔记]] 时,就不需要来回切换输入法,只需要输入 [[jingyansi
,敲两次回车,就能绑定好。
我是为了准确性,所以一般都是在别名里写上全拼,你可以按照你的习惯和具体情况,增加拼音缩写之类的别名。别名没有限制数量,你完全可以一次性绑定多个。
PS:这里不得不提一下,命名就做不到。并且命名也会影响文档的展示结果。感兴趣的可以自己试一试。
与拼音缩写类似,你也可以绑定英文缩写,比如我的极简化前端叫 sfe,我的极简化学习叫 sstudy。
比如我的叶归插件,有下面这些别名。
3、建议使用列表进行内容传递
在思源里,你可以用列表项、超级块、引述块来包裹一系列的内容。
我就一直用列表来传递一系列的内容,前面你已经看到过了。
这里说说几个建议:
-
引述块有自己的含义,代表引用的内容。
所以我一般不用引述块来传递内容。
-
超级块创建不方便
如果要创建列表,直接输入
-空格
就能得到。但是超级块至少需要创建两个段落、选中、合并成超级块。相比列表,麻烦许多。大多数人不喜欢用列表,也只是因为前面多了小圆点。
但是使用列表,你可以使用
重复拖拽
的功能,快速创建一个备份,接着只需要shift + tab
,整个列表就展开成正文了。 -
使用列表时,不一定需要作为子列表
由于有 RR 和 logseq 这些大纲笔记作为先辈,很多人看到的文章,都是推荐用下面的写法。
我是觉得这种写法样式不好看,尤其是像下面这样,我明明是一个整体的内容,总不能让我用一个子列表再进行分割。
记住一点,传递型块引是为了传递一整个容器块。 使用子列表没什么问题,但是你没必要为了用而用。除非你本身就为了一次性传递一堆想法。
比如下面这种情况,反复输入块引,也是一件很麻烦的事情
4、组合优于继承
在前面的截图中,你可以看到我使用了 [[经验]] [[VSCode]]
、[[经验]] [[前端]]
这种组合的方式,而不是使用 [[前端经验]]
或者 #经验/前端
、#前端/经验
这样的方式。
就拿我写的这些举例,vscode
的经验是 经验
,前端
的经验也是 经验
,现在你想看到你所有的经验,如果你使用 [[前端经验]]
或者 #经验/前端
、#前端/经验
这种形式,如何规划你的标签结构呢?
而且,使用组合的方式,遇到 经验
的内容时,你只需要写下 [[经验]]
,未来可以在这个主题的反链中看到所有的内容,你可以再进一步细分。这个时候,你只需要再加上 [[前端]]
、[[VSCode]]
这样新的块引就可以了。对于整个内容来说,只有新增,没有修改。
甚至,由于思源的每个段落块都有自己的创建时间和修改时间,对于下面这样的内容,通过右上角的时间,我就知道是 2024/12/29 卖出的,2025/01/03 结算完的。
至于我为什么这么关注时间,这就不得不提 LifeLog 了,这是另一个话题,下次再聊。
四、反链内容的整理
标签、块引,实际上就是一种关于查询的预设。通过预先标记内容,从而在未来查询时,能够按照预设的逻辑,快速查询出想要的结果。
关于反链的整理,logseq 底部反链的查询逻辑就挺不错的,能够根据层级结构进行筛选。也就是通过组合标签,查出包括某些或不包括某些块引的内容。
这部分,在叶归插件里已经实现了一些效果,并且 反链过滤面板
这个插件也挺不错的。目前叶归插件的效果我个人也不满意,不过新版本已经在路上了。
关于反链的整理,届时使用叶归插件的底部反链功能以及其中的白板功能,应该可以满足绝大多数需求。
结语
关于块引,想说的就这么多了,除了整理这部分,基本上现在的思源都已经做得足够好了。
那么,咱们回见。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于