diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-07-01 12:41:02 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-07-01 12:41:02 -0400 |
commit | 1a1e3f3207b660b42127bde55119d233aca02a1c (patch) | |
tree | 10ac3013ce5e9245f4bca62fee02f5ba964cfcab /lisp/emacs-lisp/derived.el | |
parent | 31976bd57d940e5e52cd5d4aaaef2774fe526cd8 (diff) | |
download | emacs-1a1e3f3207b660b42127bde55119d233aca02a1c.tar.gz |
* lisp/emacs-lisp/derived.el (define-derived-mode): Make abbrev-table
inherit from parent.
Diffstat (limited to 'lisp/emacs-lisp/derived.el')
-rw-r--r-- | lisp/emacs-lisp/derived.el | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el index 1db98ac39c8..e8f799b9afc 100644 --- a/lisp/emacs-lisp/derived.el +++ b/lisp/emacs-lisp/derived.el @@ -253,8 +253,11 @@ No problems result if this variable is not bound. `(let ((parent (char-table-parent ,syntax))) (unless (and parent (not (eq parent (standard-syntax-table)))) - (set-char-table-parent ,syntax (syntax-table))))))) - + (set-char-table-parent ,syntax (syntax-table))))) + ,(when declare-abbrev + `(unless (abbrev-table-get ,abbrev :parents) + (abbrev-table-put ,abbrev :parents + (list local-abbrev-table)))))) (use-local-map ,map) ,(when syntax `(set-syntax-table ,syntax)) ,(when abbrev `(setq local-abbrev-table ,abbrev)) |