v2.7.8 指定路径为文档时搜索子文档选项失效

本贴最后更新于 774 天前,其中的信息可能已经斗转星移

当打开查找(无论 Ctrl+F 还是 Ctrl+P)之后,点击【指定路径】后进行查找出现 Bug。

为避免再产生歧义,这里强调指定路径我指的是这个功能:

image.png

已知,在点击指定路径,并选择路径之后,查找会自动开启【包含子文档】

但实际使用情况是,

  • 指定为【笔记本】时,【包含子文档】选项正常生效。
  • 当指定路径为【文档】时,搜索子文档失效,需要【点击】取消【包含子文档】,再【点击】开启【包含子文档】,才能正常搜索到子文档的信息。

后来再测试我曾经误把【本文档】的查找结果当成【子文档】的查找结果,经过再次确认,【子文档】无论是中英文都无法被查找到。我一会儿把错误的录屏的那层楼删了。

这个 bug 其实发现挺久的,没想到反馈的过程因为表达能力造成了沟通障碍,不过我觉得这层的录屏已经充分说明问题了,所以我不另外传录屏了。

@88250 请记录一下,这真的是个 Bug,可以每一次都复现。

  • 思源笔记

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

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

    25218 引用 • 103996 回帖 • 1 关注
2 操作
Gaffey 在 2023-03-12 22:44:32 置顶了该帖
Gaffey 在 2023-03-11 20:38:40 更新了该帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 我这里默认主题下测试正常:

    issue.gif

    2 回复
  • Gaffey

    不是这样的。我的搜索预设就是包含子文档,而当我选择路径为笔记本时,会保留包含子文档的设置,能够搜索到子文档里对应内容。

    但是当我选择路径为文档时,虽然我预设是包含子文档,UI 上显示的也是生效了包含子文档,但是实际上没有包含子文档,必须手动取消包含子文档之后再次点击包含子文档才能打开功能。

    你录屏的情况是本来就没设置打开子文档,而不是在已经设置打开子文档的情况下,选择文档路径时不生效。

    这个 bug 在默认主题内我也复现了,就不另外录屏了。

    1 回复
  • 搜索预设指的是?

    1 回复
  • Gaffey

    命名查询,预设就是预先设置,我用的大部分软件都是用“预设”这样的形容,因此我不理解命名查询这种名称,非常不直观,和群友交流发现也有很多人不知道这功能干什么用的。

  • Gaffey

    D 大你录屏的场景是在本文档内打开搜索,此时默认不打开包含子文档。而当选择指定路径时,不需要额外设置,UI 显示上 UI 自动包含子文档的,选择的路径是笔记本时也能正常包含子文档搜索,但是当选择的路径是文档时,UI 虽然显示已经打开包含子文档,实际上并没有包含子文档,需要进行关、开两步操作才能实际打开包含子文档选项。

  • Ctrl+F 是搜索当前文档,不包含子文档。可以使用 Ctrl+P

    1 回复
  • Gaffey

    我刚才试了一下,全局搜索模式下,选择搜索【指定路径】为【文档】时,同样出现 UI 显示打开【包含子文档】,但是实际上没有打开,需要关、开重复操作才能搜索到子文档。

    1 回复
  • 正常是这样的,你再试试?

    2 回复
  • Gaffey

    不是这个地方的 bug 啊!我强调好多遍是在【指定路径】的选项下的 bug,直接选中文字搜索当然正常,因为我反馈的 bug 本来就不是这里的 bug。

  • Gaffey

    我现在清楚了,我们从一开始就误会了最基本的东西:我说【指定路径】是指的下图这个功能。

    image.png

    而你们接收到的信号是“在某个文档里打开查找功能”,结果我们互相都在误解。

    这个歧义也充分说明了即使是开发者也对思源的功能选项取名方式很不熟悉,这里了建议【指定路径】更名为“查找范围”,【命名查询】更名为“查找预设”,即

    • 【保存命名查询】更名为“保存查找预设”;
    • 【使用命名查询】更名为“选择查找预设”;
    • 【移除命名查询】更名为“取消查找预设”。
      “预设”也可以改成“设置”,对一般非编程行业的人而言这绝对是更容易望文生义的取名。
    1 回复
  • Ctrl F 后是单篇文档内搜索,指定路径的话才会包含子文档的。

    2 回复
  • Gaffey via iPhone

    对啊,所以我主楼就表示了 bug 所在:在【指定路径】中选择路径为【笔记本】的时候【包含子文档】功能才正常启用,而当选择路径为【文档】时,【包含子文档】的按钮显示是功能开启,但实际上无法搜索到子文档,必须执行关闭包含子文档再开启包含子文档,然后才能正常搜索到子文档。

    就是我在录屏里的操作一模一样试一遍就能复现 bug 了,我也找群友测试过确认可以复现。

    就是你们自己开发的功能【指定路径】不是在某个文档里打开搜索啊!!!!

    就是你们自己开发的功能【指定路径】不是在某个文档里打开搜索啊!!!!

    就是你们自己开发的功能【指定路径】不是在某个文档里打开搜索啊!!!!

    这样强调可以看到了吗?

    这个功能的命名方式搞的我们全程交流完全错频。

  • 我复现了楼主的问题。

    他的意思是,当全局搜索指定路径时,思源会默认勾选包含子文档,但此时,包含子文档这个参数没有生效,只能点击图标取消包含再点击触发包含。

    image.png

    以下是点击取消包含再点击,才有结果。

    image.png

    1 回复
  • 你用的是 Ctrl F 还是 Ctrl P?

    2 回复
  • 我用的是 Ctrl+P

    步骤是:

    1.Ctrl+P 打开搜索框

    2.指定路径选某个文档(含子文档的)、此时包含子文档会自动勾选

    3.搜索子文档的某个内容无法搜索到。

    4.点击包含子文档取消该勾选后再次点击包含子文档选中,再次搜索上述文档则可以搜索到。

    如果是 Ctrl+F,那么搜索框是自带指定路径,但没有选中包含子文档,此时手工选中包含子文档,可以搜索出来对应的内容。

    二者的区别在于:全局 Ctrl+P 搜索框里指定路径默认自动勾选的包含子文档这个功能没有生效

  • Gaffey

    我测试过无论是 Ctrl+F 还是 Ctrl+P 都会出现同样的 bug。

    未免又出现我表达能力导致的沟通问题,我再录屏演示:

  • 楼主的视频将问题更具象了,就是指定路径(含子文档)的情况下,自动勾选的包含子文档功能没有按预期生效。

  • 我和 V 稍后会看的,现在还在分析其他问题,感谢理解。

  • 已经可以重现,从指定路径中选中笔记本不会有该问题,选中具体目录时搜索结果不包含子文档。

    下个版本修复 Issue #7642 · siyuan-note/siyuan

    1 回复
  • Gaffey 1

    可以重现就好,没有想到这个反馈会出问题在我的语言表达能力造成的误会上 orz。我就是担心因为前面沟通的误会导致这个 Bug 没有被记录,两位辛苦了。

请输入回帖内容 ...

推荐标签 标签

  • Python

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

    556 引用 • 675 回帖
  • Kubernetes

    Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。

    116 引用 • 54 回帖 • 1 关注
  • 印象笔记
    3 引用 • 16 回帖 • 1 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 183 关注
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    85 引用 • 165 回帖 • 1 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    298 引用 • 763 回帖
  • 钉钉

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

    15 引用 • 67 回帖 • 290 关注
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    267 引用 • 666 回帖 • 1 关注
  • 机器学习

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

    83 引用 • 37 回帖 • 1 关注
  • Tomcat

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

    162 引用 • 529 回帖 • 6 关注
  • DNSPod

    DNSPod 建立于 2006 年 3 月份,是一款免费智能 DNS 产品。 DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。

    6 引用 • 26 回帖 • 532 关注
  • 互联网

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

    99 引用 • 367 回帖
  • CongSec

    本标签主要用于分享网络空间安全专业的学习笔记

    1 引用 • 1 回帖 • 29 关注
  • 七牛云

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

    28 引用 • 226 回帖 • 132 关注
  • Laravel

    Laravel 是一套简洁、优雅的 PHP Web 开发框架。它采用 MVC 设计,是一款崇尚开发效率的全栈框架。

    20 引用 • 23 回帖 • 740 关注
  • 架构

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

    143 引用 • 442 回帖 • 1 关注
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 4 关注
  • Unity

    Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

    25 引用 • 7 回帖 • 131 关注
  • RESTful

    一种软件架构设计风格而不是标准,提供了一组设计原则和约束条件,主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

    30 引用 • 114 回帖 • 6 关注
  • Electron

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

    15 引用 • 136 回帖
  • 服务

    提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。

    41 引用 • 24 回帖 • 4 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 678 关注
  • 持续集成

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

    15 引用 • 7 回帖
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    494 引用 • 928 回帖
  • SendCloud

    SendCloud 由搜狐武汉研发中心孵化的项目,是致力于为开发者提供高质量的触发邮件服务的云端邮件发送平台,为开发者提供便利的 API 接口来调用服务,让邮件准确迅速到达用户收件箱并获得强大的追踪数据。

    2 引用 • 8 回帖 • 492 关注
  • HTML

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

    108 引用 • 295 回帖 • 1 关注
  • Facebook

    Facebook 是一个联系朋友的社交工具。大家可以通过它和朋友、同事、同学以及周围的人保持互动交流,分享无限上传的图片,发布链接和视频,更可以增进对朋友的了解。

    4 引用 • 15 回帖 • 440 关注