Simple ElDoc frontend that displays documentation in a floating child frame
Go to file
2019-01-05 19:45:50 -05:00
eldoc-box.el Don't cleanup when clicking popup 2019-01-05 19:45:50 -05:00
README.org GitHub doesn't support Org link 2019-01-04 19:22:45 -05:00
screenshot.png Update README (and screenshot) 2018-12-26 16:38:01 -05:00

ElDoc box

This package displays ElDoc documentations in a childframe.

/jessieh/eldoc-frame/media/commit/a34e2e2e6ee7e2caf9b94add040497000194a8fe/screenshot.png
Using with eglot in python-mode

Install

Get the file, add to load path, and

(require 'eldoc-box)

Usage

Function

Enable either mode will make eldoc display documentation on a popup childframe. The difference is the position of the childframe — the first minor mode displays the childframe on the (left or right) upper corner, while the second displays the childframe right below point.

Note that eldoc-box-hover-at-point-mode enables eldoc-box-hover-mode — it just adds some more configuration on top of the latter, so you want to disable “at-point” mode before switching to eldoc-box-hover-mode.

eldoc-box-hover-mode
Display documentation of the symbol at point in a childframe on upper corner.
eldoc-box-hover-at-point-mode
Display documentation of the symbol at point in a childframe below point. (That's what the at-point part mean)

Face

eldoc-box-border
Adjust :background of this face for border color.
eldoc-box-body
Adjust :background and :font of this face for background color and font of the childframe. I suggest to use a nice Sans Serif font, such as Source Sans Pro.
eldox-box-eglot-help-at-point
See below.

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.
eldoc-box-cleanup-interval
After this amount of seconds will eldoc-box attempt to cleanup the childframe. E.g. if it is set to 1, the childframe is cleared 1 second after you moved the point to somewhere else (that doesn't have a doc to show). This doesn't apply to eldoc-box-hover-at-point-mode, in that mode the childframe is cleared as soon as point moves.

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)

To keep eldoc from displaying documentation at point without enabling any minor mode above: (add-to-list 'eglot-ignored-server-capabilites :hoverProvider).

Eldoc-box also provides a convenient command eldoc-box-eglot-help-at-point. Calling this command on a symbol displays a documentation childframe at point. No need to enable any minor mode for this.

Contributors