1. 前言
去年初入了思源笔记的坑,使用一年体验十分优秀,基本上满足了我对知识库、笔记库的所有诉求。本地优先、优秀的编辑器、强大的扩展性和简单的同步方案,再配合上发展迅速的插件系统,已经有了相当流畅的使用体验。
今年年初突然重拾文青博客梦,立下了周更的 flag,在前两周实践的过程中,我发现了两个问题:
- 集中在周日去写当周的周刊会有些吃力,记忆力的确是一日不如一日。
- 多平台发布会有一定的迁移和维护成本。
因此,本着理科男能偷懒则偷偷懒的终级理念,基于思源笔记和现有的插件系统,初步解决了这两个问题,再加上能沉淀则沉淀的思路,春节期间理了一下现在的写作流程,希望能给小伙伴一些思路,更好的使用这个强大的工具。
2. 架构总览图
二话不说,被我司培训一年,上来不画两张麻将图怎么行。
2.1 数据架构图
数据架构图主要用来说明笔记/信息的来源、输入和输出之间的关系,体现信息流向和处理规则。
我日常的信息输入主要分为个人原创内容、第三方网页和个人标注内容:
- 个人原创内容:主要记录日常的想法、事实、感受、闲言碎语,也会用于快速收集一些周刊相关的素材。
- 第三方网页:一些感兴趣或有相关的知识的网页。
- 个人标注内容:主要是我日常使用 kindle 读书的时候做的一些书摘标注,通过纸间书摘统一管理。
原始素材的采集输入,按照是否碎片化采用不同的记录方式,碎片内容(非体系化的文档)直接记录在当日的 DailyNotes 中,通过双链传递,日后使用的时候,在对应的领域/专题文档的反链面板即可看到,润色、修改、重新改写都可以快速处理。非碎片化内容直接记录在领域或专题的文档中。
写作过程中,直接新建主题文章的文档,在新文档中将大纲列好,之后通过反链面板和提及功能,将前期整理的素材、相关文档进行重组、合并、改写、润色。
2.2 应用架构图
应用架构图主要用于描述软件应用程序的结构和组件以及它们之间的相互关系,说明承载数据架构图中涉及信息流的工具和实体。
首先对架构图中涉及到的工具简单介绍:
思源笔记:
- 思源笔记在本文(我目前的写作工具流)中,是一个承前启后的关键存在。类似于大数据架构中的数据仓库,存储原始的输入,基于双链进行各主题素材的笔记重组与合并,基于素材进行领域写作与润色加工,最终作为统一输出口对接各种发布平台。
采集工具
Memos:
- Memos 是一个源端输入,主要用于收集个人原创素材,包含但不限于个人日记、感受、想法、事实、流水账等,使用 Memos 的原因是数据在自己手上,无需有隐私、安全方面的担心,有较大的自主权,不会被各种莫名其妙的原因触发删除。
- 通过 memos,可以在网页、手机 app、tg 机器人、浏览器插件快速收集内容。
思源小助手:思源会员特性,可以在微信快速将数据收集至思源笔记的收集箱,后期可以快速的从收集箱移动至笔记本中。小助手最大的优势是可以微信内容一键转发,并且支持将接受到的网址进行剪藏,配合思源的“下载网络图片至本地功能”,可以在手机端方便的将网页内容剪藏至本地。
-
-
- 浏览器插件:这是一个集合,包括 Siyuan、WebClipper、五彩助手(思源已有同步插件)、剪悦等等,主要用于将网页剪藏,避免 404 风险。
纸间书摘:一个优秀的阅读管理软件,有一揽子阅读管理相关的功能,我主要用于管理 kindle 阅读的标注,官方提供了导出至思源笔记的功能,导出的效果极优秀。
-
存储工具
minio
- minio 的作用是为发布平台提供图床,配合思源的发布插件可以实现一处写作,多处发布。
- minio 的搭建可参考:云远程对象存储-MinIO 服务部署 - XueZhao 的博客 。
- 思源 Assets:思源笔记自带的存储功能,“本地优先”的保证,所有的插入的附件都会在 Assets 中保存一份。
思源插件
发布工具插件
思源的一款插件,可以快速将思源本地的文章统一分发到不同的平台,并且可以配合 PIGCO 插件生成本地图片到图床的映射,实现“本地使用本地图片、发布使用图床”的理想搭配。
-
-
-
PIGCO 插件
思源的一款插件,可以配置图床,与发布工具搭配使用体验极佳。
-
- Memos 同步插件:Memos 同步插件是用于将自部署的 Memos 内容同步至思源笔记,它支持识别双链,通过打上(())的标识,可以实现关联已有的文档、新建不存在的文档。
typecho、知乎、语雀、微信公众号等
- 作为最终对外提供输出服务的出口。
通过应用架构图和工具介绍,可以说明这套本地写作的两个优点:
数据安全:
- 所有的内容和数据都在本地,配合思源的快照功能和多端同步功能,可以有相当强的容灾能力,并且有端到端加密的同步数据,隐私也无需担心。
- 本地文章使用本地图片,发布使用图床图片,实现了一个理想的搭配。
统一出口,减少烟囱:多平台发布的一大难点就是难以维护
- 多处编辑,分散发布,耗费相当大的精力,且维护困难,需要一处一处修改、订正
一处编辑,同时发布,后期的修改也在原本的文档基础上进行多平台更新
3. 周刊的半自动化写作发布实践
周刊是我本年初立的一个 FLAG,与月总结相比,更注重生活的记录,包含小想法、感受、值得分享的学习内容、值得记录的生活趣事。在最初的写作过程中,我集中在周日花两个小时去回忆、书写本周周刊,但很快我就发现,有点煎熬。一是太考验记忆力了,需要慢慢回顾一周的事情,很容易遗忘。二是事后记录其实会遗忘当时的一些想法,失去了“记录”和分享本身,变成了总结。于是我基于思源笔记把这件事情拆解为两件事情:
- 日常周刊相关内容的收集
- 周日的重组、合并、改写、润色
3.1 收集、写作和分发流程
我采用 Memos 来进行周刊内容的收集,我会在有想法的瞬间通过手机应用、浏览器插件或者网页写下一小段内容,并且通过在开头增加((周刊))的标志来区分,这个标志可以在同步到思源的时候自动新建文档:周刊,然后将本段内容记录在当日的 DailyNotes 中,增加双链:
在每天晚上我会在思源内部(手机 APP/PC 客户端/docker 版),点击 Memos 同步,最终获得以下效果:
此时周刊页面中,反链面板可以看到所有的相关内容。通过思源的反链相关操作进行内容的组织和润色改写。我通常是复制过来直接更改,不必担心 DailyNotes 中留存双链文本的污染,下文的操作会解决这个问题。
- tips1:可以在文档属性面板添加书签“写作中”,快速管理目前的写作文档
tips2:通过添加以下代码为模板,可以快速插入下图中“2024-02 Week 7”的标题,摘抄自集市中的模板
.action{ $anchorSunday := "2022-12-25" } .action{ $yearStartDate := now.Year | printf "%d-01-01" | toDate "2006-01-02" } .action{ $ysDateDuration := div ($yearStartDate.Sub (toDate "2006-01-02" $anchorSunday)).Hours 24 } .action{ $ysWeekDay := mod $ysDateDuration 7 } .action{ $yearStartWeek := add (div (sub $ysDateDuration 1) 7) 1 } .action{ if or (eq $ysWeekDay 0) (gt $ysWeekDay 4) } .action{ $yearStartWeek := add $yearStartWeek 1 } .action{ end } .action{ $nowWeek := add (div (div (now.Sub (toDate "2006-01-02" $anchorSunday)).Hours 24) 7) 1 } .action{ $week := add (sub $nowWeek $yearStartWeek) 1 } .action{$today:= (now | date "2006-01")} .action{$weekResult:= (list $today "Week" $week| join " ")} 📅.action{$weekResult}
-
-
改写完成后,剪切第 3 步中生成的标题作为文档标题,通过发布插件进行发布。此时 DailyNotes 中留存的双链动态锚文本会自动变为更改后的标题,在新的一周的周刊收集时,又会生成新的《周刊》文档,此时的反链只会有与本周相关的内容,不受其他双链的污染。
-
最终效果:02.春节返程与阅读感悟 - XueZhao 的博客
14 条评论
一直对数据库型的笔记软件没什么好感,因为这种软件因为数据库关系,同步上非常不透明且不可控。像obsidian,这种文档型的,我要同步什么,都是透明可控的,完全可以用git+github这种免费方案进行同步,而数据库型的笔记软件要做到这点非常困难。虽然思源折腾下,也能用git+gitub进行同步,但同步整个过程是不透明的不可控的,因为它底层的保存方式非文档型,所以这堆数据对于用户而言是“不可见”,不知道那些sy文件是哪部分内容的数据。而且因为数据的特有性,用户会被“捆绑”在笔记软件上,而非像文档型笔记软件那样,可以跨工具使用,obsidian上写的md文件能在typora上继续写,甚至我用普通的文本编辑器也能写。像思源、Logseq、anytype这种这种数据库型的笔记软件,其实就是上古神器mybase的进化版而已,只适合干“收集器”的活。
这个不太敢苟同。除非你的ob对于插件和非md语法用的极其克制,不然也没办法用其他软件无障碍的编辑,换句话说不只被捆绑在软件上,还被捆绑在一大堆难以保证后续更新的第三方插件上。其余就仁者见仁,智者见智了。
克制不克制那是个人使用原因,有人只用原生的,什么插件都不装,生用,没问题,有人就喜欢折腾,也可以。而且,宽容点格局大点说,你不把插件都玩一遍如何叫人克制。
而我个人在插件选择上,我只选择辅助性的插件,像什么git、floating-top什么的,我连ob的内置功能白板都不用,我够克制了吧。因为在我看来这些功能或超出md编辑之外的插件,会让我被捆绑在ob上,这不符合我使用的初衷。
最早用ob,我只把它当成一个md文档管理器或markdown预览器而用,原来这个任务是交给typora的,不过后来typora收费了,我得找个平替产品,因为我那时是用vim来编写markdown的(我不用vscode来写md,那是因为我觉得那货有点“笨重”,而且我觉得写点markdown文档,也开vscode,就是大材小用,杀鸡用牛刀;至于sublime,收费,当时懒得到破解--后来发现gist上有,哈哈,不过当时sublime旧的vim插件比不上vscode上的vim插件,所以也没选sublime。至于为什么也没选VNote,同样觉得这货也有点笨重,而且长得丑,它的宣传点是vim风格的markdown编辑器--那为什么不直接用vim),后来发现ob竟然支持vim操作,虽然比不上vscode中的vim插件和vnote,但对于日常使用够了,用着用着才逐渐将其当成主力笔记编辑器。因为可能我有点强迫症,我必须让md文档在github上正常显示,而基于这点,我在使用非md语法时,也极度小心,大概我只用到callout--事实上github也支持小部分的callout语法,不过没ob的callout这么丰富。
ob强于其他数据库型笔记软件的地方,不在插件,不在颜值,也不在其使用纯markdown文件,而在于它的编辑输入的流畅性。因为它基于markdown文件,所以对它的编辑就只一个纯的文本文件编辑,没有什么“块”、“对象”狗X的概念,所以天生在输入这块有着天然优势,再加上它的vim模式,也使用输入流畅性大大增强,配合一点快捷键,在文本编辑上,什么思源、logseq,都不知道被甩几条街。--那些没用过vim的人,可能很难理解,编辑输入的流畅性对于程序员或者需要大量输入的人来说,是多么的重要。那些数据型的笔记软件弄出的各种在我看来花里胡哨的概念(说它们花里胡哨,那是我早年用过mybase,所以我这么这类型的笔记软件是什么个货色,这类型笔记软件,只能充当"原材料收集器"这么一个角色,要成为编辑为主导的笔记软件,那是永远不可能的事),反倒成为输入的阻碍。
至于其他方面,不说别的,就软件本身设置细节上,思源和Logseq跟ob相比就有明显差距。随便举个例子,就字体设置。ob的字体设置分成界面字体、正文字体、代码字体;思源就只有一个字体设置,只针对编辑区的字体设置,非常的“简洁”;logseq更惨,还得自己写css,一个有GUI界面的编辑器,连字体设置都不给个相应的GUI,这产品设计简直就是反人类!窥一斑而见全豹,就思源、logseq这些笔记软件,跟ob就不在一个档上。
总而言之,纯文档的笔记软件,在入门上,无论是程序员还是普通用户,要比其他数据库型的笔记软件,更为友善--当然,有人会不同意,会说它功能会被限制,会显得很“简陋”。普通人知道什么是数据库吗,还“块”,扯蛋,而且还没法直观知道底层如何保存的,而纯md,用户可以非常直观透明知道,存了哪些文件,存在哪,增删改查,用户能直接上手操作。至于同步,官方同步,大家半斤八两,而如果使用git+github,那纯文档的ob明显优势不是一点半点。
很有指导性的文章,感谢
不客气,很荣幸能有帮助~
[...]1.前言本文是基于思源笔记的写作、管理和分发流程 - 海拉鲁打怪日记 (xuezhao.space)的子文章,基于本人的个人写作流程中的阅读一环的详细介绍。围绕个人习惯的阅读流程沉淀下来,抛砖引玉,供各位参考和讨论~本文首发于个人博客基于 Kindle、纸间书摘、思源笔记的全平台同步阅读及闪卡流程 - 海拉鲁打怪日记 (xuezhao.space),同步发布于链滴、知乎、少数派等。2.阅读是一座避[...]
[...]1.前言本文是基于思源笔记的写作、管理和分发流程 - 海拉鲁打怪日记 (xuezhao.space)的子文章,基于本人的个人写作流程中的阅读一环的详细介绍。围绕个人习惯的阅读流程沉淀下来,抛砖引玉,供各位参考和讨论~本文首发于个人博客基于 Kindle、纸间书摘、思源笔记的全平台同步阅读及闪卡流程 - 海拉鲁打怪日记 (xuezhao.space),同步发布于链滴、知乎、少数派等。2.阅读是一座避[...]
[...]1.前言本文是基于思源笔记的写作、管理和分发流程 - 海拉鲁打怪日记 (xuezhao.space)的子文章,基于本人的个人写作流程中的阅读一环的详细介绍。围绕个人习惯的阅读流程沉淀下来,抛砖引玉,供各位参考和讨论~本文首发于个人博客基于 Kindle、纸间书摘、思源笔记的全平台同步阅读及闪卡流程 - 海拉鲁打怪日记 (xuezhao.space),同步发布于链滴、知乎、少数派等。2.阅读是一座避[...]
[...]1.前言本文是基于思源笔记的写作、管理和分发流程 - 海拉鲁打怪日记 (xuezhao.space)的子文章,基于本人的个人写作流程中的阅读一环的详细介绍。围绕个人习惯的阅读流程沉淀下来,抛砖引玉,供各位参考和讨论~本文首发于个人博客基于 Kindle、纸间书摘、思源笔记的全平台同步阅读及闪卡流程 - 海拉鲁打怪日记 (xuezhao.space),同步发布于链滴、知乎、少数派等。2.阅读是一座避[...]
[...]基于Kindle、纸间书摘、思源笔记的全平台同步阅读及闪卡流程前言本文是基于思源笔记的写作、管理和分发流程 - 海拉鲁打怪日记 (xuezhao.space)的子文章,基于本人的个人写作流程中的阅读一环的详细介绍。围绕个人习惯的阅读流程沉淀下来,抛砖引玉,供各位参考和讨论~本文首发于个人博客,同步发布于链滴、知乎、少数派等。阅读是一座避难所在我小的时候,读书是一件奢侈的事情。我在农村里读的小学[...]
[...]基于Kindle、纸间书摘、思源笔记的全平台同步阅读及闪卡流程前言本文是基于思源笔记的写作、管理和分发流程 - 海拉鲁打怪日记 (xuezhao.space)的子文章,基于本人的个人写作流程中的阅读一环的详细介绍。围绕个人习惯的阅读流程沉淀下来,抛砖引玉,供各位参考和讨论~本文首发于个人博客,同步发布于链滴、知乎、少数派等。阅读是一座避难所在我小的时候,读书是一件奢侈的事情。我在农村里读的小学[...]
[...]基于思源笔记的写作、管理和分发流程 - XueZhao 的博客[...]
[...]基于思源笔记的写作、管理和分发流程 - XueZhao 的博客[...]
[...]经历了 2023 年的跳槽、换城市、婚礼这些大事之后,本年度的个人主旋律是:保持健身、重拾写作与阅读、突破自我、持续学习。1. 年度目标与达成情况概览主键目标描述目标达成情况健身运动200次(力量训练、其他形式的运动)减脂8kg运动29次(力量训练23次,有氧6次)体重下降1.4kg(70.15kg→68.75kg) 写作周刊50篇技术5篇周刊4篇技术1篇写作流分享1篇||阅读|阅读20本书籍|2[...]