12

The problem: I found it's tiredsome to move my eyeballs up and down from where my cursor is to the bottom echo area.

The question: is it possible to make the echo area dynamically allocated close to my cursor, like tooltips? I searched for packages but not able to find one. I don't believe it's a new idea and someone must've done it.

4
  • What if you echo several screenfulls of text? Commented Dec 31, 2014 at 13:56
  • @wvxvw, There could be a fallback mechanism. I've implemented exactly this for specific cases. I'm curious if there's a generic solution already. Commented Dec 31, 2014 at 14:09
  • 2
    It's possible if you use a dedicated frame. It is from a package named oneonone. In the comment section, it is written that 1on1-minibuffer-frame-flag is non-nil (the default value), then the minibuffer is shown in its own frame. Commented Dec 31, 2014 at 14:11
  • 1
    Closely related to this question. That one's about minibuffer input, but it has a positive answer so you may be able to adapt it. Commented May 16, 2015 at 10:02

2 Answers 2

3

The echo area explicitly uses the minibuffer window, so unless that changes the answer is "no, it's not possible" (or at minimum not very practical).

Refer to https://stackoverflow.com/questions/10063410/is-it-possible-to-separate-minibuffer-and-echo-area-in-emacs

5
  • But if I intercepted message to display it in an overlay instead of the echo area? Commented Dec 31, 2014 at 14:16
  • Sure, if you only want this for message. There are many other functions which output to the echo area, however; I don't believe it's a trivial issue. As per the linked Q&A, have a look at the manual to get some idea of the scope. Commented Dec 31, 2014 at 14:18
  • 1
    Note in particular that there are many C functions which bypass message and instead directly call one of the C functions which implement messaging underneath. Commented Dec 31, 2014 at 14:28
  • It's sad. I was thinking to use an overlay + some codes to redirect the messagebuffer. Commented Jan 1, 2015 at 18:56
  • You can have a small frame that contains only a minibuffer window. The only difficulty is poping it up whenever the echo area is displaying anything. Commented May 16, 2015 at 10:03
5

As @TuDo's comment indicates (and he can change it to an answer if he likes, in which case I'll remove this answer), you can at least use a standalone minibuffer frame, and you can position it where you like.

One advantage over the default setup is that you have only a single place to look, always, for output messages (echo area) and for input editing (minibuffer).

You could even cause its position to change dynamically - for example, to be close to where the current input focus is.

One On One Emacs can help. Out of the box, it lets you decide where to put the minibuffer frame, but to reposition it dynamically you will need to do a little extra.

(EmacsWiki is currently down, but you can download oneonone.el from MELPA also.)

1
  • Presumably you mean this page on the wiki? I'm not sure, but your link doesn't work. Commented May 15, 2015 at 22:30

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.