使用 tar 作为笔记的存储格式是否可行?

2023-12-15 23:16:46 +08:00
 gzhjj
都知道 obsidian 是大热,但 markdown 本身是文本格式,插入表格图片甚至别的私有格式都要走曲线救国(外链、BASE64 、诸如此类)。那么有没有可能改造一下:笔记改为使用 tar 格式保存,里面必存在一个 markdown 主文件。笔记软件打开笔记进行编辑时实际是编辑 tar 里的 md 主文件,当 md 主文件需要插入图片/表格/任何二进制数据时,便在 tar 里生成并插入数据文件,且体现为 md 里的一个链接。
能想到的好处是,tar 文件是一个开放的格式,主文件 markdown 也是一个开放的格式,但插入 tar 并链接到 md 的其它文件则随心所欲可以是任意格式、任意扩展名、也不论开闭源。
而能想到的坏处是,这样 tar 笔记文件就不能像 md 一样用任何一款文本处理软件来打开了(至少要先经过一道 tar 解压处理)。
这思路有点像 mht 文件格式。
1423 次点击
所在节点    问与答
8 条回复
explorerproxy
2023-12-15 23:25:28 +08:00
印象里以前 wiz 笔记就是这种形式
felix0012
2023-12-16 07:41:26 +08:00
这不巧了嘛,docx 也是个压缩包。包里面甚至能找到文件中的图片等资源
julyclyde
2023-12-16 09:55:06 +08:00
tar 本身其实存在一些缺陷
多个文件在 archive 里是链表结构,没有主目录可供 seek
如果 tar 外边再套一层压缩的话,则连链表本身都需要整体解压缩之后才能得到
效率是比较低的

建议考虑一下 zip
Immemorial
2023-12-16 09:57:23 +08:00
有这样一个格式标准,已经被不少软件用了有几年了,标准的网址是: https://textbundle.org/

本质应该是个 ZIP 压缩包
hamsterbase
2023-12-16 11:45:53 +08:00
tar 不行。zip 可以。

tar 有一个致命缺点,就是所有文件都是按照顺序一个个来的,无法从中间读区。
gzhjj
2023-12-16 15:20:02 +08:00
@Immemorial 这个看来合意。至于有没有压缩倒不是最重要的
tutudou
2023-12-16 18:34:45 +08:00
之所以不这样做,是为了兼容性吧,可以方便的用记事本打开,其实不使用压缩直接使用 json 格式的文本也能很好的保存数据。
jifengg
2023-12-18 09:03:48 +08:00
前段时间研究了一下 epub 格式,本质上是一个 html+各种资源 的 zip 包。这个也可以考虑考虑。就是如果要兼容.md 的话可能需要自己处理一下。但是如果直接用 html 的话,各种富文本编辑器都可以直接用。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1000826

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX