V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gzhjj
V2EX  ›  问与答

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

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

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

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

    tar 有一个致命缺点,就是所有文件都是按照顺序一个个来的,无法从中间读区。
    gzhjj
        6
    gzhjj  
    OP
       2023-12-16 15:20:02 +08:00 via Android
    @Immemorial 这个看来合意。至于有没有压缩倒不是最重要的
    tutudou
        7
    tutudou  
       2023-12-16 18:34:45 +08:00
    之所以不这样做,是为了兼容性吧,可以方便的用记事本打开,其实不使用压缩直接使用 json 格式的文本也能很好的保存数据。
    jifengg
        8
    jifengg  
       2023-12-18 09:03:48 +08:00
    前段时间研究了一下 epub 格式,本质上是一个 html+各种资源 的 zip 包。这个也可以考虑考虑。就是如果要兼容.md 的话可能需要自己处理一下。但是如果直接用 html 的话,各种富文本编辑器都可以直接用。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2547 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 03:14 · PVG 11:14 · LAX 19:14 · JFK 22:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.