;;; lisp-mode.el --- Lisp mode, and its idiosyncratic commands
-;; Copyright (C) 1985-1986, 1999-2011 Free Software Foundation, Inc.
+;; Copyright (C) 1985-1986, 1999-2012 Free Software Foundation, Inc.
;; Maintainer: FSF
;; Keywords: lisp, languages
(defvar font-lock-string-face)
(defvar lisp-mode-abbrev-table nil)
+(define-abbrev-table 'lisp-mode-abbrev-table ()
+ "Abbrev table for Lisp mode.")
-(define-abbrev-table 'lisp-mode-abbrev-table ())
+(defvar emacs-lisp-mode-abbrev-table nil)
+(define-abbrev-table 'emacs-lisp-mode-abbrev-table ()
+ "Abbrev table for Emacs Lisp mode.
+It has `lisp-mode-abbrev-table' as its parent."
+ :parents (list lisp-mode-abbrev-table))
(defvar emacs-lisp-mode-syntax-table
(let ((table (make-syntax-table))
(put 'autoload 'doc-string-elt 3)
(put 'defun 'doc-string-elt 3)
(put 'defun* 'doc-string-elt 3)
+(put 'defmethod 'doc-string-elt 3)
(put 'defvar 'doc-string-elt 3)
(put 'defcustom 'doc-string-elt 3)
(put 'deftheme 'doc-string-elt 2)
font-lock keywords will not be case sensitive."
(when lisp-syntax
(set-syntax-table lisp-mode-syntax-table))
- (setq local-abbrev-table lisp-mode-abbrev-table)
(make-local-variable 'paragraph-ignore-fill-prefix)
(setq paragraph-ignore-fill-prefix t)
(make-local-variable 'fill-paragraph-function)
`(menu-item ,(purecopy "Untrace All") untrace-all
:help ,(purecopy "Untrace all currently traced functions")))
(define-key tracing-map [tr-uf]
- `(menu-item ,(purecopy "Untrace function...") untrace-function
+ `(menu-item ,(purecopy "Untrace Function...") untrace-function
:help ,(purecopy "Untrace function, and possibly activate all remaining advice")))
(define-key tracing-map [tr-sep] menu-bar-separator)
(define-key tracing-map [tr-q]
`(menu-item ,(purecopy "Byte-compile and Load") emacs-lisp-byte-compile-and-load
:help ,(purecopy "Byte-compile the current file (if it has changed), then load compiled code")))
(define-key menu-map [byte-compile]
- `(menu-item ,(purecopy "Byte-compile this File") emacs-lisp-byte-compile
+ `(menu-item ,(purecopy "Byte-compile This File") emacs-lisp-byte-compile
:help ,(purecopy "Byte compile the file containing the current buffer")))
(define-key menu-map [separator-eval] menu-bar-separator)
(define-key menu-map [ielm]
`(menu-item ,(purecopy "Evaluate Defun") eval-defun
:help ,(purecopy "Evaluate the top-level form containing point, or after point")))
(define-key menu-map [eval-print-last-sexp]
- `(menu-item ,(purecopy "Evaluate and print") eval-print-last-sexp
+ `(menu-item ,(purecopy "Evaluate and Print") eval-print-last-sexp
:help ,(purecopy "Evaluate sexp before point; print value into current buffer")))
(define-key menu-map [edebug-defun-lisp-interaction]
`(menu-item ,(purecopy "Instrument Function for Debugging") edebug-defun
\\{lisp-interaction-mode-map}
Entry to this mode calls the value of `lisp-interaction-mode-hook'
-if that value is non-nil.")
+if that value is non-nil."
+ :abbrev-table nil)
(defun eval-print-last-sexp ()
"Evaluate sexp before point; print value into current buffer.
Reset the `defvar' and `defcustom' variables to the initial value.
Reinitialize the face according to the `defface' specification."
;; The code in edebug-defun should be consistent with this, but not
- ;; the same, since this gets a macroexpended form.
+ ;; the same, since this gets a macroexpanded form.
(cond ((not (listp form))
form)
((and (eq (car form) 'defvar)