LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

Ввод-то с клавиатуры останется, но да. Все содержимое должно идти туда.

Уф, самое простое в исходник внедряться. Во-первых, ты не спрячешь minibuffer. Однако можно спрятать фрейм с ним, а фрейм без минибуфера показать. Но как только нажмешь M-x, то ввод пойдет туда, где minibufer.

(new-buffer '((minibuffer . nil)))

У фрейма можно менять minibuffer. Можэно сделать отдельный фрейм только с минибуфером:

(new-buffer '((minibuffer . only)))

Хуки для входа в минибуфер и выхода оттуда, я выше уже привел - они описаны, также можно получить minibuffer-prompt, minibuffer-contents.

Вот интересно, поможет ли как-то хук window-text-change-functions? Я, если чесно, никогда не пробовал и штука какая-то неописанная, ничего про нее не знаю, хотя docstring имеется: Functions to call in redisplay when text in the window might change. (мысль в сторону: жутко не люблю, когда делают docstring у функций, которые не предназначены для пользователя, а предназначены для внутренних целей. Это сбивает с толку, потому что раз есть docstring, то можно считать функцией API. Никогда так не делаю). Не ясно, что за функцию на нее можно вешать, какие аргументы передаются. Наверняка будет вызываться буквально по любому движению в emacs. Надо как-то с этим осторожно - проверять как-то, кто хочет перерисоваться.

По виду хук для внутренних целей, но зачем-то экспортирован в символы emacs из window_test_change_functions, а в лисповой части emacs ее никто не использует.

Короче, если хочется странного, то вот придется разбираться.

Исходная версия Zubok, :

Ввод-то с клавиатуры останется, но да. Все содержимое должно идти туда.

Уф, самое простое в исходник внедряться. Во-первых, ты не спрячешь minibuffer. Однако можно спрятать фрейм с ним, а фрейм без минибуфера показать. Но как только нажмешь M-x, то ввод пойдет туда, где minibufer.

(new-buffer '((minibuffer . nil))

У фрейма можно менять minibuffer. Можэно сделать отдельный фрейм только с минибуфером:

(new-buffer '((minibuffer . only))

Хуки для входа в минибуфер и выхода оттуда, я выше уже привел - они описаны, также можно получить minibuffer-prompt, minibuffer-contents.

Вот интересно, поможет ли как-то хук window-text-change-functions? Я, если чесно, никогда не пробовал и штука какая-то неописанная, ничего про нее не знаю, хотя docstring имеется: Functions to call in redisplay when text in the window might change. (мысль в сторону: жутко не люблю, когда делают docstring у функций, которые не предназначены для пользователя, а предназначены для внутренних целей. Это сбивает с толку, потому что раз есть docstring, то можно считать функцией API. Никогда так не делаю). Не ясно, что за функцию на нее можно вешать, какие аргументы передаются. Наверняка будет вызываться буквально по любому движению в emacs. Надо как-то с этим осторожно - проверять как-то, кто хочет перерисоваться.

По виду хук для внутренних целей, но зачем-то экспортирован в символы emacs из window_test_change_functions, а в лисповой части emacs ее никто не использует.

Короче, если хочется странного, то вот придется разбираться.