对比了下lsp-ivy,发现查询workspace-symbol 时,需要指定要查询的 symbol
比如 调用(lsp-bridge-call-file-api "workspace_symbol" "LspBridge")
,能正常返回结果
再根据返回结果的类型加上face 和模糊查询 就很完美了hhh
对比了下lsp-ivy,发现查询workspace-symbol 时,需要指定要查询的 symbol
比如 调用(lsp-bridge-call-file-api "workspace_symbol" "LspBridge")
,能正常返回结果
再根据返回结果的类型加上face 和模糊查询 就很完美了hhh
gopls 这里也没有 symbol 返回
加了查询字符串的功能, 类型和模糊查询欢迎PR
感谢大佬补丁,赞呀
退格和kill-word时有办法禁止激活补全吗?
确实,在kill-word和退格的时候,按的太快就会卡
C-h k 键入 C-d 显示是delete-char
C-d runs the command delete-char (found in global-map), which is an
interactive built-in function in ‘C source code’.
It is bound to C-d.
(delete-char N &optional KILLFLAG)
(add-to-list 'lsp-bridge-completion-stop-commands 'delete-char)
还是会激活补全
用 “delete-char”
必须得是字符串才行
感谢 紫薯布丁
我谢谢你才对,要不是你提。我都不知道还能这样解决。 不过最近lsp-bridge的性能很好了,用不用这个差别不大。
新问题来了。
(defun wk/acm-insert-common-or-complete-1 ()
"Insert common prefix of menu.11"
(interactive)
(when (acm-frame-visible-p acm-frame)
(let* ((common-string "")
(items (mapcar (lambda (v) (plist-get v :label)) acm-menu-candidates))
(item-min-length (cl-reduce #'min (mapcar #'string-width items)))
(input-prefix (acm-get-input-prefix)))
(dolist (index (number-sequence 0 (1- item-min-length)))
(let* ((char-list (mapcar (lambda (i) (substring i index (1+ index))) items))
(first-char (cl-first char-list)))
(when (cl-every (lambda (x) (string-equal x first-char)) char-list)
(setq common-string (concat common-string first-char)))))
(if (and (> (length common-string) 0)
(> (length common-string) (length input-prefix)))
(insert (substring common-string (length (acm-get-input-prefix))))
;; 上面是拷贝过来的源码,不用看,主要是下面的修改
;; 注释掉下面这一行,改成了如果没有可用的前缀,就直接使用第一条补全
;; (message "No common string found")
;; 下面的progn时刚加的
(progn
(wk/acm-complete-1)
(acm-hide))
)
)))
新问题是我把这个 wk/acm-insert-common-or-complete-1
绑定了快捷键并且加入了 acm-continue-commands
,这时候怎么实现
现在上面的1 是可以的,2怎么实现呢,
建议重写一个命令,比如
(defun acm-insert-common-or-complete()
"Insert common prefix of menu or complete."
(interactive)
(let ((inhibit-message t)
(num (length (acm-get-input-prefix))))
(acm-insert-common)
(when (= num (length (acm-get-input-prefix)))
(acm-complete))))
升级了下系统:macOS Ventura 13.0, icon 变成方块:
不影响使用,还是报告一下,同时请教大佬们,可能的排查方向。 (Emacs 和 Ruby 是 Full Disk Access. Emacs 是 29plus 安装带支持svg显示) 谢谢大家 ~
我这升级到 ventura 以后。29的svg tag 跟你一样有问题
28plus也有同样的问题,不过不影响使用
ventura出了不少bug。reddit上还有人反馈升到ventura以后,pdf-tools的pdf-view-mode下,鼠标点击pdf所在的窗口就会导致emacs崩溃
写代码的时候经常会进行 git checkout 操作, 然后执行 revert-buffer 操作重新加载文件内容。
今天发现在 revert-buffer 执行的过程中, lsp-bridge 依然会发送LSP请求, 导致 revert-buffer 后, buffer 的内容会乱掉。
We use `lsp-bridge-revert-buffer-flag' var avoid lsp-bridge send chan… · manateelazycat/lsp-bridge@86ca73a · GitHub 这个补丁修复了 lsp-bridge 这个问题。
eaf-git 的用户在界面执行 checkout 操作后, eaf-git-checkout-files 会自动查找 checkout file 对应的 buffer 做 revert-buffer 操作。
magit用户可以参考 eaf-git 的实现 eaf-git/eaf-git.el at 47551e4bcad8ed0dd47cf95ec882a0960c9342e7 · emacs-eaf/eaf-git · GitHub