这个话题想了很久,还是提一提,不求近期有改进,但希望在思源长期计划中有所考虑。
附件上传了新概念 4 的 md 文件,作为测试的材料,主题为默认主题。感兴趣的朋友可以导入一下进行搜索测试,或者测试一下自己现有的一些英语文本。
现有问题
现在的搜索方案使用了分词器(技术上不懂),中文搜索看介绍说比原来的方案更好(比如支持中文单字搜索)以及 query 语句等等。
但是这个方案的副作用就是,所有以空格区分单词界限的语言,英法德意西等等,两个词及以上的搜索体验很不乐观。
首先,不能以普通用户熟悉的一些很自然搜索方式进行搜索。比如,more than 这个词组,用 VSCode 搜索有 9 个结果。在思源笔记里,鼠标划选词组 more than 并按搜索快捷键,或者呼出搜索窗口在搜索框输入 other than,出来的结果是很多条 other 或 than 的结果。而且思源目前没有搜索结果总数,用户甚至都没法数出有多少结果。上述软件反馈在直觉上很不自然,搜索结果也不是用户想要的。(现有的搜索方案,空格表示条件“或”)如下图:
其次,即使点击“查询语法”,给关键字前后加半角双引号,搜索结果栏貌似正常,但是,结果栏可能无高亮,文档页面的高亮也可能不显示。搜索结果的数量方面,自己数了一下思源搜索栏是 8 个,在 VScode 中搜索发现某一段 more than 有两处,思源在搜索栏的结果显示为一条。如下图:
如果搜索的是句子(查询语法 + 双引号),高亮问题也非常干扰用户的注意力。如下图:
第三,如上所述,搜索窗口没有显示搜索结果,结果总数是否正确需要用户自己数或者太多没法数。同一段如果有多个关键字命中,思源显示的结果栏和结果总数就会有差异,这种情况下就更需要有一个搜索结果的数字显示。
相关影响
即便上面所说的查询语法 + 关键字引号的高亮问题、搜索数量显示问题解决了,从效率上看,现有搜索方案离最佳实践还有相当距离。毕竟用最自然的方式搜索是绝大多数人的日常操作,不太可能有很多用户高频次的使用查询语法、query 语句进行查询。
目前的搜索体验,往小了说,会影响所有西方语言(空格分词)学习者的搜索效率。关键词前后输入引号也差不多要用两秒吧,如果是输入法是中文状态还要切换一下到英文状态。除了效率问题。更大的问题是,用户在其它文字编辑软件搜索时都是很自然的搜索体验,但在目前的思源还要让用户增加心智负担,为了一个正常的搜索结果,甚至可能要去了解并不熟悉的“查询语法”。
往大了说,目前的搜索方案可能会影响思源的国际化。西方语言(空格分词)学习者的基本搜索操作也是西方国家普通用户的搜索日常,甚至他们的搜索行为还要复杂,比如有各种特殊字符及符号(之前一些用户也反馈过某些字符需要加双引号才能搜索正常)。这些国家的普通用户估计会很难理解、适应目前这种搜索方法和搜索结果的呈现方式。
一个好的搜索方案,应该是以自然的、有效率的方式照顾大多数普通用户。然后对一些 power 用户,通过点击特定按钮/图标的方式实现更高级的查询方式,比如一些知名文本编辑软件对普通文字搜索和正则表达式搜索的处理方式。
而思源现在的搜索方案,貌似是反过来了,普通情况的输入,搜索会给出一个 power 用户可能要的结果。而需要一个普通的搜索结果,却要去做 power 用户的操作。
以上一些不成熟的看法,也可能有误漏之处,欢迎大家指出。
附件:新概念 4.md
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于