Sublime Text“Goto Anything”搜索前面的数字是多少?

时间:2016-05-06 14:16:34

标签: sublimetext fuzzy-search string-search

每当我在Sublime Text中使用Goto Anything搜索并开始输入以搜索当前项目中的文件时,我会得到一大堆基于Sublime Text的模糊搜索算法的结果,每个算法前面都有一个数字。

我认为这是搜索“力量”的某种分数,但我只想确认一下。这个数字基于什么?

1 个答案:

答案 0 :(得分:2)

似乎数字确实代表了匹配强度,正如您所假设的那样。

我在测试你的假设时注意到一个奇怪的效果,然后继续创建虚拟文件CustomCompletions.CustomCompletions& CustomCompletions没有扩展名的文件)以供进一步比较。

结果如下:

Demo

如您所见,

  1. CustomCompletions排名最高的是1524
  2. CustomCompletions.py& CustomCompletions.todo的排名为1507
  3. CustomCompletions.CustomCompletions& CustomCompletions.sublime-settings的排名为1490
  4. 所有剩余的文件(包含基本名称中的其他文字)继续获得较低的排名。
  5. 我发现奇怪的是第二个&尽管共享了与查询完全匹配的基本文件名,但第3组具有不同的排名。

    我认为可能是由于文件扩展名中的字符数,所以我通过创建以下文件来测试该假设:

    CustomCompletions.a
    CustomCompletions.ab
    CustomCompletions.abc
    CustomCompletions.abcd
    CustomCompletions.abcde
    CustomCompletions.abcdef
    CustomCompletions.abcdefg
    CustomCompletions.abcdefgh
    CustomCompletions.abcdefghi
    CustomCompletions.abcdefghij
    
    CustomCompletions.1
    CustomCompletions.12
    CustomCompletions.123
    CustomCompletions.1234
    CustomCompletions.12345
    CustomCompletions.123456
    CustomCompletions.1234567
    CustomCompletions.12345678
    CustomCompletions.123456789
    CustomCompletions.1234567890
    

    但事实证明它们都排在1507,排名与第二组相同。

    由于这一结果,我仍然不确定哪些条件会影响共享基本名称的文件的排名,该基本名称与Goto Anything查询完全匹配,但具有不同的文件扩展名。