Каждая команда (например find-file
или next-line
) в Emacs является Emacs Lisp функцией. Но помимо команд (которые могут быть или не быть привязаны к клавиатурным комбинациям), есть и много других функций. В Emacs встроен Emacs Lisp интерпретатор, а значит каждую функцию можно выполнить в любой момент. uvlad уже показал, как сделать так, чтобы функция выполнялась при каждом запуске Emacs.
Но если нужно выполнить функцию временно — т.е. при перезагрузке Emacs изменение, сделанное функцией, сбросится — то можно нажать Alt+Shift+;. В минибуфере можно будет ввести (setq-default tab-width 4)
. Скобки обязательны, потому что это синтаксис Лиспа: (название-функции аргумент1 аргумент2 ...)
.
Если хочется вызвать полноценный интерпретатор чтобы вводить выполнять разные функции Emacs Lisp, то он называется IELM, и его можно вызвать, если нажать Alt+x и ввести ielm
.
Не все функции можно вызвать через Alt+x, только интерактивные, но т.к. их великое множество, то я рекомендую почитать мануал о вызове интерактивных команд: Running Commands by Name @ GNU Emacs Manual.