Как переопределить функции в Emacs LISP для конкретного режима? - PullRequest
6 голосов
/ 08 февраля 2010

Как я могу переопределить функцию emacs своей собственной реализацией для определенного режима? пример / ссылка была бы отличной

Спасибо

1 Ответ

9 голосов
/ 08 февраля 2010

Это кажется странной вещью, которую хочется сделать, но вы могли бы сделать это, посоветовав функцию, я полагаю. Пример:

(defadvice * (around ultimate-answer activate)
  (if (and (eq major-mode 'html-mode) (equal (ad-get-args 0) '(6 9)))
      (setq ad-return-value 42)
    ad-do-it))

После оценки этого совета функция * вернет 42, если ей даны два аргумента 6 и 9, но только в режиме html.

...