2012-02-13 2 views
5

Я определяю одну функцию в моем .emacs, я хочу активировать ECB и Гото в каталог, когда я вхожу f12, но это не работаетКак определить функцию в .emacs?

(defun my-toggle-ecb() 
    (ecb-activate) 
    (ecb-goto-window-directories) 
) 

(global-set-key (kbd "<f12>") 'my-toggle-ecb) 

ответ

10

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

(defun my-toggle-ecb() 
    (interactive) 
    (ecb-activate) 
    (ecb-goto-window-directories)) 

Ваш брелок остается неизменным. Повеселись!

+3

Почему: см. «C-h f f RET» для более подробной информации и как «интерактивный» используется для получения аргументов от пользователя (или иначе). – phils

Смежные вопросы