mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-03 22:20:52 -08:00
(derived-mode-merge-abbrev-tables):
Do nothing if OLD is nil.
This commit is contained in:
parent
ad0dae0710
commit
56152e1744
1 changed files with 12 additions and 12 deletions
|
|
@ -311,19 +311,19 @@ Where the new table already has an entry, nothing is copied from the old one."
|
|||
(aset new idx (aref old idx)))
|
||||
(setq idx (1+ idx)))))
|
||||
|
||||
;; Merge an old abbrev table into a new one.
|
||||
;; This function requires internal knowledge of how abbrev tables work,
|
||||
;; presuming that they are obarrays with the abbrev as the symbol, the expansion
|
||||
;; as the value of the symbol, and the hook as the function definition.
|
||||
(defun derived-mode-merge-abbrev-tables (old new)
|
||||
"Merge an old abbrev table into a new one.
|
||||
This function requires internal knowledge of how abbrev tables work,
|
||||
presuming that they are obarrays with the abbrev as the symbol, the expansion
|
||||
as the value of the symbol, and the hook as the function definition.
|
||||
This could well break with some future version of Gnu Emacs."
|
||||
(mapatoms
|
||||
(function
|
||||
(lambda (symbol)
|
||||
(or (intern-soft (symbol-name symbol) new)
|
||||
(define-abbrev new (symbol-name symbol)
|
||||
(symbol-value symbol) (symbol-function symbol)))))
|
||||
old))
|
||||
(if old
|
||||
(mapatoms
|
||||
(function
|
||||
(lambda (symbol)
|
||||
(or (intern-soft (symbol-name symbol) new)
|
||||
(define-abbrev new (symbol-name symbol)
|
||||
(symbol-value symbol) (symbol-function symbol)))))
|
||||
old)))
|
||||
|
||||
(provide 'derived)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue