Как я могу запретить мини-буферу отображать предыдущие команды в Emacs?
Я даже не уверен, что это предыдущая команда или незавершенная команда или что-то еще, но я знаю, что мне это действительно не нравится.
моя проблема в том, что некоторые команды (или сообщения, или что-то еще) застревают в мини-буфере, так что когда я набираю новую команду, она появляется там очень быстро, а затем мини-буфер возвращается к упрямой команде. Некоторые команды кажутся выбранными, и после использования множества команд что-то еще застревает там, но всегда есть что-то мне показывают, что я не хочу видеть. Я пробовал печатать C-g много раз, чтобы увидеть, выйдет ли он, но это не работает.
Это картина того, что у меня сейчас:
не имеет значения, что я делаю, этот бит
метка: hl-line
не выйдет. Он уходит на мгновение, когда вводится новая команда,но она возвращается. Мне не нравится, это сбивает с толку, и я бы предпочел увидеть там последние команда.
Я проверил параметры настройки для мини-буфера (нижняя часть его можно увидеть на моем рисунке), но я не нашел ничего, что, казалось, было тем, что я искал.
какие идеи?
2 ответов
мини-буфер потерял фокус. Попробуйте C-x o (Control+x o), чтобы восстановить фокус. Для отмены команды нажмите C-g когда у вас есть фокус в мини-буфере.
скорее всего, вы попадаете в ситуацию, потому что вы запустили команду и использовали мышь, чтобы выбрать что-то в другом окне. Если это так, Emacs может автоматически прервать команду при выполнении такого действия.
Это код, который вы бы добавили к своему .в Emacs:
(defun stop-using-minibuffer ()
"kill the minibuffer"
(when (and (>= (recursion-depth) 1) (active-minibuffer-window))
(abort-recursive-edit)))
(add-hook 'mouse-leave-buffer-hook 'stop-using-minibuffer)
примечание: Я схватил это из моего сообщение в блоге по теме.
и есть также вопрос суперпользователя, который решает эту проблему, и мой ответ там предоставляет команду прыжок назад в минибуфере.