Snails超级快的模糊搜索框架

:joy: 感觉有点理解懒猫不发melpa的原因了,每次发布插件都有一堆回复,根本忙不过来的感觉

大牛的痛苦,我等凡人还是难以体会 :joy_cat:

今天通过了1个多小时的对比,我还是移除了 fd 和 rg 的语法高亮支持,因为加上高亮以后性能下降几倍,去掉高亮后,不管目录多大,都是瞬间出结果。

为了高性能牺牲掉关键字高亮。

因为每个人都有自己喜欢的环境,其实大部分功能只花 20%的时间就搞定了,但是要花 80% 的时间去满足各种人的喜好。

当年发个EmacsWiki,我基本每周都要为各种各样的人加功能,现在除了bug,我真的不太在意别人环境的问题,就像我根本不关心Win10有啥功能,为啥 openbox 这种渣渣窗口管理器连最基础的 child frame 和 input focus 都做不好。

我现在只关心我自己用的爽,我不想用的功能,欢迎发送补丁帮忙,如果我不用的功能,我不想花任何时间在上面。

2 个赞

今天发现 snails-backend-fd 和 snails-backend-rg 这两个插件的搜索目录居然一直是 snails 启动的那个目录,囧

最新版已经修复上面这个问题,在哪个目录调用snails, 就会在对应的目录下进行搜索过滤了。

可以可以,懒猫辛苦了

这个细节很好,和alfred 一样,focus out 就隐藏,我一直这么设置的。不过打开的时候还是两窗口,只有研究下 posframe 了。

你的 ivy-posframe 是一个图标吗? 还是 focus-out 的时候 ivy-posframe 就隐藏了?

posframe 的参数我研究过了,没啥特别的

ivy-posframe是一个图标一个窗口。snails 是一个图标两个窗口。

emacs

1 个赞

我发现了这个问题,还在总结现象,然后描述了好久,准备回复的,然后修好了。。。用emacs还是得好好学一下lisp

哈哈哈哈,有问题欢迎反馈哈,我也是才发现这个诡异的问题的。

最新版是:

  • Mac下 focus out 就自动隐藏 snails frame, 即使有两个图标你也看不到,哈哈哈哈
  • Windows我不用很多年
  • Linux下很多用户反馈正统的DE都没问题,但是也有很多奇奇怪怪的WM,所以focus out代码没有在Linux平台启用

child-frame 是挑窗口管理器的,这个好像emacs文档里面有提及,有些窗口管理器如果没有实现某些功能, childframe是有问题的

最新版支持了 imenu, 可以快速方便的查找函数或者变量了

Jul-26-2019%2010-03-17

1 个赞

@cireu 我这几天用了 fuz.el 的排序 snails/snails-core.el at 3541d16abbc67130ec8e01bb670246f7b4e31f23 · manateelazycat/snails · GitHub

感觉排序的效果并不明显,是不是我用错了 fuz.el 了?

有效果啊。

可能是体感问题,老实说我写完fuz之后体感和flx差异并不大,极端情况(上万candidate)fuz才能比flx快

用helm-fuz试了一下

可能是我一上来就用这么好的库,没有对比过其他不好的排序的效果吧, 哈哈哈。 你帮我看看我那个函数写的有毛病没?

Snails 里面的每一个候选词其实是 (list candidate-name candidate-content) 的格式,我不晓得我的比较是不是写对了?

我只是个API的搬运工 :joy:,没有核心科技的。算法是


我看你用string>解决分数相同的条件,这个函数的行为不好判断啊,我是直接对比长度了。

%E5%9B%BE%E7%89%87

为啥你们的输入框都那么高呢?

可能是DPI问题?