今天早上新加了一个补丁, 发布了 Snails 最新版本 6.0
按前缀来搜索不同的内容
Snails 6.0 的主要更新是支持像VSCode那样根据前缀来搜索不同的后端内容。
- Snails启动后,默认在标签分组、缓存列表、最近访问文件、书签这些最高频的后端中进行搜索,以快速切换正在使用的文件
- 当输入中包含前缀 > 时,Snails搜索所有可以执行的命令
- 当输入中包含前缀 @ 时,Snails只在函数或变量定义中进行搜索,方便快速进行定义跳转
- 当输入中包含前缀 # 时,Snails使用 ripgrep 搜索当前文件的内容
- 当输入中包含前缀 ! 时,Snails使用 ripgrep 搜索当前项目里所有文件的内容
- 当输入中包含前缀 ? 时,Snails使用 fd、projectile、mdfind、everything 等后端进行全局文件名搜索,以快速找到并打开磁盘中的文件
这样设计的作用是,Snails默认只搜索打开的文件,符合99%的默认使用习惯,当用户需要特殊搜索,比如函数定义的时候,可以在输入的内容加上前缀 ,使得Snails只在用户指定的后端中进行定向搜索。
通过这样的设计,可以同时满足绝大多数用户的使用习惯,又不会因为默认加入太多的后端导致搜索信息过多的问题,最终提升用户的搜索效率。
自定义搜索后端
当然,如果你不喜欢前缀的方案,可以通过自定义后端列表的方式进行自定义搜索:
(snails '(snails-backend-buffer snails-backend-current-buffer))
比如按照上面的示例,Snails只会在缓存列表和当前文件内容这两个后端中进行搜索,并且忽略用户输入的任何前缀,这种自定义后端的搜索体验和Helm的体验保持一致。
如果你只自定义一种后端,搜索体验将和Ivy保持一致。
That’s all, enjoy!