外观
笔记软件推荐:给开发者的笔记利器Obsidian
大家好,我是李述铜,一名专注于嵌入式系统与底层开发的工程师,我的主要工作是制作课程带大家从零手写操作系统、TCP/IP协议栈、文件系统等核心系统,从实现的视角理解计算机底层原理。
放弃使用印象笔记
最近这段时间,我把自己多年积累的笔记全部从印象笔记迁移到了Obsidian。 做这个决定主要原因在于:我同时在用印象笔记和语雀,而且都开了会员;因此,不想在笔记软件上花两份钱。
其次,印象笔记使用其它还有一些不好的地方:
- 会员到期之后,很多功能受限: 比如每个月只有很少的流量上传笔记数据。网页端无法打开笔记,我不得不怀疑浏览器端是否不再维护了
- 经常出现各种广告: 既便我已经充值了会员也会提示
- 不支持树形结构: 这应该是多年的老问题,不知道印象笔记为什么至今还固执地坚持着原来的笔记组织形式。
- 数据导出不方便,迁移成本太高。
数据导出的问题
一旦决定了放弃使用印象笔记,接下来发现最让人头疼的问题便是数据的导入和导出。
笔记厂商软件为了留存客户,并不轻易地支持用户导出笔记。比如,在Mac系统上的印象笔记软件,并不支持直接导出整个笔记本,而只能一条条的导出每条笔记。我总共有数千条笔记,如果要一条条导出,这个工作量将非常巨大。

后面,我在Windows上装了老版本的印象笔记,才发现有支持批量导出笔记本下所有笔记的功能,这才将所有笔记导出。
此外,笔记导出时仅支持HTML格式,这种格式不一定能被其它笔记软件导入和正确加载。也就是说,无法实现在不同的笔记软件之间数据的完美迁移。
通常来说,笔记是要多年甚至十几年持续积累的内容。比如,我从刚毕业工作时就开始使用印象笔记,至今已经约十五年。在该软件中,我写下了大量关于工作和生活相关的记录。
这些笔记数据应当真正掌握在自己手里,不能依赖于笔记软件商。否则,一旦软件本身发生变化,我将付出巨大的成本。
正是基于这个想法,我开始寻找替代方案。这种方案应当符合:格式开放、不依赖会员、不会被锁定、可以在各种平台上通用。
选择obsidian
在比较了市场上的一些主流笔记软件后,我发现obsidian比较适合。

(1)所有笔记都是 Markdown 纯文本
这是我选择Obsidian的核心原因。所有笔记都保存在本地文件夹里,以 .md 的形式存在。
使用Markdown纯文本会几个非常大的好处:
- 不绑定任何软件:即便以后不用Obsidian,也能用任何编辑器继续写,比如VSCode等。
- 迁移成本最低:复制文件夹即可
- 跨平台完全无障碍:越来越多的笔记软件支持导入Markdown,同时Obsidian本身也提供Windows/Mac等平台的版本
- 格式开放,未来几十年都能用
所以,相比印象笔记的HTML导出相比,这种方式更加清晰、可控、轻量。
(2)基础功能全部免费
Obsidian的基础功能全部免费。 不需要注册账号、 提供完整的Markdown支持、数据全部本地保存、不限制笔记和文件夹创建的数量。

当然,你也可以注册账号,然后支付一定的费用,用于使用更高级的功能,比如:在不同设备端同步、加密、将笔记发布到Web。
对于我这种只需要简单记下笔记的人来说,基础功能已经完全够用。
最关键的一点时,我不用被笔记软件“套牢”,随时可以把任何数量的笔记拷贝出去。
(3)插件生态非常成熟
即使你完全不装插件,只用最基础的Markdown,Obsidian仍然能满足大部分笔记需求。
但当你有更复杂的需求时,插件系统会发挥作用。比如可以安装插件支持以下功能:
- 代码高亮
- 思维导图
- 文档数据库
- 白板
- 手绘图
- 大纲管理
- 模板管理
这些插件可以直接从其插件市场中下载,不需要支付任何费用。

(4)数据同步可以自由选择
Obsidian默认不提供同步功能。如果想在不同的平台进行笔记同步,可以使用官方提供的服务器,这需要支付一定的费用。
**不过,由于笔记的开放性,我们可自由决定如何进行同步。**比如:
Git 同步
如果熟悉Git工具,可以创建一个Git仓库,然后把所有的笔记都放到里边。写完笔记之后,可以提交推送到Git远程服务器。然后,在其它平台再拉取下来。
不过,要注意的是,很多厂商提供的Git仓库有大小限制,比如GITHub只支持最大1GB。
如果觉得不够大,也可以自行购买服务器,搭建Git仓库。
云盘或NAS同步
如果笔记数量多、占用空间大,也可以购买云盘。将所有的笔记丢到云盘里,然后自动同步即可。
像我的话,自己在家里装了一台群晖NAS。用NAS来做同步,效果非常稳定。使用厂商提供的Synology Driver软件,可以在我写完笔记后将数据自动上传。

而且数据自动同步,无需人工干预、数据完全自己掌控,不受第三方限制、各个平台(电脑、手机)都能保持一致。
目前来说,使用NAS对我来说这是最理想的方案。
总结
目前,我对Obsidian的使用还停留在目前粗浅的层次,很多功能和插件还没有使用不。
不过,在将印象笔记全部导入到该软件中之后,我终于不用再担心数据迁移的问题。即便将来Obsidian软件下线了,我也可以直接使用VSCode+Markdown插件继续写笔记,没有其它任何成本。
如果你也经常写笔记、担心数据的安装,不妨也尝试使用下这款软件!
历史文章
- 作为嵌入式开发者,有必要手写一个RTOS吗
- 别再只用malloc了!嵌入式C的栈上动态数组分配:变长数组
- 告别固定大小:利用C语言伸缩型数组,实现动态结构体
- 写给嵌入式C程序员:我们为什么终于不用自己定义UINT8了
- C结构体的初始化你还在按顺序写?试试这个C99神操作!
- C语言居然也有布尔类型?!
- 介绍一个C语言编程技巧:处理超长字符串显示
课程推荐
作者介绍
李述铜,嵌入式系统与底层架构领域讲师,专注于操作系统、CPU 架构的教学与研究。 出版作品《从0手写x86计算机操作系统》。主讲课程包括:《从0手写嵌入式操作系统》《从0手写TCP/IP协议栈》等。
欢迎关注我的微信公众号【李述铜的嵌入式内功修炼】,以便及时获取我的更多文章!-> lishutong1024.cn
