Corfu 补全的使用姿势

也可以试试这个命令: M-x kind-icon-reset-cache,可以重置缓存。(切换主题也要执行一次,主题的图标才会刷新)

嗯,这是一个调试的好方法。

没说主题的事,还没在意到呢。

使用的时候,Emacs 有可能会出现一个小方框,一直显示不消失,一直没找原因。

先把 kind-icon 禁用看看是什么问题。

什么样的小方框?有截图吗?

我也没找到复现的方法,我先不禁用 kind-icon 使用试试看它还出现。实在是没找到是什么触发的。出现了截图发上来。

糊了一个 corfu 适用的 all-the-icons 的 icon 效果 可以参考隔壁帖子用 all-the-icons, 我个人认为比 kind-icon 好看 :rofl:

我给 kind-icon 提了个 Feature Request,希望加一个按钮一次性下载全部的图标。

目前用户是可以通过 M-x customize-group kind-icon, 打开 mapping 下面的 Preview 按钮来预览每一个图标的,点击预览就会触发下载。

下载慢,估计是跟网络有关,要自己解决访问 github 慢的问题。

1 个赞

all-the-icons 图标确实不错,不会像 svg 图标会出现高度不一的问题。 回头可以看看是否让 kind-icons 直接支持一下。

@ixnij

kind-icon 已经增加了一个命令,M-x kind-icon-preview-all 执行就可以预览全部预设的图标,并自动下载全部图标到 ~/.emacs.d/.cache/svg-lib 文件夹。

3 个赞

昨天搞了一下 corfu , yasnippet 搞不好,没有 Yasnippet capf 的后端。有点失望啊

我是用 consult-yasnippet

snippet 放到补全列表,反而显得比较乱。

1 个赞

这个好哈哈哈哈

用cape+company-yasnippet,不用安装company也可以使用,只不过corfu的quit-on-match之类的得关掉

怎么不安装company,来使用 cape+company-yasnippet?

我添加

(add-to-list 'completion-at-point-functions (cape-company-to-capf #'company-yasnippet)))

感觉没效果啊

(defun +complete ()
    (interactive)
    (or (yas-expand)
        (corfu-insert)))
(define-key corfu-map (kbd "<tab>") '+complete)
(define-key corfu-map (kbd "TAB") '+complete)

我是这样

company-yasnippet 这个文件包含在 company 包中,还是要安装 company 的吧?

这种实现方式,应该是没有 yasnippet 相关的 补全和文档提示。

我在 cape 包的 issue 中看到有道友尝试去实现 Create `cape-yasnippet` backend for yasnippet failed · Issue #37 · minad/cape · GitHub ,不过没成功。 minad 在自己的 tempel 包( 与 yasnippet 功能相似)中,提供了添加到 capf 的范例 GitHub - minad/tempel: TempEl - Simple templates for Emacs

好吧,我不需要这些,一般也就是 if 之后直接 tab 展开,如果是复杂的 snippet 还是 consult 吧

我也是这么用。自动提示文档感觉很烦,文档方面我都是手动按。

我说的文档提示是类似于 company-yasnippet ,只在 corfu 中进行简单的提示,不是 corfu-doc 那种再生成一个 frame 去展现。我个人比较喜欢这种方式,所以我目前还是通过 cape 去调用 company-yasnippet 。