(require 'cl-lib) (defun current-defun () (save-excursion (beginning-of-defun) (forward-char 1) (forward-sexp 2) (symbol-at-point))) (defun eval-defun-or-trace-function (arg) "C-M-xにtrace-functionの機能をつける" (interactive "p") (cl-case arg (64 (untrace-function (current-defun)) (message "untrace-function: %s" (current-defun))) (16 (trace-function (current-defun)) (message "trace-function: %s" (current-defun))) (4 (eval-defun t)) (t (eval-defun nil)))) (define-key emacs-lisp-mode-map (kbd "C-M-x") 'eval-defun-or-trace-function)