感谢 Phillip Kaludercic, 是他提议将其收录到GNU elpa 或者NonGNU elpa。
在此也感谢所有提出建议,提交pull request, 提出bug 以及为我点赞点星的朋友们。
由于没能说服公司签Disclaimer, 最终选择NonGNU elpa 。
感谢 Phillip Kaludercic, 是他提议将其收录到GNU elpa 或者NonGNU elpa。
在此也感谢所有提出建议,提交pull request, 提出bug 以及为我点赞点星的朋友们。
由于没能说服公司签Disclaimer, 最终选择NonGNU elpa 。
eldoc-mouse 会影响tooltip-mode,有办法解决吗?
我不了解tooltip-mode 能不能描述一下问题具体表现?
tooltip-mode主要用来显示一些提示信息,比如鼠标放到mode-line,会显示相应的帮助。在Emacs31中,elisp可以显示鼠标下函数和符号的帮助文档,不过不是使用child frame。但是,启用eldoc-mouse-mode之后,当前buffer下的tooltip就失效了,移到mode-line上也看不到tooltip。猜测这个鼠标事件处理是有冲突的。
我也遇到这个冲突了
必须要emacs 31吗?
不冲突才奇怪,emacs的margin也这样,一个包的能显示,另外的就不显示。
没有理解,这个跟eldoc-mouse 和 tooltip-mode 有关系吗?
我用Emacs30和31都有问题,应该跟版本没关系。
刚刚花了些时间调查,没找到什么原因。针对你遇到的问题,elisp 下的tooltip 都那么好了,也就没必要在其buffer用eldoc-mouse 了
所以,eldoc-mouse是不是可以支持tooltip方式显示?现在其他语言下lsp还没做到elisp中的效果 ![]()
Tooltip 比child frame 还好啊?你帖个图看看呢,我现在还在用30。lsp 返回的是markdown, tooltip 不知道支持格式化markdown 不。
(with-eval-after-load 'tooltip
(defun my/eldoc-mouse--protect-tooltip (orig-fn &rest args)
"当 this-command 是 eldoc-mouse 的鼠标移动事件时,不隐藏 tooltip。"
(unless (eq this-command 'eldoc-mouse-doc-on-mouse)
(apply orig-fn args)))
;; 拦截 tooltip-hide,为其添加保护逻辑
(advice-add 'tooltip-hide :around #'my/eldoc-mouse--protect-tooltip))
其实emacs包干扰是件特别常见的事情。干扰的好就是特性,干扰的差就是bug。
Toopltip 可不比child frame。frame 上的文本有文本属性可以设置,显示的更丰富,功能也多。Toopltip则偏向简易使用。
你这个方法是工作的,只是我不理解原理,为啥会eldoc-mouse为啥会触发tooltip-hide呢?
中间有个pre-command-hook,你让ai帮你解读呗。这种用法也许在其他操作上也有影响,只是没人发现也没什么影响。
格式不是markdown,功能比不上child frame。现在这个冲突确实有点不好,解决了就没啥问题。