On Sat 27 Oct 2018 at 01:54, Eli Zaretskii wrote: >> From: Alex Branham >> Date: Fri, 26 Oct 2018 17:19:44 -0500 >> >> I'm struggling to understand how to make functions defined with >> cl-defgeneric interactive: >> >> (require 'cl-lib) >> >> (cl-defgeneric my/test () >> (interactive) >> (message "generic")) >> >> If you evaluate that you can do M-x my/test, as expected. However, as >> soon as you evaluate this: >> >> (cl-defgeneric my/test (&context (major-mode emacs-lisp-mode)) >> (interactive) >> (message "method")) >> >> M-x my/test no longer works. > > '&context' is documented only as part of cl-defmethod, so why are you > trying to use it with cl-defgeneric? Sorry, that was a typo. The same thing happens if you use defmethod: (require 'cl-lib) (cl-defgeneric my/test () (interactive) (message "generic")) here, M-x my/test works (cl-defmethod my/test (&context (major-mode emacs-lisp-mode)) (interactive) (message "method")) Here, M-x my/test does not work.