Snails超级快的模糊搜索框架

bookmark 原来有图标吗?

Snails会自动根据主题深浅调整颜色。

你最好截图给我看一下。

哦,抱歉,有可能是我自己写的有,然后记错了。

这个是和主题有关,现在Snails是根据主题的颜色变化的,你可以直接修改你的主题选中效果,Snails会自动保持队形。

哦哦,原来如此,我去研究下。

我看了下原代码:

    (set-face-attribute 'snails-select-line-face nil
                        :background default-foreground-color
                        :foreground default-background-color)

意思是 snails-select-line-face 只是主题 bg 和 fg 的互换吗?那这对白底黑字的主题,也太不友好了吧 :joy:

你可以提供一下选项,默认跟随主题,选项打开时,用自定义颜色。

主要是跟随主题适用性强,要不众口难调。

我这代码水平还是不出来丢人现眼了 :joy: 。自己魔改一下本地的算了。

问下,你那里 snails-backend-current-buffer 能用吗?我这里用了最小配置 + 最新版依旧不能使用, ripgrep 也装了。显示:

Debugger entered--Lisp error: (wrong-type-argument overlayp nil)
overlay-start(nil) (goto-char (overlay-start
snails-select-line-overlay)) (save-current-buffer (set-buffer
snails-content-buffer) (goto-char (overlay-start
snails-select-line-overlay)) (end-of-line) (backward-char) (let
((overlays (overlays-at (point)))) (catch 'candidate (while overlays
(let ((overlay (car overlays))) (if (eq (overlay-get overlay ...)
'snails-candiate-content-face) (progn (throw ... ...)))) (setq
overlays (cdr overlays)))))) snails-candidate-get-info() (let
((candidate-info (snails-candidate-get-info))) (if candidate-info
(progn (snails-backend-do (nth 0 candidate-info) (nth 1
candidate-info))))) snails-candidate-do()
funcall-interactively(snails-candidate-do)
call-interactively(snails-candidate-do nil nil)
command-execute(snails-candidate-do)

同时给一下重现步骤,不知道你干了什么。

就是最小配置启动 snails 后,运行 (snails '(snails-backend-current-buffer)) 。界面能打开,按了回车后就会报错。

最新版已经修复这个问题,注意 snails-backend-current-buffer 这个后端最低要求输入三个字符,要不启动就是空白的。

2 个赞

各位大佬,麻烦帮忙看看我在mac catalina下用use-package配置snails的姿势对不对:

m-x snails可以使用。只是emacs启动messages报了警告:

这个警告应该是环境路径之类的问题,不知道会不会影响snails的全部功能发挥。请问这个警告如何处理掉呢?我一直对环境路径没什么理解。另外,我这个use-package配置还能不能优化一下?谢谢!

经常报:$Error running timer ‘snails-render-bufer’: (beginning-of-buffer) [27 times] 卡死,是不是查询太慢缘故?

emacs -Q对比排查,给一下重现步骤。

这个 warning 是 exec-path-from-shell 报出来的。没什么关系。

请问怎么设置把 snails 的输入光标改小一点呢, 默认的这个太大号了

snails-input-buffer-face and snails-input-buffer-text-scale

MacOS 10.15.4, emacs-plus 27

M-x snails RET 呼出 snails 窗口后,按 ESC ESC ESC 隐藏窗口(或另外两个隐藏快捷键,效果一样),这时发现 emacs 失去焦点,用 CMD+TAB 切换至别的 App 后再切回来, snails 窗口仍显示,只有用鼠标点一下 snails 之外的 emacs 窗口区域时, emacs 窗口才能正常获得焦点,此时再用 cmd + tab 切换其它 app 后再切回来,不再显示 snails 窗口了。

emacs -Q 表现相同。

原来做过失去焦点的设定,但是Bug太多,特别是Mac,最后为了稳定性,去掉了这种失去焦点消失的设定。

不要这么操作就行了。

那现在用完 snails 后按 ESC ESC ESC 隐藏窗口后我必须要用鼠标点一下 emacs 窗口才能继续使用,这很影响体验啊

可能我刚才没说明白,不是因为我按 alt+tab 而使 emacs 失去焦点,而是用完 snails 后 emacs 就失去焦点,而我是尝试用 alt+tab 切换的方式来重新获取焦点。