Simple ElDoc frontend that displays documentation in a floating child frame
e02f496368
- (eldox-box--eldoc-message-function): doesn't cleanup childframe when passed with nil anymore I finally figured out why the flicker occurs: 1. when eldoc asks for doc string, elgot returns nil immeditaly 2. when you move out of a eldoc-cable symbol and move back in the childframe isn't cleaned up. Adn eldoc recieves nil from eglot, passes that to message function (eldoc-message) -> (eldoc-message-function), eldoc-box gets it and cleans up childframe. Then eglot recieved doc string from server and calls (eldoc-message), childframe is then redisplayed. Since eldoc-box cleans up after itself and doesn't rely on eldoc to cleanup. A quick fix is simply don't clean up when eldoc-box (eldoc-box--eldoc-message-function) recieves nil from eldoc (eldoc-message). |
||
---|---|---|
eldoc-box.el | ||
README.org | ||
screenshot.png |
ElDoc box
This package displays ElDoc documentations in a childframe.
Install
Get the file, add to load path, and
(require 'eldoc-box)
Usage
Function
-
eldoc-box-hover-mode
- Show documentation upon hover. Note that you need to enable ElDoc mode for this to work.
Face
-
eldoc-box-border
- Adjust
:background
of this face for border color. -
eldoc-box-body
- Adjust
:background
of this face for background color of childframe.
Variable
-
eldoc-box-max-pixel-width
&eldoc-box-max-pixel-height
- Set them according to the screen resolution of your machine.
-
eldoc-box-only-multi-line
- Set this to non-nil and eldoc-box only display multi-line message in childframe. One line messages are left in minibuffer.
Use with eglot
As of writing this README, eglot doesn't have a public mode hook, use this hook:
(add-hook 'eglot--managed-mode-hook #'eldoc-box-hover-mode t)