I use helm to do the common stuff and I have my "helm minibuffer" on top of the helm buffers. Therefore I don't really need the regular minibuffer anymore, except when I have to pass arguments to commands.

So I'm looking for a way to dynamically display the minibuffer, when I'm using M-x. In other words, I don't want the minibuffer to be displayed, except I am really using it.


As far as I undertood your question you want to hide the minibuffer while helm is active. To do that you have to set

(setq helm-echo-input-in-header-line t)

Then you can hide the minibuffer while helm is active by using the following

(defun helm-hide-minibuffer-maybe () 
  (when (with-helm-buffer helm-echo-input-in-header-line)
    (let ((ov (make-overlay (point-min) (point-max) nil nil t)))
      (overlay-put ov 'window (selected-window))
      (overlay-put ov 'face (let ((bg-color (face-background 'default nil)))
                              `(:background ,bg-color :foreground ,bg-color)))
      (setq-local cursor-type nil))))

(add-hook 'helm-minibuffer-set-up-hook 'helm-hide-minibuffer-maybe)
  • First of all, thanks for your answer. But I already found this function and it was actually the reason for me to open this thread ;). Because I think I don't need the minibuffer anymore with this function, I wanted to keep the minibuffer from being displayed, except I hit m-x. – bertfred May 2 '16 at 17:46
  • @bertfred Hm, now I think you mean hiding the echo area? So the modeline is completly at the bottom with no lines below it? This way you would loose the ability to see messages, which I would not recommend, because that is often important. – clemera May 3 '16 at 12:19
  • Exactly. But I can use the message buffer if I really need it. And even if there are some messages I want to see in the echo area, couldn't I theoretically define exclusions, when the buffer is to be displayed ? – bertfred May 3 '16 at 18:48
  • @bertfred Have a look at this – clemera May 3 '16 at 19:16
  • Thanks, but I already found this thread after I opened mine. It seems to be not that easy. But another short question. How can I use windmove inside the helm minibuffer ? It works in the regular minibuffer, but when I use your function from above, windmove won't work. – bertfred May 4 '16 at 6:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.