# HG changeset patch # User Daniel Pfeiffer # Date 1090051737 0 # Node ID e8032355ca23ae5b892e7c7cd4418932f98f8d8e # Parent 99304c916e62dbacf8ff2d1f4e73dd238f07f156 (which-func-keymap): New var. (which-func-face): New face. (which-func-format): Use them. diff -r 99304c916e62 -r e8032355ca23 lisp/progmodes/which-func.el --- a/lisp/progmodes/which-func.el Fri Jul 16 18:55:01 2004 +0000 +++ b/lisp/progmodes/which-func.el Sat Jul 17 08:08:57 2004 +0000 @@ -99,7 +99,33 @@ :group 'which-func :type 'integer) -(defcustom which-func-format '("[" which-func-current "]") +(defvar which-func-keymap + (let ((map (make-sparse-keymap))) + (define-key map [mode-line mouse-1] 'beginning-of-defun) + (define-key map [mode-line mouse-2] + (lambda () + (interactive) + (if (eq (point-min) 1) + (narrow-to-defun) + (widen)))) + (define-key map [mode-line mouse-3] 'end-of-defun) + map) + "Keymap to display on mode line which-func.") + +(defface which-func-face + '((t (:inherit font-lock-function-name-face))) + "Face used to highlight mode line function names. +Defaults to `font-lock-function-name-face' if font-lock is loaded." + :group 'which-func) + +(defcustom which-func-format + `("[" + (:propertize which-func-current + local-map ,which-func-keymap + face which-func-face + ;;mouse-face highlight ; currently not evaluated :-( + help-echo "mouse-1: go to beginning, mouse-2: toggle rest visibility, mouse-3: go to end") + "]") "Format for displaying the function in the mode line." :group 'which-func :type 'sexp)