思源笔记

4,312 阅读9分钟

我正在参与掘金新人创作活动,一起开启写作之路。

思源笔记教程简介

于思源笔记实在没有教程,我结合个人使用中的思考,简单介绍下思源笔记。

什么是思源笔记

思源官方文档的描述是

思源笔记是一款块级引用和双向链接的线性笔记+网状笔记应用,支持markdown所见即所得,支持 Windows、Mac 和 Linux,Android,可在浏览器上直接使用,支持移动端适配。主打本地化,数据自己掌控。

笔记记录方法

思源笔记更像是传统笔记大纲笔记的融合,思源笔记保留了文件夹式的管理方式以及线性文本的记录方式,同时也引入了类似Roam Research大纲笔记的概念及记录方法。

利用思源实现纯大纲笔记的记录模式

用过RR、RE、logseq等纯大纲笔记的人直接上手思源笔记会很不习惯,因为大纲笔记在编辑体验上确实很容易上手,RR类的纯大纲笔记,强调的是记录时的随意性,不用有太多的负担。

在思源里面,可以用无序列表实现大纲笔记的记录方法。思源笔记新版编辑器已经支持了列表大纲,拖动折叠,内容块聚焦这些均支持。

  • Roam类笔记
    • 日记模式
      • 利用模板实现自动汇总
      • 结合标签和动态查询来实现
      • 结合块引用,先把要汇总的的page新建好,然后复制块引用到模板中
    • 汇总通过自动的反向链接实现

书签、标签

思源笔记的核心是内容块,所以标签功能也是“块级”的。使用#tag#来实现。

前几个版本因为部分用户的建议,标签改成了按层级显示,带来了层级地狱的体验,劝退了不少人,这个版本又改回了平铺显示,体验好了太多了。

官方文档的介绍:

标签

标签用于在内容块中对该块进行标记。语法是通过一前一后两个 # 将标签标识包裹起来,像这样 #标签#

标签支持层级,这样可以更方便地对内容块进行分类整理。不同层级之间使用 / 分隔,像这样 #A/B/C#

所有打过标签的内容块会在标签页签( / )中列出。如果需要取消标签,在内容块中删掉该标签即可。

标签和书签面板在左下角

鼠标放置在内容块标识上,可以预览内容块。

标签页的汇总功能:可以将某个标签单独汇总到一个页面查看,这个是通过单击标签来实现的。

反链、提及

反链和提及功能可以说是双链笔记最核心的功能之一了,通过右侧面板的自动显示反链和提及,能够帮助我们更快的进行思考和知识间的关联。

反向链接

反向链接是文档级的,列出当前文档中内容块被引用和被提及所在的块。

链接

  • 单击反链列表中的引用块会在当前文档中高亮定义块
  • 光标所在当前文档中定义块会在反链列表中高亮引用块(如果存在引用的话)
  • 鼠标悬浮反链列表中引用块前面的标识进行内容预览
  • 双击反链列表中的引用块进行跳转

提及

提及使用当前文档中内容块名称、命名别名作为关键字进行搜索,搜索结果为包含这些关键字的内容块。

可以通过链接按钮将提及转换为链接:提及处会使用 ((id "内容块名称")) 进行替换。

思源中的反链目前还是按照层级来显示的,目测慢慢会结合或者改成平铺展示。在社区集市里面也有用sql写的提及和反链的功能模板,也可以结合使用:

块折叠、块拖动

在思源里,任何内容块都可以折叠,块折叠的快捷键是Alt+V/Alt+click,目前这个功能体验很棒。

拖动目前不是很丝滑,需要继续优化。

模板

思源笔记里面有一套模板功能,我用的是github模板仓库,在思源的社区集市也可以看到。

使用方法:在文档中任意位置使用/即可快速插入模板;日记模板 可以在设置中更改配置,修改默认模板路径

我的日记模板设置,可以参考下:

放几个动图,就不仔细介绍了

日记功能alt+5打开,或者左上角打开

建议大家可以根据已有的"模板",定制自己的模板。

命名、别名、备注

使用shift+click可以快速添加命名

命名和备注

我们可以为每个内容块命名、添加别名和备注。命名和别名主要用于反链((20210106201736-oyu11fw "提及"))搜索,备注用于记录一些不便在内容区中出现的信息。

在设置 - 编辑器中打开显示书签、命名、别名标识选项后,被命名的内容块在编辑器中会被加上外框显示。如果对文档块进行命名和备注,则当鼠标悬浮文件树文档上时将浮出该文档的相关命名和备注信息。

可使用((20201117101902-2ewjjum "内容块动态查询"))对命名和备注进行搜索汇总,比如列出备注中包含 简短 关键字的内容块:

内容块动态查询

直接看官方教程,写的很详细。这个功能非常灵活方便,但是需要几分钟学习一下。

语法

内容块动态查询主要用于汇总所需内容块,使用的方式几乎和搜索一样,支持文本模式和 SQL 模式。通过 {{}} 将文本表达式或者 SQL 脚本包裹起来并独占一行即可:

  • 使用文本模式:{{ 内容块 }}
  • 使用 SQL 模式:{{ SELECT * FROM blocks WHERE content LIKE '%内容块%' }}

示例

  • 查询内容中同时包含 内容块嵌入 的标题块并按时间降序结果取前 2 条:
{{ SELECT * FROM blocks WHERE (content LIKE '%内容块%' AND content LIKE '%嵌入%') AND type = 'h' ORDER BY block_id DESC LIMIT 2 }}

手机伺服

基于云的笔记之所以很方便,是因为数据都在云端。但是云服务的便利性和笔记的隐私性是个矛盾的事情。要知道,对于一般的笔记厂商,程序员或者管理员是有权限读取用户数据的,不保证你的笔记就被人盯上了。不提供离线使用的笔记应用都是耍流氓。

特别重要的东西,比如密码什么的,尽量本地加密存储,想要绝对的隐私就不要使用云服务。

那么对于一些隐私性中等的笔记来说,我们想方便的多端使用怎么办?建议有能力的就自己搭服务器,或者简单方便点用思源官方的云服务(付费特性)。目前思源只提供4g(现在已升级到了8G)的存储空间,那问题来了,云空间用完了怎么办(图片或者附件很多)?思源开发者D大给出了颠覆性的想法,手机伺服

这个理念真的是颠覆性的(狠起来连自己都打系列,因为思源官方的云服务也用不着了),因为手机的性能比起一般的云服务器真的是好太多了,而且能够随身携带,用的时候打开手机,用完退出,也不怎么耗电。

以后记笔记的场景可能就变成了,随手找到一台电脑,让手机和电脑同一个局域网,使用电脑浏览器访问手机ip:6806,就能愉快的记笔记了。

块引用和块嵌入

作为双链笔记的核心概念,思源这部分体验也不错, 对中文也做了优化,支持【【、[[、((

内容块引用

输入 (( 后将触发内容块引用搜索,继续输入作为搜索关键字,在搜索结果中使用上下键选定后回车就可以完成内容块的引用了。

注意:不支持跨笔记本引用。

内容块引用的完整语法是:((id "text")),其中 id 形如: 202008250000-a1b2c3d,由时间和 7 位随机字符组成,内容块 id 是在创建内容块时就会自动生成的;后面的 text 是在引用处对该内容块的自定义((20201123092030-1rqe6wr "锚文本"))。建立好内容块引用后,鼠标悬浮在锚文本上后将弹出预览浮层,展现被引用的内容块。#内容块/引用#

内容块嵌入

在新一行的开始处输入 {{id}} 后将触发内容块嵌入搜索,和内容块引用一样,在搜索结果中选择需要的内容块就可以完成嵌入了,同样支持自定义 text ((20201123092030-1rqe6wr "锚文本"))。嵌入操作完成后下方将直接展现被嵌入的内容块。#内容块/嵌入#

#注意#:内容块嵌入本身也是一种内容块,这意味着我们不能在一句话中间使用内容块嵌入,只能在新行开始处进行嵌入操作。下面是一个内容块嵌入的示例:

标题块与文档块互转

思源笔记牛逼之处在于转换后原有的引用关系不会失效,这个特性的实现让思源笔记的灵活性直接上升了一个档次,远远甩开了ob。

利用这个特性,可以让知识自由重组,长文档进行拆分,或者进行短文档的组合,知识输出。

多端同步使用

如果使用云服务的话,目前只有加密备份功能。这个是付费特性,原本只有4G。官方已经扩容到了8G。

如果是手机伺服的话,那么可以考虑利用小米云、华为云等进行备份。同步的话推荐坚果云、微力同步等。

我的思源笔记推荐码:VVIrKKK。

订阅(升级为会员)时,输入上面的推荐码,就可以获得500M的云端空间和再加7天的使用时间。