pr我重新更新了下,使用错误捕捉就可以了。即使出错也不会影响用户输入。
这个成本太高,听说也不稳定
你那边测试弹出慢么?基本上 company-yasnippet--doc
除了启用 major-mode 渲染外,其他都不会导致性能问题。major-mode上的hook如果太慢可能会影响性能,基于这个考虑, company-yasnippet--doc
里面可以局部设置 major-mode-hook为 nil
。这样就好了。
另外,我遇到了这个问题,不知道你们有没有遇到:
不,我指的是普通的候选的弹出,不是 doc。如果有完全的异步的候选列表的话,体验会好的多。
看了下老铁的 PR,写的很详细
PR 合并了更新下试试。
测试ok了。感谢
就yasnippet的模板展开来说 还是 ivy-yasnippet 有优势
还是用doc buffer展示snippet原有的代码比较好
因为snippet里稍微涉及点复杂的函数 在doc buffer的环境中就会失效
刚更新,发现一个问题:如果用 company-box
,提示的 buffer 和当前 buffer 是同一个名字,保存时会混乱。
代码里不应该用 (setq-local buffer-file-name file-name)
,而是应该用(let ((file-name (buffer-file-name))
,或者在 调用yas-exapnd-snippet
后重新设置为 nil。我上面的示例最早也是用的 setq,后来更新了。
额故意让docbuffer和当前buffer一个名字的,这样展开比较容易看到效果吧
这样保存文件可能出现冲突,互相覆盖。应该用 let
ok 作者fix了 更新就可以了。查看一下all-the-icons-rich把 提了issue 可能是字体问题导致的不对齐。
那个修改 all-the-icons-ivy-rich-icon-size
就可以了,我也遇到过这个问题,提过issue,你翻一下就知道了。
已经回复你了。
跟这个一样的
thanks 搞定
新添加个变量让 annotation更加自由的自定义了
(defvar company-yasnippet-annotation-fn
(lambda (name)
(concat
(unless company-tooltip-align-annotations " -> ")
name))
"Function to format completion annotation.
It has to accept one argument: the snippet's name.")
啥问题???
这种情况可以用with-demoted-errors