Discussion:
dabbrev-hover.el v. 0.1
Vagn Johansen
2004-05-20 12:28:47 UTC
Permalink
Hi

When I tried your dabbrev-hover code I had complety forgotten that Emacs
21.3 does not support tooltips on MS Windows. I got it "working" by
replacing the two calls to tooltip-show to vj-tooltip-show:

(defun vj-tooltip-show (str)
(interactive)
(setq header-line-format (replace-regexp-in-string "\n" ", " str)))

Maybe you could detect if tooltip is possible and the fallback to my
function. It would be nice with some cleanup so that header-line-format
is set to "" when there are no dynamic expansions possible.

Is it suppossed to show only one suggestion? I would like to use
dabbrev-expand with a prefix argument. This would make the mode even
better.

I also think i would prefer if it did not fiddle with the RET keybinding
(customizable?).
--
Vagn Johansen
Enila Nero
2004-05-20 15:11:03 UTC
Permalink
Vagn Johansen <***@mail.tele.dk> writes:
[...]
Post by Vagn Johansen
I also think i would prefer if it did not fiddle with the RET keybinding
(customizable?).
[...]

Being in effect while in the minibuffer with the RET keybinding is a
bad recipe.

Is it needed at all in the minibuffer?

Enila
Vagn Johansen
2004-05-20 15:46:29 UTC
Permalink
Post by Enila Nero
[...]
Post by Vagn Johansen
I also think i would prefer if it did not fiddle with the RET keybinding
(customizable?).
[...]
Being in effect while in the minibuffer with the RET keybinding is a
bad recipe.
Yes, I quickly ran into problems in Info mode. I pressed i (for
Info-index), typed something and pressed RET. Expansion happened when I
did not want it too.

However the second t in dabbrev-hover-install is responsible for changing
the RET binding, so it could be disabled:

(dabbrev-hover-install t nil) ; first t means install globally

I wonder if dh-complete *must* be used. dabbrev-expand seems work to just
as well and I already have it bound to a convenient key.
Post by Enila Nero
Is it needed at all in the minibuffer?
The tooltip feature? I don't think so. I rarely use dabbrev-expand /
dabbrev-complete in the minibuffer.
--
Vagn Johansen
Kevin Rodgers
2004-05-20 17:02:23 UTC
Permalink
Post by Vagn Johansen
Post by Enila Nero
Post by Vagn Johansen
I also think i would prefer if it did not fiddle with the RET keybinding
(customizable?).
Being in effect while in the minibuffer with the RET keybinding is a
bad recipe.
Yes, I quickly ran into problems in Info mode. I pressed i (for
Info-index), typed something and pressed RET. Expansion happened when I
did not want it too.
However the second t in dabbrev-hover-install is responsible for changing
(dabbrev-hover-install t nil) ; first t means install globally
Another alternative:

(define-key dh-fancy-doing-mode-map (kbd "RET") nil)

Better yet, make the whole package smart about the minibuffer.

And finally, correct instances of '(keymap) with (make-sparse-keymap).
--
Kevin Rodgers
unknown
2004-05-20 19:11:13 UTC
Permalink
Post by Vagn Johansen
Post by Enila Nero
Is it needed at all in the minibuffer?
The tooltip feature? I don't think so. I rarely use dabbrev-expand /
dabbrev-complete in the minibuffer.
If you don't need the tooltip feature in the minibuffer, then why the
need to redefine tooltip-show? The default implementation should use
the minibuffer if tooltips are not supported.
Vagn Johansen
2004-05-20 22:56:45 UTC
Permalink
Post by unknown
Post by Vagn Johansen
Post by Enila Nero
Is it needed at all in the minibuffer?
The tooltip feature? I don't think so. I rarely use dabbrev-expand /
dabbrev-complete in the minibuffer.
If you don't need the tooltip feature in the minibuffer, then why the
need to redefine tooltip-show? The default implementation should use
the minibuffer if tooltips are not supported.
You are right. A "(require 'tooltip)" was missing in dabbrev-hover.el. It
is odd that there was no missing function error (it failed silently).

Now it works in the sense that instead of showing a "real" tooltip it
prints "Error while displaying tooltip: (void-function x-show-tip)" in
the minibuffer for half a second and then shows the possible expansion
(also in the minibuffer).
--
Vagn Johansen
Daniel LaBell
2004-06-29 17:36:47 UTC
Permalink
dabrev mode? AWESOME.
How do I post in gnus?

Enila Nero
2004-05-20 15:21:54 UTC
Permalink
Post by Vagn Johansen
When I tried your dabbrev-hover code I had complety forgotten that Emacs
21.3 does not support tooltips on MS Windows.
At least Emacs 21.3.50.8 _does_ on my machine.

Perhaps you meant Emacs 21.2 which is shown in your User-Agent header.

Enila
Vagn Johansen
2004-05-20 22:10:26 UTC
Permalink
Post by Enila Nero
Post by Vagn Johansen
When I tried your dabbrev-hover code I had complety forgotten that Emacs
21.3 does not support tooltips on MS Windows.
At least Emacs 21.3.50.8 _does_ on my machine.
Perhaps you meant Emacs 21.2 which is shown in your User-Agent header.
No, I was referring to 21.3 the lastest official Emacs release[1]. The
Windows version lacks tooltip support, image support and maybe more.

[1] The files at ftp://ftp.gnu.org/gnu/emacs/windows/ uses the number 21.3
--
Vagn Johansen
Enila Nero
2004-05-21 04:55:20 UTC
Permalink
Post by Vagn Johansen
Post by Enila Nero
Post by Vagn Johansen
When I tried your dabbrev-hover code I had complety forgotten that Emacs
21.3 does not support tooltips on MS Windows.
At least Emacs 21.3.50.8 _does_ on my machine.
Perhaps you meant Emacs 21.2 which is shown in your User-Agent header.
No, I was referring to 21.3 the lastest official Emacs release[1]. The
Windows version lacks tooltip support, image support and maybe more.
Beg to differ. My version Emacs 21.3.50.8 from

http://www.crasseux.com/emacs/

has both image support and tooltip support.

Enila
Post by Vagn Johansen
[1] The files at ftp://ftp.gnu.org/gnu/emacs/windows/ uses the number 21.3
--
Vagn Johansen
Mathias Dahl
2004-05-21 07:29:29 UTC
Permalink
Post by Enila Nero
Post by Vagn Johansen
No, I was referring to 21.3 the lastest official Emacs release[1]. The
Windows version lacks tooltip support, image support and maybe more.
Beg to differ. My version Emacs 21.3.50.8 from
http://www.crasseux.com/emacs/
has both image support and tooltip support.
Well, that is the CVS version, which is not officially released
yet. I use it too.
unknown
2004-05-21 23:44:26 UTC
Permalink
Post by Enila Nero
Post by Vagn Johansen
No, I was referring to 21.3 the lastest official Emacs release[1]. The
Windows version lacks tooltip support, image support and maybe more.
Beg to differ. My version Emacs 21.3.50.8 from
What are you begging to differ about? That 21.3 (as opposed to
21.3.50) does not support tooltips on Windows, or that 21.3 is the
latest official release?
Enila Nero
2004-05-22 03:20:50 UTC
Permalink
Post by unknown
Post by Enila Nero
Post by Vagn Johansen
No, I was referring to 21.3 the lastest official Emacs release[1]. The
Windows version lacks tooltip support, image support and maybe more.
Beg to differ. My version Emacs 21.3.50.8 from
What are you begging to differ about? That 21.3 (as opposed to
21.3.50) does not support tooltips on Windows, or that 21.3 is the
latest official release?
Sorry, I was too fast to respond. I missed the "official". I meant
to say that there _is_ an emacs version for windows that does support
tooltips and images.

Enila
D. Goel
2004-05-24 18:35:27 UTC
Permalink
Oops, I just see that there's lots of good advice in this thread in
response to dabbrev-hover 0.1. I missed it before posting
dabbrev-hover 0.2dev. Apologies. Traveling right now and during next
few weeks, but will incorporate all the fine advice when I get back.
Thanks to everyone.
Post by Vagn Johansen
Hi
When I tried your dabbrev-hover code I had complety forgotten that Emacs
21.3 does not support tooltips on MS Windows. I got it "working" by
(defun vj-tooltip-show (str)
(interactive)
(setq header-line-format (replace-regexp-in-string "\n" ", " str)))
Maybe you could detect if tooltip is possible and the fallback to my
function. It would be nice with some cleanup so that header-line-format
is set to "" when there are no dynamic expansions possible.
Is it suppossed to show only one suggestion? I would like to use
dabbrev-expand with a prefix argument. This would make the mode even
better.
I also think i would prefer if it did not fiddle with the RET keybinding
(customizable?).
--
Vagn Johansen
DG http://gnufans.net/
--
D. Goel
2004-05-24 20:05:47 UTC
Permalink
Post by Vagn Johansen
(defun vj-tooltip-show (str)
(interactive)
(setq header-line-format (replace-regexp-in-string "\n" ", " str)))
Maybe you could detect if tooltip is possible and the fallback to my
function.
Thanks, I will do that.
Post by Vagn Johansen
It would be nice with some cleanup so that header-line-format is set
to "" when there are no dynamic expansions possible.
Is it suppossed to show only one suggestion? I would like to use
dabbrev-expand with a prefix argument. This would make the mode even
better.
I also think i would prefer if it did not fiddle with the RET keybinding
(customizable?).
yes, it was customizable (using the way Kevin Rodgers suggested), but
I ran into the above RET problem you mentioned myself, and made TAB
the default in 0.2.
Post by Vagn Johansen
Being in effect while in the minibuffer with the RET keybinding is a
bad recipe.
Is it needed at all in the minibuffer?
Hm, on my emacs 21.2 and 21.3, it never seems to get activated in the
minibuffer in the first place for some reason, but i will go ahead and
provide something like an "expand-in-minibuffer-p" option, and disable
it by default.
Post by Vagn Johansen
I wonder if dh-complete *must* be used. dabbrev-expand seems work to just
as well and I already have it bound to a convenient key.
Ah, I don't understand dabbrev.el too well, so I was not sure if
dabbrev-expand will expand to the same completion as shown by
dabbrev-hover.el (which, of course, dh-complete does, by
construction.) dh-complete also makes the code general enough to
allow use with other mechanisms like hippie-expand, as suggested by
Trey Jackson privately.
Post by Vagn Johansen
And finally, correct instances of '(keymap) with (make-sparse-keymap).
Kevin Rodgers
thanks, done in 0.2dev already, with help from Uwe Brauer.
Post by Vagn Johansen
If you don't need the tooltip feature in the minibuffer, then why the
need to redefine tooltip-show? The default implementation should use
the minibuffer if tooltips are not supported.
It does :)
Post by Vagn Johansen
You are right. A "(require 'tooltip)" was missing in dabbrev-hover.el. It
is odd that there was no missing function error (it failed silently).
Will add.
Post by Vagn Johansen
Now it works in the sense that instead of showing a "real" tooltip it
prints "Error while displaying tooltip: (void-function x-show-tip)" in
the minibuffer for half a second and then shows the possible expansion
(also in the minibuffer).
One thing I don't understand is why fancy dh doesn't work when in -nw
mode (emacs -nw). Everything in the code/edebug suggests that we are
in the right mode (dh-fancy-doing-mode), yet it doesn't work.. even
when I do the following for debugging:



(define-key dh-fancy-doing-mode-map (kbd "t") 'dh-complete)
(setq dh-fancy-doing-mode-string " DEBUG")

and then try "t" for completion.
I would be in the dh-fancy-doing-mode, yet t will
self-insert... strange..
If anyone knows, please do share..

(manual M-x dh-complete still works)




DG http://gnufans.net/
--
Loading...