Emacs мини-буферная команда с параметром - PullRequest
5 голосов
/ 19 ноября 2010

Я бы хотел использовать команду для изменения размера разделенных окон через мини-буфер.В документации GNU я нашел описание ( Resizing-Windows ):

Example: enlarge-window-horizontally size &optional horizontal. 

Если я наберу Mx увеличить-окно-горизонтально окно будет изменено наодин столбец.Но невозможно добавить число для размера в мини-буфере, так как при нажатии пробела emacs пытается завершить команду.

Кто-нибудь знает, как использовать необязательные параметры в мини-буфере?Соответственно, как изменить размер окна более чем на один столбец одновременно.

Спасибо.

Ответы [ 2 ]

9 голосов
/ 19 ноября 2010

Для передачи параметров в интерактивную команду, подобную этой, используется универсальный аргумент .

. Вы можете увеличить окно на 10 столбцов, набрав Cu 10 Mx увеличить-окно-горизонтально .Вы можете изменить 10 на любое целое число.Кстати, ввод Cu num для ввода числового аргумента работает со всеми интерактивными командами emacs, которые ожидают аргумент.

Обратите внимание, что есть также сочетание клавиш: Cu 10 Cx} .И чтобы уменьшить окно: Cu 10 Cx {.

Вы также можете указать числа, набрав удерживая мета-клавишу M-10 Cx {

6 голосов
/ 19 ноября 2010

То, что вы ищете, это eval-выражение.

M-: (enlarge-window-horizontally horizontal)

M-: изменит минибуфер на запрос eval, который позволит вам ввести выражение Lisp для оценки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...