征集社区关于反链的使用经验

在给插件 sy-plugin-enhance 开发反链功能中,我个人目前使用场景不多,所以需要收集社区的反链使用经验。

参与方式:

请将你反链使用场景,以及操作步骤,在这个帖子里进行说明,我会按照你的步骤去测试 logseq 和思源的情况,最后决定开发的内容。

由于听说 roam research 更好,如果有这方面的使用经验,也可以分享。但是由于我没有 rr 这个软件,所以尽量描述详细一点吧。

也可在思源三群里,反馈操作的视频,同时带上 @Wetoria


最新进展见 思源笔记增强插件 - sy-plugin-enhance

  • 思源笔记

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

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

    17452 引用 • 63302 回帖
3 操作
Wetoria 在 2023-12-07 23:15:48 更新了该帖
Wetoria 在 2023-12-07 22:12:18 更新了该帖
Wetoria 在 2023-12-07 19:04:06 更新了该帖

相关帖子

优质回帖
  • 一些使用经验:

    • 页内反链的使用场景

      • 在使用中除了每日的 DailyNote 外,还有两类文档块

        • 一种是我们常见的、会在正文写内容的文档块,通过在正文解释、描述、下定义来表达它是什么

        • 另外一种是在传统笔记里不常见的空白文档块,因为上下文反链的缘故,每一条有上下文的链接从外部定义了空白文档块,也就是:反链即正文,这种用法在 roamlike 里挺常见的,经常随手打个 [[关键词]] 进去看看反链和提及

          • 所以 W 大可以改下反链和正文的距离,会更好使,RR 的作业是这样的:

            • 在 RR 里的页内反链和正文目测有两个 block 的距离

              • image
              • image
    • 筛选功能的展望:

      • RR 的筛选功能主要有“包含”、“排除”以及“搜索反链锚文本”这三个功能

        • image
      • 块路径中出现的 [[锚文本]] 和顶层 Page 会进入筛选,我们分两种情况看:

        • 以引用页面 roam 为例:

          • image
          • 最顶层的 Page,在思源里对应文档块,其名称会进入筛选
          • 大纲中顶层的 [[W]]、父级 [[V]]、同级 [[D]]、子级 [[VV]] 会进入筛选
          • 非块路径中的锚文本,如 [[RESEARCH]] 不会进入筛选锚文本
        • 以引用页面 roam 中的 block 为例,逻辑和上方一样,聚焦具体某个 block 后才会显示反链以及筛选

          • image
          • image
          • image
      • 包含

        • 包含能做到逐级筛选,比如图中 Pathfinder 4 的意思是:在反链里,有四条块路径中包含 Pathfinder

          • 点击 Pathfinder 进入包含筛选之后会在这四条链接里进行更细致的筛选
          • image
      • 排除

      • 在做筛选功能时需要注意的坑:

        • 由于思源的反链逻辑是“展示当前块及其子级块的反链”,这和其它 roamlike 都不一样,所以当 W 大你做出筛选界面后,下面两个会混合在一起:

          • 引用文档块时,块路径中出现的 [[锚文本]]、文档名
          • 引用正文内容块时,块路径中出现的 [[锚文本]]、文档名
        • 所以除了上面的功能,我们还需有个 一键排除子级内容块的反链 的功能,只展示当前块的反链

    • 搭配侧栏中转站(sidebar)

      • RR 侧栏中转站很好用,在浏览笔记、将反链整理成文、查看文档反链的时候非常好使:

        • 当我正文结构已经写好,想去切换页面漫游自己的笔记,挑选内容块时,我就可以:

          • 打开素材区
          • 在不同的文档块、反链中漫游
          • 在漫游中,将合适的块、文档块、反链一键发送到素材区里
          • 切回正文结构
          • 将素材区的内容块引用到正文结构中
        • 在中转站可以浏览反链,使用感受和思源的反链面板一样

        • 中转站可以进行筛选,用来过滤内容,它的筛选功能和反链筛选一样

        • 中转站有个置顶内容的功能,当 × 掉置顶的内容之后再打开侧栏中转站,它会重新出现

      • RR 的侧栏中转站可以放这些东西:

        • page
        • 反链
      • 侧栏中转站可以作为一个长期的计划,搭配文档内反链使用,这也是我们一直高频需求的功能 https://github.com/siyuan-note/siyuan/issues/3565#issuecomment-1118285501

  • PiChou 1 1 赞同

    让我来抛转引玉吧~

    • 需求 1:【反链面板改进】正向引用数标识未显示在反链面板上 - 链滴
      • 此链接主要是我对「反链面板」上不显示「正向引用标识」的改进提议。
      • 因为 siyuan 并没有类似 logseq、roamreaseach 那种 [[父/子]] 双链。当我给一份传递型文本打双链时,为了图方便,就会只打 [[子]] 双链,而默认忽略 [[父]] 双链,但反链面板中缺乏「正向引用标识」则使得我后期找不到文本的源头。
        • 包括在仅 ctrl+shift+c 复制为引用块(而非创建真 [[页面块]])时,也会有这种「一步并两步走」的个人使用习惯,此时思源所提供的「溯源」手段是欠缺的。
    • 需求 2:反链面板放置在页面底部
      • 注:与侧边栏的反链面板为补充关系,而非替代关系
      • 这个需求好多人提,也是真实急迫需要的。
      • 希望以社区插件实现:创建新页面时自动插入 1 个 1级标题块 (“当前页面的反链 “)+1 个 当前文档的嵌入块
        • 此处仅能满足 页面块 的底部反链需求。而不能满足 块聚焦 后的反链需求,还是充满了妥协。

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 目前 logseq 基本的反链功能,我测试了一部分,准备去思考思源这边如何开发了。

    大家有什么经验可以继续在这篇帖子里回复,我会持续跟进。

  • 👍 支持一下,社区高手云集,越来越壮大了。

  • 目前思源的反链是不是不支持直接打开对应的文档啊?好像只能悬浮?需要一个能直接点击后打开链接文档在主标签页的功能

    1 回复
  • ctrl+ 左键点击面包屑上的路径可以直接开。

    1 回复
  • PiChou 1 1 赞同

    让我来抛转引玉吧~

    • 需求 1:【反链面板改进】正向引用数标识未显示在反链面板上 - 链滴
      • 此链接主要是我对「反链面板」上不显示「正向引用标识」的改进提议。
      • 因为 siyuan 并没有类似 logseq、roamreaseach 那种 [[父/子]] 双链。当我给一份传递型文本打双链时,为了图方便,就会只打 [[子]] 双链,而默认忽略 [[父]] 双链,但反链面板中缺乏「正向引用标识」则使得我后期找不到文本的源头。
        • 包括在仅 ctrl+shift+c 复制为引用块(而非创建真 [[页面块]])时,也会有这种「一步并两步走」的个人使用习惯,此时思源所提供的「溯源」手段是欠缺的。
    • 需求 2:反链面板放置在页面底部
      • 注:与侧边栏的反链面板为补充关系,而非替代关系
      • 这个需求好多人提,也是真实急迫需要的。
      • 希望以社区插件实现:创建新页面时自动插入 1 个 1级标题块 (“当前页面的反链 “)+1 个 当前文档的嵌入块
        • 此处仅能满足 页面块 的底部反链需求。而不能满足 块聚焦 后的反链需求,还是充满了妥协。
    1 回复
  • PiChou 1 赞同

    好帖子建议楼主 📌 置顶,以便集思广益

  • 刚刚知道,[[父/子]] 这种用法,比较高级。思源如果把 标签双链 融合,就是这种 [[父/子]] 模式了。

    不过在[[子]]的块补充打个[[父]]也能解决。后期也能找到。

    第二点,也是我想做的。放一个一级标题。但聚焦后部分的反链,就麻烦了。

  • abc1206

    建议属性面板加入双链(以及标签和链接)的内容,方便扩展双链、提及、虚拟引用等查询功能。

  • 感谢,我就说我记得以前是可以的,一段时间不用,就忘记这个方法了。不过刚刚用了下就发现明明没有引用,也出现在了反链中,这个重新索引能解决不?

    1 回复
  • intelion 1 赞同

    1.反链可以折叠、展开;2.反链可以按选择的条件(如创建时间、标题等)进行排序;3.反链下方增加「提及」。

  • suiji 1 赞同

    就我而言,我需要一种区分,“用过”的区分。即,本页面 A 被页面 B 引用,本 A 的反链面板有 B。当本 A 引用或嵌入了 B 中引 A 的块时,在本 A 的反链面板上给出标记“用过”。

    用意是,不希望反链面板只是一次检索展示,不希望每次开反链面板都是一次新检索,希望对检索结果的整理能够有所保留。

    1 回复
  • 一般是引用没更新?我一般也就是刷新一下反链面板,或者重建一下索引。

    1 回复
  • Wetoria 1

    大概能理解,我自己也有类似的需求,比如整理的时候,我会用嵌入块的形式把反链拖到汇总的文档里。先收了,后面看看怎么做。

  • 一些使用经验:

    • 页内反链的使用场景

      • 在使用中除了每日的 DailyNote 外,还有两类文档块

        • 一种是我们常见的、会在正文写内容的文档块,通过在正文解释、描述、下定义来表达它是什么

        • 另外一种是在传统笔记里不常见的空白文档块,因为上下文反链的缘故,每一条有上下文的链接从外部定义了空白文档块,也就是:反链即正文,这种用法在 roamlike 里挺常见的,经常随手打个 [[关键词]] 进去看看反链和提及

          • 所以 W 大可以改下反链和正文的距离,会更好使,RR 的作业是这样的:

            • 在 RR 里的页内反链和正文目测有两个 block 的距离

              • image
              • image
    • 筛选功能的展望:

      • RR 的筛选功能主要有“包含”、“排除”以及“搜索反链锚文本”这三个功能

        • image
      • 块路径中出现的 [[锚文本]] 和顶层 Page 会进入筛选,我们分两种情况看:

        • 以引用页面 roam 为例:

          • image
          • 最顶层的 Page,在思源里对应文档块,其名称会进入筛选
          • 大纲中顶层的 [[W]]、父级 [[V]]、同级 [[D]]、子级 [[VV]] 会进入筛选
          • 非块路径中的锚文本,如 [[RESEARCH]] 不会进入筛选锚文本
        • 以引用页面 roam 中的 block 为例,逻辑和上方一样,聚焦具体某个 block 后才会显示反链以及筛选

          • image
          • image
          • image
      • 包含

        • 包含能做到逐级筛选,比如图中 Pathfinder 4 的意思是:在反链里,有四条块路径中包含 Pathfinder

          • 点击 Pathfinder 进入包含筛选之后会在这四条链接里进行更细致的筛选
          • image
      • 排除

      • 在做筛选功能时需要注意的坑:

        • 由于思源的反链逻辑是“展示当前块及其子级块的反链”,这和其它 roamlike 都不一样,所以当 W 大你做出筛选界面后,下面两个会混合在一起:

          • 引用文档块时,块路径中出现的 [[锚文本]]、文档名
          • 引用正文内容块时,块路径中出现的 [[锚文本]]、文档名
        • 所以除了上面的功能,我们还需有个 一键排除子级内容块的反链 的功能,只展示当前块的反链

    • 搭配侧栏中转站(sidebar)

      • RR 侧栏中转站很好用,在浏览笔记、将反链整理成文、查看文档反链的时候非常好使:

        • 当我正文结构已经写好,想去切换页面漫游自己的笔记,挑选内容块时,我就可以:

          • 打开素材区
          • 在不同的文档块、反链中漫游
          • 在漫游中,将合适的块、文档块、反链一键发送到素材区里
          • 切回正文结构
          • 将素材区的内容块引用到正文结构中
        • 在中转站可以浏览反链,使用感受和思源的反链面板一样

        • 中转站可以进行筛选,用来过滤内容,它的筛选功能和反链筛选一样

        • 中转站有个置顶内容的功能,当 × 掉置顶的内容之后再打开侧栏中转站,它会重新出现

      • RR 的侧栏中转站可以放这些东西:

        • page
        • 反链
      • 侧栏中转站可以作为一个长期的计划,搭配文档内反链使用,这也是我们一直高频需求的功能 https://github.com/siyuan-note/siyuan/issues/3565#issuecomment-1118285501

    1 回复
  • 【1】Logseq 下方的反链接列表做得挺好,可以参考。

    【2】图 1 是反链,图 2 是出链。图 1 的面包屑能不能不要显示把那个“思源规则”再显示一遍?

    【3】图 1 的面包屑中,没有显示“总目录”这个页面的上级笔记本。

    image.png

    image.png

    1 回复
  • 1:有在参考

    2:可以考虑。

    3:Logseq 里,“文档”级别的节点也是不展示的,比如我图片里的[[镜头]]这个文档image.png

  • mark-j

    这么需求量,赶紧 @ 官方

  • 打开日记的按钮,能否直接钉在左侧,目前的十字悬浮球有点过大了。

    1 回复
  • 暂时没考虑钉在左侧这样的功能,悬浮球主要是给移动端用的。后续暂时只考虑给一个设置控制是否显示。

  • suiji

    大佬你好,我再提一个trollface 。既有反链面板是以文档名为基本条目陈列的,日志在反链面板里呈现为一个个日期。在 daily note 的理念下,笔记大部分都记在日志下,使得 daily note 流程天然比新建文档在反链面板上少一层标题信息。daily note 流程中,一个日志文档本质应是传统笔记方式里诸多文档在管理上的归并,不宜作为笔记内容上的组织单位。希望记在 daily note 下的笔记在反链面板上,能从日期文档名往下细分一层,细到管辖引用块的等级最高的标题那里。当然,没有标题自然无事发生。

    曾经有一个挂件 note backlines,它的展示效果就是在有标题时展示标题,只是引用块本身所在的块就不展示了。效果图:

    image.png

    在文档“2”中看的很明显了,其中“第一个标题”和“第三个标题”下都有引用【示例】,“第二个标题”下则没有。另注:“3”是一段普通的文本段落。“1”是一个列表块的父级块。

    长处短处都很明显的一个挂件。

    --------分割线-----

    之前提了一个“用过”的建议,再加上现在发的这个,我开始觉得改动程度还挺大的trollface

    2 回复
  • mark-j 1 评论

    dailynote 的用法不依赖标题哦

    是的。我把 daily note 作典型讲可能让你误会我就是在讲 dailynote 了。其实吧,我真正想提的是,不管是不是 dailynote,只要有所引用的块之上有等级标题在管辖着它,那都要在反链面板上从文档名深入到标题名。因为标题意味着文档(或者说卡片)的单位切割。只是我觉得这么改是不是动静太大,也不是那么多人有我这样的需求,就捡这方面最突出的 dailynote 讲了。
    suiji
  • 刷新和重建索引都没用,可能是一些奇奇怪怪的 bug 吧,多了没事,少了就麻烦

  • @Wetoria

    BUG:底部反链面板的「左侧菜单标志」持续存在,即便鼠标指针失焦、页面滚动之后也不会消失 😭

    1702174486957.png

    1 回复
  • 另外,底部反链面板最好也能设置默认展开数,否则某个页面反链数量大,一打开就比较卡顿

    1702174832642.png

    1 回复
  • cxg318

    有 BUG,浮窗不能添加双链

  • 我记得我修了,但是不记得上没上架了-。-

  • 我不打算适配文档型。主要只处理列表类型的。精力不够

  • 优先考虑实现功能了,性能问题在功能实现以后我再考虑。

    1 回复
  • 新版用上了,没有块标和折叠按钮错位的问题了,用起来很舒服。❤️
    W 大可以考虑下把“反链”两个字调淡点,RR 里的反链和提及就很淡,这样看起来反链就像是正文一样,对注意力没什么干扰。logseq 里倒是和增强插件一样,看起来就显得割裂

    image.png

  • 使用预渲染的方式实现的话,在 236 个反链的情况下,只会有一点的等待时间,这个时间编辑不会卡顿。加载完毕后,编辑依然不会卡顿,只有切换页面会卡一下,应该是能接受的。

请输入回帖内容 ...

推荐标签 标签

  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    137 引用 • 268 回帖 • 240 关注
  • GAE

    Google App Engine(GAE)是 Google 管理的数据中心中用于 WEB 应用程序的开发和托管的平台。2008 年 4 月 发布第一个测试版本。目前支持 Python、Java 和 Go 开发部署。全球已有数十万的开发者在其上开发了众多的应用。

    14 引用 • 42 回帖 • 675 关注
  • 正则表达式

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

    31 引用 • 94 回帖 • 1 关注
  • 游戏

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

    167 引用 • 799 回帖 • 2 关注
  • C++

    C++ 是在 C 语言的基础上开发的一种通用编程语言,应用广泛。C++ 支持多种编程范式,面向对象编程、泛型编程和过程化编程。

    106 引用 • 152 回帖 • 1 关注
  • 七牛云

    七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化 PaaS 服务。围绕富媒体场景,七牛先后推出了对象存储,融合 CDN 加速,数据通用处理,内容反垃圾服务,以及直播云服务等。

    25 引用 • 215 回帖 • 156 关注
  • 锤子科技

    锤子科技(Smartisan)成立于 2012 年 5 月,是一家制造移动互联网终端设备的公司,公司的使命是用完美主义的工匠精神,打造用户体验一流的数码消费类产品(智能手机为主),改善人们的生活质量。

    4 引用 • 31 回帖 • 3 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    8 引用 • 25 回帖 • 4 关注
  • gRpc
    10 引用 • 8 回帖 • 39 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    5 引用 • 13 回帖
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖 • 12 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    82 引用 • 893 回帖
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖
  • abitmean

    有点意思就行了

    13 关注
  • 996
    13 引用 • 200 回帖 • 9 关注
  • 反馈

    Communication channel for makers and users.

    123 引用 • 895 回帖 • 174 关注
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    96 引用 • 330 回帖
  • 笔记

    好记性不如烂笔头。

    303 引用 • 777 回帖 • 1 关注
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 33 关注
  • WiFiDog

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

    1 引用 • 7 回帖 • 532 关注
  • Telegram

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

    5 引用 • 35 回帖
  • Electron

    Electron 基于 Chromium 和 Node.js,让你可以使用 HTML、CSS 和 JavaScript 构建应用。它是一个由 GitHub 及众多贡献者组成的活跃社区共同维护的开源项目,兼容 Mac、Windows 和 Linux,它构建的应用可在这三个操作系统上面运行。

    15 引用 • 136 回帖 • 9 关注
  • Sublime

    Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。

    10 引用 • 5 回帖 • 5 关注
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    83 引用 • 134 回帖
  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    81 引用 • 122 回帖 • 618 关注
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖 • 9 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖 • 1 关注