关于反链展示逻辑的不解

image.png

如图示例,我在引用页,分别引用了「资源页」,以及「资源页」内的段落。


对此我感到疑惑的是

  • 为什么这个段落的引用关系,也被展示进了「资源页」的反链列表?

之所以感到疑惑,是因为同类的块级笔记软件,页面的反链列表只会显示对该页面的引用关系,而不会像思源这样,将页面内具体段落的引用关系,也显示进去。

我觉得这可能会引出一个问题:

  • 反链关系可读性降低

具体来说,就像示例图中 的 「foo *」,其中的 * 只是一个静态锚文本。所以我其实没办法直接通过观察,得知这个 * 对应的是哪一个段落。而当页面内容变多,然后内部又有多个段落被其他页面以「静态锚文本」的方式引用,这个时候反链关系的可读性,感觉会受到不小的冲击。

所以,我其实不太能理解为什么这么设计,以及有什么应用场景。

  • 思源笔记

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

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

    23006 引用 • 92538 回帖
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    8445 引用 • 38465 回帖 • 154 关注

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • lorem ipsum

    1 操作
    deerain 在 2024-10-19 19:19:36 更新了该回帖
  • 88250

    只有这样反链才能精确定位到具体的引用位置,就像你最后举例的 * 锚文本,反链最后一条就可以准确跳转到这个引用位置。

    如果反链只显示到“页面”这个级别,那不是块级引用双链。

    1 回复
  • LLL-
    作者

    抱歉 d 大,可能我表述的不是很准确。我完善一下:

    我提到的页面级别,并不是说只显示“被哪个文档引用”,而是 只显示引用这个“文档”的那个块

    以 2 楼的朋友提到的 roam 和 logseq 为例,相同的示例,这两个软件就不会显示 3 条记录,而是只会显示第一条,因为只有第一条记录是对 “资源页”这篇文档的引用。第二条第三条,并不是引用的“资源页”,而是引用的资源页里具体的段落。

    1 回复
  • 88250

    我不懂你意思,麻烦截个对比图说明吧。

    2 回复
  • LLL-
    作者

    好的,我去 roam 里复现一下

  • LLL-
    作者

    image.png

    这是 Roam 中的相同示例,有如下特点:

    • 「资源页」的 Linked-refs 不会显示那两个 fooooo 的引用记录,因为当前视角是处于「资源页」。
    • foooo 的引用记录,只有当视角聚焦进 fooooo 的时候,才会显示。
    • 下面这个 gif 是聚焦(alt + → 聚焦)进 fooooo 后,Link-refs 的变化。
      Roam 的反链示例聚焦.gif
    2 回复
    1 操作
    LLL- 在 2024-10-19 16:53:43 更新了该回帖
  • 88250

    那可能是因为 rr 在同时引用父块和子块的情况下会把子块去重不计入反链,我们是否要这样做还需要讨论,目前不会轻易改动这些逻辑了,谢谢。

    1 回复
  • LLL-
    作者

    也不能算是同时引用父块和子块时去重,而是只显示“当前视角的引用”:

    就如下面这个 GIF,当我在「引用页」内删除掉 [[资源页]] 这段话后,「资源页」视角里 的 Linked-refs 也就没了。
    至于 fooooo 块 的反链记录,可以 alt+→ 将视角聚焦进 foooo ,在 foooo 视角下的 Linked-refs 是可以查看的。
    (当然,也可以直接点击 foooo 块 右边的引用计数器查看 foooo 块的反链。或者点击 foooo 引用链接 旁边的上标计数器,一样的。)

    并非父子去重.gif

    1 回复
  • 88250

    我的意思就是不把子块包含在内,但是要改这个逻辑要先看社区反馈,我们不能轻易改动。

    包含子块的好处就是一目了然,在父级就可以看到所有引用处,不用聚焦。

    1 回复
  • LLL-
    作者

    这个确实是的,在当文档篇幅不是很大的时候,可以做到一目了然。

    但当文档的内容篇幅变大后,如果内部的一些块 又被多次引用,然后外加对该文档自身的引用,那么反链列表会变得很庞大,并且难以区分引用的是哪个本体。

    这可能会对双链体验上造成一定影响。D 大觉得呢?

    所以或许可以在反链窗格里,追加一个按钮,来进行模式切换。(或者是其他更合理的设计)

    1 回复
  • 88250

    如果这两种模式的需求都较多,那么会考虑加开关的。但目前来看并没有,所以暂时不动,继续收集反馈,谢谢。

    1 回复
  • LLL- 1
    作者

    好吧,那只能期待社区的反馈了。之前用 roam 和 logseq 这类标准大纲 app 时,习惯了他们的这种反链逻辑。

    1 回复
  • i1356 2 2 赞同 2 评论

    用户很多时候并不知道自己需要什么,只有见过好东西后才会知道原来还可以这样。

    反正思源的反链我是没有用的欲望。直到见过 logseq 后,才知道双链与大纲原来可以这样舒服。

    1 回复
    特别赞同第一句
    EmberSky 1 赞同
    展开讲讲。
    xnyshu
  • LLL-
    作者

    @88250 我感觉这位朋友说的有道理

    1 回复
  • 88250

    欢迎在社区发起一个投票贴来帮忙统计,我们置顶一段时间。

    2 回复
  • YRJ0422

    D 大,我在论坛发了一个讨论投票贴,可以参考一下,统计探讨:标签修改成双链形式的可行性探讨 - 链滴 (ld246.com)

    1 回复
  • 88250 1 1 赞同

    抱歉,标签不会考虑改动了。

    1 回复
  • 88250

    不考虑标签和引用功能重叠,这个 issue 稍后会关闭。

    1 回复
  • LLL-
    作者

    收到!这就去发

  • YRJ0422

    经过今天的探讨,发现思源如果完全按照[[ ]] 是可以代替 Logseq 去写 Daily Note 的,文档标签可以在第一行用 tags:: [[ ]] 来代替文档标签是一种可行的方案。

    使用原始的标签也未必就不好,同样可以汇总到搜索界面,而且可以显示图标,在搜索界面也会显示出标签,只不过跟双链相比,不足之处是标签系统中的每一个标签都是唯一性的,而双链可以设置别名,把不同的关键词聚合在一个里面。而思源的标签可以轻松的用 SQL 汇总,也算是一个优点。

    关于标签改进成双链以后的优势,标签绑定文档后标签唯一性的问题就不存在了,多个标签可以绑定在一个页面下,而打出来的每一个标签都可以汇总在对应绑定的标签文档的反链中,在搜索的时候标签还是搜索特定标签保证唯一性(这点如果改成把同类标签都显示可能有些人不适应),这样就统一了双链和标签以及块之间的割裂感的问题,让标签有更大的使用价值

    其实从 Logseq DB 版把标签改成数据库的方式的角度来说,可能保证[[ ]] 的唯一性才是正确的思路,而不是 #和[[ ]] 是一种东西,但我觉得在思源的体系中标签改进成双链标签要更加的优雅和易用

    在别名方面,思源中每一个块都有命名和别名系统,一定程度上代替了 Logseq 中 alias 的功能,主要的缺陷是思源基于 ID 进行的双链,不能做到双链[[生病]] 和[[生病记录]] 到同一个页面,但是别名可以在块引用的时候显示和检索出来这也算是变相的解决了这个问题。

    另一方面思源本身有反链面板和引用计数,做的足够完善,相比 logseq 上手难度确实是高了不少,不过带来的体验就是可以管理文档同时写 Daily Note

    @88250 这是我对改成双链形式的一些想法和总结,还是希望可以实现的

  • Wetoria 1 赞同

    你只考虑了反链的展示结果,但没有考虑反链的展示形式。

    如果 Roam 和 Logseq 都是你说的这种情况,我认为他们是在底部展示的反链,因此只 展示当前顶级块的反链 是很合理的,也就是文档,或者聚焦后的反链。

    但是同样解决不了 如果一篇长文中的子块被链接的话,没办法快速预览哪些子块有反链。在你这个例子里,如果 资源页 没有被引用,只有 fooo 的,并且 fooo 是几千几万行中的一行。要在 资源页 中找到 这个块又被引用 是极不方便的。如果这俩个软件有方法,还请告诉我。

    1 回复
  • LLL-
    作者

    认同 这确实是一种需求。

    我有一个想法。除了开关以外,或许可以通过某种方式,分割开本体反链和子块反链。例如用一个可折叠的 label(如 label 叫“子块反链”),label 下面是子块反链。然后默认是折叠的。

    1 回复
  • 在反链面板顶部增加选项或者开关,可能是最符合操作习惯的了。 @88250

    至于更优的交互,交给插件可能会好一点。比如反链筛选面板

请输入回帖内容 ...

推荐标签 标签

  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    177 引用 • 816 回帖
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖
  • 安装

    你若安好,便是晴天。

    132 引用 • 1184 回帖 • 2 关注
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 335 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖 • 1 关注
  • Quicker

    Quicker 您的指尖工具箱!操作更少,收获更多!

    34 引用 • 148 回帖
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 76 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 394 关注
  • IBM

    IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。

    17 引用 • 53 回帖 • 141 关注
  • Google

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

    49 引用 • 192 回帖 • 1 关注
  • Pipe

    Pipe 是一款小而美的开源博客平台。Pipe 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    132 引用 • 1114 回帖 • 126 关注
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖 • 2 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    83 引用 • 37 回帖
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 6 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖 • 5 关注
  • 快应用

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

    15 引用 • 127 回帖
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    107 引用 • 295 回帖
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    238 引用 • 224 回帖
  • PWL

    组织简介

    用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖
    用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/

    用爱发电组织的核心驱动力:

    • 遵守开源守则,体现开源&贡献精神:以分享为目的,拒绝非法牟利。
    • 自我保护:使用适当的 License 保护自己的原创作品。
    • 尊重他人:不以各种理由、各种漏洞进行未经允许的抄袭、散播、洩露;以礼相待,尊重所有对社区做出贡献的开发者;通过他人的分享习得知识,要留下足迹,表示感谢。
    • 热爱编程、热爱学习:加入组织,热爱编程是首当其要的。我们欢迎热爱讨论、分享、提问的朋友,也同样欢迎默默成就的朋友。
    • 倾听:正确并恳切对待、处理问题与建议,及时修复开源项目的 Bug ,及时与反馈者沟通。不抬杠、不无视、不辱骂。
    • 平视:不诋毁、轻视、嘲讽其他开发者,主动提出建议、施以帮助,以和谐为本。只要他人肯努力,你也可能会被昔日小看的人所超越,所以请保持谦虚。
    • 乐观且活跃:你的努力决定了你的高度。不要放弃,多年后回头俯瞰,才会发现自己已经成就往日所仰望的水平。积极地将项目开源,帮助他人学习、改进,自己也会获得相应的提升、成就与成就感。
    1 引用 • 487 回帖 • 3 关注
  • NetBeans

    NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。

    78 引用 • 102 回帖 • 683 关注
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖 • 1 关注
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    545 引用 • 672 回帖
  • Sandbox

    如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。

    409 引用 • 1246 回帖 • 587 关注
  • Telegram

    Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。

    5 引用 • 35 回帖
  • JSON

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

    52 引用 • 190 回帖 • 1 关注