Subject: bug#6321: 24.0.50; eldoc-documentation-function only called when changing line

From: Štěpán Němec <[email-masked]>
Date: Tue, 01 Jun 2010 13:21:25 +0200

Tassilo Horn <[email-masked]> writes:

> In a home-brewn language mode, I use the eldoc facilties.
>
> (defun tg-documentation-function ()
>   (message "Called!")
>   (let ((thing (thing-at-point 'sexp)))
>     (if (string= thing tg--last-thing)
>         tg--last-doc
>       (setq tg--last-thing thing)
>       (let ((eid (tg-edge-p))
>             (vid (tg-vertex-p)))
>         (cond
>          ((tg-incidence-list-p)
>           (tg-eldoc-incidence))
>          (eid
>           (tg-eldoc-vertex-or-edge-at-point 'EdgeClass))
>          (vid
>           (tg-eldoc-vertex-or-edge-at-point 'VertexClass))
>          (t
>           (setq tg--last-doc nil))))
>       tg--last-doc)))
>
> (defun tg-eldoc-init ()
>   (set (make-local-variable 'eldoc-documentation-function)
>        'tg-documentation-function)
>   (add-hook 'after-save-hook
>             'tg-init-schema nil t)
>   (tg-init-schema))
>
> This worked very nice some time ago, but now my documentation function
> is only called if point changes the line, but not on point movement on
> the current line.

An idea: did you check that `eldoc-message-commands' contains the
commands after which you expect Eldoc to show the info? Maybe the recent
bidi changes could affect this (i.e., some commands were renamed IIRC)?

     Štěpán