块引排序问题

本贴最后更新于 842 天前,其中的信息可能已经时移俗易

1.9.7 下,如下图,我不清楚现在这是按什么顺序排的,从逻辑上讲,我认为红框标的内容应该排在第一个

image.png

而 1.9.6 中,排序在逻辑上是正确的:

image.png

此外,1.9.7 中,按照下图操作,搜索结果中的第一个是无意义内容:

temp212.gif

1.9.6 中也有,但排序在后面,所以平时使用时不会被影响到:

image.png

  • 思源笔记

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

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

    20246 引用 • 78309 回帖
1 操作
fangly 在 2022-04-07 17:22:31 更新了该帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 收到,问题 1 和 3 看上去好像是一样的,我们先按照长度排序的逻辑实现,按引用计数排序太复杂了,目前还没有找到实现方案。如果有一个需要强调排序的,可以指定命名试试,命名的排序优先级是最高的。

    问题 2 下个版本修复 Issue #4536 · siyuan-note/siyuan

    1 回复
  • 其他回帖
  • fangly

    问题 1 和 3 不一样,问题 1 和引用数量有关,问题 3 和引用数量无关,和 https://ld246.com/article/1649338100756 这个问题有一定关联

    首先我在搜索设置中关闭了段落块

    然后比如说我在某文档中写了关于 线段树 的内容,在顶级节点上写线段树,子列表中写线段树的具体内容,子列表中会大量包含 线段树 这个关键字

    然后我在其他地方想要引用 线段树,讲道理应该引用最外层这个列表项,这个列表项的第一个块的内容和 线段树 关键词完全匹配,但是实际搜索结果中,因为最外层列表项长度最长,所以会排在最后

    image.png

    而如果我在搜索设置中打开段落块,这时候搜索的第一个结果和我想要的结果非常近,但可惜是段落块,我想要外层的列表项块

    image.png

    这个问题可以和 https://ld246.com/article/1649338100756 这个帖子一起考虑下

  • v1.9.7 改过搜索排序实现 Issue #4493 · siyuan-note/siyuan 看来还是不太好用,得继续改进。

    这个问题主要是因为 length 字段影响,列表项 线段树+ 子项 ccc 的长度大于了上面单项 abc 是 线段树 的长度,因为目前的长度是使用 markdown 字段得出的,这个里面包含了标记符和换行符。

    下个版本我们把 length 值取自 content 应该就正确了 Issue #4530 · siyuan-note/siyuan

    最后提到的那个忽略当前块暂时先不改进了。

    1 回复
  • fangly

    问题 1:sort 字段中有考虑被引用次数吗,我认为排序时首先看匹配程度,然后看被引用次数,之后再是其他,像下图中,红框标出的被引用次数有 2,其他都是 0,这个应该排在最前面:

    image.png

    问题 2:测试时又发现一个古老 bug,锚文本为空时应该显示列表项的第一个块,可以看到刚引用时并不是,我得修改一下锚文本再清空锚文本才行:

    temp215.gif

    问题 3:单论匹配程度,我认为下图中,也是红框中的列表项匹配程度最高(我在搜索设置中过滤掉了段落块),该列表项的第一个块和搜索内容完全匹配。

    image.png

    这在实际使用过程中非常常见,比如说我想要写关于 线段树 的内容,如下图,我有三种选择:1. 我可以单独新建一个文档叫线段树,2. 可以列一个标题叫线段树,3. 可以使用列表,在列表项的第一个段落块上写上线段树,三者是等价的。我在其他地方想引用线段树时,如果是文档块或标题块的话,目前没问题,都是排序在第一个,但当我用列表时,排序就出现问题,我想要引用的内容并不在最前面,甚至可能在非常后面。不清楚在技术上实现这个排序逻辑方不方便,不方便的话,只要把问题 1 解决,大部分情况下也还能用。

    image.png

    1 回复
    1 操作
    fangly 在 2022-04-07 22:15:12 更新了该回帖

推荐标签 标签

  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    14 引用 • 7 回帖
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    21 引用 • 58 回帖
  • frp

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

    16 引用 • 7 回帖
  • 资讯

    资讯是用户因为及时地获得它并利用它而能够在相对短的时间内给自己带来价值的信息,资讯有时效性和地域性。

    54 引用 • 85 回帖
  • Telegram

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

    5 引用 • 35 回帖
  • RabbitMQ

    RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

    49 引用 • 60 回帖 • 395 关注
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    333 引用 • 619 回帖
  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    216 引用 • 463 回帖 • 1 关注
  • ZeroNet

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

    1 引用 • 21 回帖 • 609 关注
  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    207 引用 • 358 回帖 • 1 关注
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖 • 2 关注
  • 人工智能

    人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

    77 引用 • 159 回帖
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖 • 1 关注
  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    10 引用 • 54 回帖 • 139 关注
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 712 关注
  • TGIF

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    285 引用 • 4482 回帖 • 659 关注
  • 导航

    各种网址链接、内容导航。

    37 引用 • 168 回帖 • 2 关注
  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。

    63 引用 • 134 回帖 • 726 关注
  • OnlyOffice
    4 引用 • 11 关注
  • VirtualBox

    VirtualBox 是一款开源虚拟机软件,最早由德国 Innotek 公司开发,由 Sun Microsystems 公司出品的软件,使用 Qt 编写,在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox。

    10 引用 • 2 回帖 • 10 关注
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 148 关注
  • 单点登录

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

    9 引用 • 25 回帖 • 3 关注
  • 尊园地产

    昆明尊园房地产经纪有限公司,即:Kunming Zunyuan Property Agency Company Limited(简称“尊园地产”)于 2007 年 6 月开始筹备,2007 年 8 月 18 日正式成立,注册资本 200 万元,公司性质为股份经纪有限公司,主营业务为:代租、代售、代办产权过户、办理银行按揭、担保、抵押、评估等。

    1 引用 • 22 回帖 • 708 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    4 引用 • 91 回帖
  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 699 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 713 关注
  • 职场

    找到自己的位置,萌新烦恼少。

    126 引用 • 1699 回帖