【共同探讨】移动块 / 反链 / 快速无压记录 / 标签

1、【bug】把一个被引用的块拖动到另一个文件里,虽然引用关系还在,但是反链里手动刷新看不到结果,需要重启

2、用剪切粘贴的方式来跨文件移动块是最方便的,但是引用关系会丢失,分屏拖动的方式有点不方便,而且这种拖动对多个块的情形不太友好,需要一个个拖动

3、「把内容从反链区移到正文」是 Conor 式的双链笔记流程中非常重要的一步,虽然思源可以靠浮窗编辑反链的内容,但是因为 2 的原因让这一步不是很方便

roam research 作者 Conor 预设的双链使用流程大概是这样,这是 daily notes 中的记录:

image.png

logseq/资料 这个页面中,可以直接从反链里把这一坨内容全部拖到正文里慢慢组织:

image.png

思源的列表块在侧栏反链里只展示段落块,配合不了这个工作流。靠 SQL 呈现的反链对于列表块也会有类型重复。所以标题块比列表块适合这个场景,但是如果想把反链的标题块移到正文里,会遇到两个问题,首先是 2 里提到的批量剪切会导致引用关系丢失,其次是对标题块做的一些单独处理在浮窗里好像失效了,在我这里不能把浮窗里的标题块转换成文档,可能是 bug。

因为上面这些原因,思源不能完全复刻大纲双链笔记那种流畅无压的 daily notes 记录流程,如果要改进,也要配合软件架构,所以我也不好说具体可以怎么改进

4、因为反链的可操作性跟大纲型的软件存在较大差距,想要快速无压记录的话就会想到在 daily notes 里用井号标签。

改进标签的用户声音一直都有,现在也有了 #2431 文档块支持标签的计划,但是我感觉光把标签看做标签是没法彻底改进标签的。标签的问题和反链的问题其实是同一个问题,即加了标签的内容的展示形式不好,而且标签面板和反链面板一样缺乏可操作性。前面举的反链不方便的例子全都可以直接照搬到标签上,比如加了标签的列表块在标签面板里完全无法展示下级,加了标签的标题块在标签面板里用浮窗移动块有问题。

这些问题会让将来的标签变成一个只能用来标记文档块的东西,就像印象笔记那样,这其实也没什么毛病,但是如果反链和标签的呈现形式和可操作性得不到优化,想在思源内部做到快速无压记录就需要使用者本人有足够的方法论支撑,这样一来普通用户的体验很难比得上能直接使用 daily notes 无压力畅快输入的大纲双链笔记。Conor 式的 daily notes 流程虽然未必适合所有人、也遭受过一些舆论上的妖魔化,但是它实际用起来确实是很舒服很上瘾的,而且这种工作流目前来看其实是最适合小白专注记录的。

根据思源目前的形态,主要的使用方式可能是这两种:小白用户只用到文件树 + 编辑器,高阶用户自己设计一套工作流,这两种方式其实都有很高的心智门槛,文件树带来的心智压力并不小,也就是说即使是小白用法一样不够轻松。无压记录的工作流真的需要功能上的支撑,围绕 daily notes 流程的功能(反链和标签的呈现方式和可操作性)如果不加以优化,可能小白用户的使用体验还追不上 bear,想追上大纲双链笔记就更难了。

当然快速无压记录也只是笔记应用的一个方面,别的方面还是可以差异化竞争的。但就算不考虑 daily notes 流程,这些功能其实也该优化一下,daily notes 流程只是提供一个思考的切入点。

没什么具体建议,仅探讨。

  • 思源笔记

    思源笔记思源笔记是一款本地离线优先的个人知识管理系统,支持细粒度块级引用和 Markdown 所见即所得排版。

    74 引用 • 646 回帖
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    1 引用 • 50 回帖 • 4 关注
3 操作
deerain 在 2021-08-28 00:15:45 更新了该帖
deerain 在 2021-08-11 17:30:23 更新了该帖
deerain 在 2021-08-11 17:21:30 更新了该帖

广告 我要投放

优质回帖
  • deerain 5
    支持者 订阅者 作者

    好问题。尽管不易察觉,但这两种方式有极其巨大的区别。

    假设今天我逛了一下 logseq 论坛,看到有人说新版本通过修改 :ui/show-empty-bullets? 变量可以显示或隐藏内容为空的 bullets,于是我想把这个配置方法在笔记软件里记录下来。

    然后我打开 logseq 做记录,步骤如下:

    1. 打开或转到 logseq 这个软件,如果当前页面不是 daily notes 就再按一下快捷键跳转到 daily notes 页面

    2. 在 daily notes 的第一行写下:

      - [[logseq/配置]]
        - `:ui/show-empty-bullets?` 变量:显示或隐藏内容为空的 bullets
      
    3. 记录结束。去做别的事。

    如果使用 typora,步骤如下:

    1. 为了最快捷地打开 logseq - 配置.md 这个文件,当然是要好好利用各种搜索型效率软件了,于是我在 utools 里搜索 logseq 配置,结果发现我并没有这个文件

      • 这个时候第 1 个差别就已经体现出来了,在 logseq 里,我永远不用回忆 logseq/配置 这个页面是不是已经存在,直接在 daily notes 的第一行开写就行了

    2. 搜索未果,我开始考虑换个关键词搜索,万一我以前创建的文件名叫 logseq - config.md 呢?换了几个关键词搜索,发现我以前真的没做过这方面的记录

      • 第 2 个差别出现了,在 logseq 里,我不需要考虑自己之前是不是已经用别的名字创建过 logseq/config ,这种文件,我只需要直接在第一行写下 - [[logseq/配置]] 就行了,别的什么都不用考虑

      • 第 3 个差别:就算我以前已经有了 logseq/config 这个 page,那也不需要管它,因为 logseq/配置logseq/config 这两个页面一定会在 logseq 这个父页面下共同展示,我可以在将来合并它们

    3. 既然以前没有对应的 md 文件,那我就创建它吧。创建一个新的 md 文件虽然人人都会,但是我在创建的时候就需要给它在文件系统上安排一个具体的位置,我是把它放在 软件使用 文件夹下还是放在 知识管理 文件夹下?

      • 第 4 个差别:在 logseq 里没有烦人的新建文件流程,就算我根本不对 md 文件分类,新建文件这个步骤还是烦人

    4. 终于新建好了 logseq - 配置.md 这个文件,但是我忘了刚才想记录的是什么

      • 第 5 个差别:用 logseq 记录,到达路径很短,心智负担为零;用 typora 记录,到达路径很长,心智负担巨大

    5. 查看系统剪贴板,回想起了要记录的东西,开始记录

    6. 记录完毕,我开始了每日固定的读文献时间。30 分钟之后,我有一条突发的阅读心得无论如果都想赶紧记录下来,于是我唤出了 utools,再次重走上面的曲折心路历程。

      • 第 6 个差别:如果是用 logseq 记录,我只需要再次在 daily notes 页面的第一行写下:

        - [[文献/文献名]]
          - 这个思路真是妙啊
        - [[logseq/配置]]
          - `:ui/show-empty-bullets?` 变量:显示或隐藏内容为空的 bullets
        

    所以,这两种方式看似差不多,实际上是天壤之别。笔记的核心首先是记录,而 Conor 流程把使用者在记录时的心智负担降到了接近于 0 的水平,这种流畅无压的记录方式能极大促进一个人记录更多的东西。

    我这里说的还仅仅是记录阶段,后面的阶段差距更大。

  • deerain 1 1 赞同
    支持者 订阅者 作者

    按照大纲双链笔记的流程,一开始在日记文件里写下「判断标准」这部分内容的时候,就应该当场立即用某种方式把它传递给「SOP」这个文档,这个传递方式就是双链:

    # 2021-07-03.sy
    
    - [[SOP]]
      - 几个好课题的判断标准
        - balabala
        - kalakala
        - xxxxx
    

    将来集中整理 SOP 这个文档的时候,从反链里可以直接把 - [[SOP]] 和它下方的所有列表项拖进正文然后慢慢整理,这种流程比一开始不加双链事后再去 SOP 这个文档里引用要稳妥得多。

    在思源里实践不了这个流程是因为打开 SOP 这个文档的时候,看到的反链只有以下信息:

    ▼ 2021-07-03.sy
      ¶ SOP
    

    这个反链只显示了一个段落块,- [[SOP]] 下级的内容全都没有直接展示。如果反链面板优化一下展示方式和可操作性,就可以实践上面说到的流程了。所以问题依然是功能需要优化。

  • deerain 1 1 赞同
    支持者 订阅者 作者

    我们讨论的是"究竟选择那种方式会比较好?" 是完全无压力但后续整理麻烦的 Dailynote 还是选择稍微有点压力但是后续整理会轻松点的方法? 我也不知道, 这个心智压力若是实在想完全没有, 那就选择 DN, 若是想方便之后整理还是接受点心智压力就选其他方法, 感觉这个比较随人, 但我已经习惯了开 portal 了

    这段总结得很到位,在认清两种方式的差异之后,剩下的就是个人选择。不过这个选择大多数人不需要纠结,因为不用 remnote 这个软件就实践不了 remnote 的方法,我真正担心的是这两种方式都离思源比较远。

    但 DN 中已有很多内容的时候, conor 也会使用 zoom in 来消除其他文本的干扰的对吧?(这里我不咋清楚, 所以打了个问号)

    这个不需要,新的想法永远写在第一行就好了。

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • fangly
    订阅者

    image.png

    这地方只显示第一级列表项,还是把该列表项所有内容都显示出来,我觉得是不是还要再考虑下,按图片中这种做法的话,在实际场景下,每个列表项的内容都非常多,这样一展开上下文,整个反链面板就爆炸了,而且这样可读性也不高,把父项和子项连在一起看着会很奇怪。

    我觉得,像这个图片中,只显示第一级的 1 就好,子结点上的 11 不要附上去

    图片中的这个设计,基本等价于 https://github.com/siyuan-note/siyuan/issues/2762 中葫芦笔记的实现方式,并不是最好的设计,会有比较大的反链面板不可用的风险。按照 roam research 和 logseq 的做法的话是只显示第一级的 1。

    顺带问一下,既然修改了上下文按钮的功能,那么 1.3.6 的反链面板在没有按上下文按钮的时候呈现的内容,是 1.3.5 时按了按钮还是没按按钮时呈现的内容呢,个人希望是前者,像我现在每天第一次打开反链面板的第一件事就是点击上下文按钮,因为不开的话,在侧栏的反链面板每一项显示的内容确实有点太少了

    2 操作
    fangly 在 2021-09-25 00:28:22 更新了该回帖
    fangly 在 2021-09-25 00:10:13 更新了该回帖
  • 其他回帖
  • fangly
    订阅者

    我觉得反链展现的标准应是:是否展现了充足的上下文。而是否是在“传递”我觉得不太重要。我在一个节点中如果除了双链锚文本外还有其他内容,这些其他内容就相当于上下文,给我足够的信息判断我在这里进行引用是在干什么。而如果一个节点中只有双链锚文本,这样就缺乏上下文,我不知道我在这里引用它是在干什么,所以才需要展现子列表。上下文的目的是让用户知道我为什么引用了当前文档,从而判断这个反链项目是否需要进一步仔细查看。

    对于 - [[闪电网络]] 文章4(需要重读) 这个,上下文信息已经足够,文章标题的信息量已经很大了,不展开子列表我也已经清楚我这里为什么引用[[闪电网络]],如果我觉得我需要再看一下这篇文章的内容,我只需要展开节点就好,如果我觉得这篇文章目前不需要再仔细看了,我就直接忽略它就好,目光直接移动到紧贴着的下一个反链项目。而此时如果默认展开了该文章的子列表,如果我子列表的第一级节点就有几十个,此时就占满了反链面板,不方便我看下一个反链项目,此时展开子列表我觉得没什么意义,属于冗余信息,文章标题的信息量已经足够了,子列表对信息量的提升非常有限,并且对反链面板造成了一定的“污染”。对我来说,我几乎所有网上摘录的 input 内容都是按这种形式组织的,就是 daily note 的第一级节点中会包含标题和一个双链锚文本,所以如果把我现在的笔记迁移到 logseq 中的话,我有不少文档的反链面板被严重“污染”,完全不可用。

    我觉得还是 roam research 的方式比较适合点。

    所以 logseq 虽然在功能上会让它展示下级,但实际使用中因为用户一般不会在这里再写一个子节点,所以大多数时候是没什么影响的

    在我的体验中,我是经常会写子节点的,我一般的列表达到五六层是常有的事,在第二三层进行关联型双链也经常做。再比如你所举的 - [[闪电网络]] 文章4(需要重读) 这个例子,这下面肯定会有非常长的列表,一级节点可能会有几十个,这究竟是传递型双链还是关联型双链,我觉得不好说,在我的笔记系统中,倾向于当做关联型双链,这里面的内容我不会直接移动到 闪电网络 这个文档中的,只是为了说明这个文章和闪电网络这个主题相关。其实我觉得区分关联型双链和传递型双链没什么必要,反正都是链接嘛,而且其他大纲型双链笔记也没有针对两者的特性进行区分处理:logseq、葫芦笔记是全部一视同仁认为需要子列表来丰富上下文信息;remnote、roamedit 是全部一视同仁认为不需要子列表来丰富上下文信息;roam research 是根据该节点本身的上下文是否充足来判断是否需要子列表来丰富上下文信息,我觉得这是比较中和、比较合理的方式。

    2 回复
    4 操作
    fangly 在 2021-09-25 21:58:52 更新了该回帖
    fangly 在 2021-09-25 21:53:25 更新了该回帖
    fangly 在 2021-09-25 21:47:07 更新了该回帖
    fangly 在 2021-09-25 21:34:23 更新了该回帖
  • fangly
    订阅者

    1.3.6 这次的更新很给力,但针对标题上的传递型双链,有个小地方我觉得可以再优化一下

    image

    可以看到标题下面的列表块仍然以列表块的形式展示,个人认为列表块不适合作为反链中的展示内容,内容挤在一团,子结点直接附在父结点后面,逻辑上会比较混乱,反而造成困扰。我觉得反链面板中的列表块应该都要展开到第一级列表项

    我再举一个我实际使用过程中的例子:

    我在每一篇论文笔记中,都会有一个标题叫做[[academic writing]],在这个标题下以列表的形式记录在这篇论文中遇到的好句子,例如这样:

    image

    这个标题作为一个传递型双链,链接到《academic writing》这个文档上,此时,在《academic writing》这个文档的反链面板中就汇总了所有的我从论文中收集的好句子,然而现在的反链面板是这样的:

    image.png

    我希望是这样的,也就是和列表中的传递型双链一样:

    image.png

    因为思源是文档型,相比大纲型软件考虑的东西要更多一些,标题其实完全可以等价为列表中的一个父节点,其反链展现逻辑也应当要和列表中的逻辑一致,而现在在子列表的展开上两者不一致。

    把这个地方改掉,我觉得思源就吃透双链了,在反链上将文档与大纲融为一体

    1 回复
    2 操作
    fangly 在 2021-09-27 02:42:06 更新了该回帖
    fangly 在 2021-09-27 02:38:24 更新了该回帖
  • deerain
    支持者 订阅者 作者

    其实无论是用 rem tag 来做分离还是直接用 portal 记录,都是在记录的时候提前考虑整理问题。普通大纲双链笔记软件那种混杂的反链强制性地阻止了这种提前考虑,这对于快速记录来说其实反而是好事,因为把整理的负担推给了未来、所以当下能做到零压力记录。未来真的要用到某些笔记的时候,整理笔记的困难跟完成一个任务要面临的众多真正困难一比其实不算什么。

    我是以这样的模型来思考这个问题:对一个人来说,整理笔记的心智负担并不是完全恒定的,比如 Conor 流程把整理的困难完全抛给了未来、以达到当下的完全无压,它的心智负担大约是当下 0 未来 40;remnote 可以稍微把整理的困难分一点到当下,同时大大降低未来的整理困难,它的心智负担大约是当下 5 未来 25;而传统文件夹笔记一般都需要在记录时就把整理方式考虑好,而且未来依然需要整理,它的心智负担大约是当下 50 未来 50。

    粗略来说我觉得 remnote 更先进,但是如果「未来」永远不来,Conor 流程里的心智负担就永远是 0。

    能帮忙填下这个关于双链笔记的问卷吗 😋 :https://www.yuque.com/forms/share/cee13285-b07c-4adb-818c-809b9ba2497a

    1 回复
  • 查看全部回帖