But the bug of "disappearing prompt and entered text problem" came back again, when I (setq max-mini-window-height 10)
(setq icomplete-show-matches-on-no-input t)
(icomplete-mode 1)
(setq icomplete-format 'vertical)
(defface vmacs-minibuffer-font
`((t :inherit default :height 1.3))
"The default font for minibuffer buffer.
Monospaced font whihc is fixed idth and height is recommended."
:group 'minibuffer)
(defun vmacs-minibuffer-hook()
(set (make-local-variable 'buffer-face-mode-face) 'vmacs-minibuffer-font)
(buffer-face-mode t))
(add-hook 'minibuffer-setup-hook #'vmacs-minibuffer-hook)
(setq max-mini-window-height 10) ;; add this line