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

本贴最后更新于 993 天前,其中的信息可能已经天翻地覆

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 流程只是提供一个思考的切入点。

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

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

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

相关帖子

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

    假设今天我逛了一下 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 来消除其他文本的干扰的对吧?(这里我不咋清楚, 所以打了个问号)

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

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • v1.3.6 会根据上下文按钮切换是否展现子级。

    1 回复
  • 其他回帖
  • 其实无论是用 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 回复
  • fangly 1

    大佬您在 Issue #2762 · siyuan-note/siyuan 中对于传递型双链和关联型双链的一些描述好像有点不太准确。您觉得两者的区别在于有无上级节点,但我觉得两者本质区别在于该节点除了双链锚文本之外有没有其他非双链的内容,如果是单独的双链锚文本即 - [[bar]],就是传递型双链,如果有其他内容比如 - 3-[[bar]] 就是关联型双链,因为事实上,我觉得传递型双链完全也可以有上级结点,比如我的 daily note 里有一个顶级节点是学习,然后下面是关于学习的内容,我在这个顶级节点之下再进行内容传递,关联型双链完全也可以没有上级结点,如同我前面发的方法 1 一样。

    我在 roam research 中看了一下,比如有一个页面是这样的:

    image.png

    这个[[Roam meetup]]上面也没有上级节点,查看它的反链,可以看到也是折叠了,没有展现子列表:

    image.png

    而像这个,有上级节点:

    image.png

    它的反链中还是展现了子列表:

    image.png

    所以,roam research 的具体实现中与您在 Issue #2762 · siyuan-note/siyuan 所描述的原则有矛盾,他们并不是按照有无上级节点的原则展现双链的

    所以,事实上,对于关联型双链,思源之前的(1.3.4 之前)的展现内容和 roam research 的展现内容是一样的,只需要把块标从段落块换成列表项就好,不需要展现子级内容

    因此,按照 roam research 进行设计的话,应该是这样:

    • 该节点的内容除了块引用之外还有其他内容的话,不展现子列表,或者在反链面板中默认折叠,也就是说和 1.3.4 之前的版本差不多,只是把块标从段落块换成列表项就好
    • 该节点的内容只有一个块引用,没有其他内容时,展现子列表,也就是按照 1.3.6 的方法

    @88250 D 大,您可以看一下,我觉得按照 roam research 的方案来设计更加科学一点,您现在的设计是按照 logseq 做的,个人认为还是有不少差距的。从我的体验以及我所观察到的 roam research 用户的使用方式来说,在单个笔记库内,关联型双链在数量上远多于传递型双链,因为在正文中会有大量的关联型双链,现在改版之后,对于关联型双链的体验还不如改版前的。

    2 回复
  • 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 的水平,这种流畅无压的记录方式能极大促进一个人记录更多的东西。

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

    1 回复
    4 操作
    deerain 在 2021-10-17 15:32:01 更新了该回帖
    deerain 在 2021-08-15 23:36:54 更新了该回帖
    deerain 在 2021-08-15 22:14:44 更新了该回帖
    deerain 在 2021-08-15 22:13:44 更新了该回帖
  • 查看全部回帖

推荐标签 标签

  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    9 引用 • 32 回帖 • 157 关注
  • ngrok

    ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。

    7 引用 • 63 回帖 • 600 关注
  • 倾城之链
    23 引用 • 66 回帖 • 109 关注
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    140 引用 • 441 回帖
  • 京东

    京东是中国最大的自营式电商企业,2015 年第一季度在中国自营式 B2C 电商市场的占有率为 56.3%。2014 年 5 月,京东在美国纳斯达克证券交易所正式挂牌上市(股票代码:JD),是中国第一个成功赴美上市的大型综合型电商平台,与腾讯、百度等中国互联网巨头共同跻身全球前十大互联网公司排行榜。

    14 引用 • 102 回帖 • 405 关注
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    60 引用 • 287 回帖
  • 又拍云

    又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。

    21 引用 • 37 回帖 • 511 关注
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    5 引用 • 26 回帖 • 497 关注
  • WiFiDog

    WiFiDog 是一套开源的无线热点认证管理工具,主要功能包括:位置相关的内容递送;用户认证和授权;集中式网络监控。

    1 引用 • 7 回帖 • 546 关注
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    40 引用 • 24 回帖 • 1 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    51 引用 • 190 回帖 • 2 关注
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 355 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    15 引用 • 7 回帖 • 2 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 114 关注
  • App

    App(应用程序,Application 的缩写)一般指手机软件。

    90 引用 • 383 回帖
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖
  • HHKB

    HHKB 是富士通的 Happy Hacking 系列电容键盘。电容键盘即无接点静电电容式键盘(Capacitive Keyboard)。

    5 引用 • 74 回帖 • 413 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1083 引用 • 3461 回帖 • 283 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 2 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 590 关注
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 293 关注
  • 快应用

    快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。

    15 引用 • 127 回帖 • 8 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    228 引用 • 1450 回帖 • 2 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 33 关注
  • GraphQL

    GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。

    4 引用 • 3 回帖 • 19 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 513 关注
  • 设计模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

    198 引用 • 120 回帖