我知道这个函数,但是它太慢了,卡手。
Hi, 我在 *scratch*
buffer 里 lsp-bridge
没法补全,在文件比如test.el 里是可以的
尝试将 *scratch*
的mode改成 emacs-lisp-mode 也没用
lsp-bridge
的 commit 是 0f9e43b106dd28b096c55553695ab438c6fb192f
环境是 MacOS M1
这是我的最小配置
(add-to-list 'load-path "~/.emacs.d/site-lisp/lsp-bridge")
(add-to-list 'load-path "~/.emacs.d/site-lisp/yasnippet")
(require 'yasnippet)
(require 'lsp-bridge)
(yas-global-mode)
(global-lsp-bridge-mode)
这个 buffer 的 major-mode 是啥?
lisp-interaction-mode
改成 emacs-lisp-mode 也不行
看到了Message里有打印
[LSP-Bridge] cannot be enabled in non-file buffers.
但 elisp 补全应该是不需要 file
我在 ubuntu20.04上面 不能弹出 补全框(acm-mode),在其他环境是可以的。
不知道是不是 中文编码的问题。因为我在这个环境下 使用另一个插件也有问题,现在也没有解决。
大佬,这个 english-helper 很好用。早在之前的 company 版本我就一直用,并且加了自定义的其它语种的 backend。
想问一个有点过分的问题!
目前 acm 框架是否可以添加自定义的 backend 呢?如果可以,方法是怎样的呢?我蒙着用 advice ,但是没成成功…
;;; --- english-helper for korean-helper
(add-to-list 'load-path (concat user-emacs-directory "lisp/blove-extra/lang-helper"))
(require 'blove-backends-kor-zh-15000)
(defcustom acm-backend-kor-min-length 1
"Minimum length of korean word."
:type 'integer)
(advice-add 'acm-backend-english-candidates
:after (lambda(keyword)
(let* ((candidates-kor (list)))
(when (>= (length keyword) acm-backend-korean-min-length)
(dolist (candidate blove-kor-zh-15000)
;; (when (string-prefix-p (downcase keyword) candidate)
(when (string-prefix-p candidate)
(add-to-list 'candidates-kor (list :key candidate
:icon "translate"
:label candidate
:display-label candidate
:annotation (get-text-property 0 :initials candidate)
:backend "korean")
t))))
candidates-kor))
)
已经修复了。
就看 acm/acm-backend-* 文件,依葫芦画瓢吧, 都是非常简单的代码。
这种问题先自己 emacs -Q
对比测试一下再问吧, 每个 emacser 的环境都复杂,模糊的一句话我就能修复你的问题,我就是神仙了,哈哈哈哈。
好的!我先研究研究!有不懂的地方再向大佬请教!
C-x 5 2 分frame后 在多显示器上补全时,补全列表会强制跑到 另外一个frame上。
没有使用多 frame 的习惯,研究提PR吧,我最近忙,没时间修了。
好像在计算位置的时候的问题,如果我先在其中一个frame补全过, 那么用第二个frame写代码补全时,就还在前一个frame上显示。 神奇的是docs显示位置又是正常的。
acm可能存在性能问题…我编写ts时卡得不要不要的…
不清楚是不是吐的补全项太多了,有没有什么方法可以调试的,现在写ts暂时把lsp-bridge-mode给关闭了
我写python的时候也有这种问题,后面我更新了emacs-git,就正常了。
我用了吞吐量最大的 volar, 很流畅呀。
emacs -Q
排除一下配置问题吧,比如是不是用了 js2-mode 这种超级卡的模式?
Macos在终端可以执行jdtls,但是emacs出现以下错误,有人碰到过吗?
[LSP-Bridge] Error: can’t find command jdtls
自己手动下载的包配置了PATH也不行,直接brew install jdtls就可以正常使用。