* abbrev.el (define-abbrev-table): Refine last change.
This commit is contained in:
parent
26f8a38497
commit
3638632f0b
1 changed files with 6 additions and 3 deletions
|
@ -953,7 +953,6 @@ Abbrevs marked as \"system abbrevs\" are omitted."
|
|||
(insert " ))\n\n")))
|
||||
nil)))
|
||||
|
||||
(put 'define-abbrev-table 'doc-string-elt 3)
|
||||
(defun define-abbrev-table (tablename definitions
|
||||
&optional docstring &rest props)
|
||||
"Define TABLENAME (a symbol) as an abbrev table name.
|
||||
|
@ -973,11 +972,15 @@ Properties with special meaning:
|
|||
- `:enable-function' can be set to a function of no argument which returns
|
||||
non-nil if and only if the abbrevs in this table should be used for this
|
||||
instance of `expand-abbrev'."
|
||||
(declare (doc-string 3))
|
||||
;; We used to manually add the docstring, but we also want to record this
|
||||
;; location as the definition of the variable (in load-history), so we may
|
||||
;; as well just use `defvar'.
|
||||
(eval `(defvar ,tablename nil ,@(if (stringp docstring) (list docstring)
|
||||
(when props (push docstring props) nil))))
|
||||
(if (and docstring props (symbolp docstring))
|
||||
;; There is really no docstring, instead the docstring arg
|
||||
;; is a property name.
|
||||
(push docstring props) (setq docstring nil))
|
||||
(eval `(defvar ,tablename nil ,@(if docstring (list docstring))))
|
||||
(let ((table (if (boundp tablename) (symbol-value tablename))))
|
||||
(unless table
|
||||
(setq table (make-abbrev-table))
|
||||
|
|
Loading…
Add table
Reference in a new issue