comparison lisp/abbrev.el @ 5284:d27c1ee1943b

Make the order of preloaded-file-list more sane. lisp/ChangeLog addition: 2010-10-12 Aidan Kehoe <kehoea@parhasard.net> * abbrev.el (fundamental-mode-abbrev-table, global-abbrev-table): Create both these abbrev tables using the usual #'define-abbrev-table calls, rather than attempting to special-case them. * cl-extra.el: Force cl-macs to be loaded here, if cl-extra.el is being loaded interpreted. Previously other, later files would redundantly call (load "cl-macs") when interpreted, it's more reasonable to do it here, once. * cmdloop.el (read-quoted-char-radix): Use defcustom here, we don't have any dump-order dependencies that would prevent that. * custom.el (eval-when-compile): Don't load cl-macs when interpreted or when byte-compiling, rely on cl-extra.el in the former case and the appropriate entry in bytecomp-load-hook in the latter. Get rid of custom-declare-variable-list, we have no dump-time dependencies that would require it. * faces.el (eval-when-compile): Don't load cl-macs when interpreted or when byte-compiling. * packages.el: Remove some inaccurate comments. * post-gc.el (cleanup-simple-finalizers): Use #'delete-if-not here, now the order of preloaded-file-list has been changed to make it available. * subr.el (custom-declare-variable-list): Remove. No need for it. Also remove a stub define-abbrev-table from this file, given the current order of preloaded-file-list there's no need for it.
author Aidan Kehoe <kehoea@parhasard.net>
date Tue, 12 Oct 2010 21:11:46 +0100
parents 74d00c7cc134
children b9167d522a9a
comparison
equal deleted inserted replaced
5283:be436ac36ba4 5284:d27c1ee1943b
118 (set sym expansion) 118 (set sym expansion)
119 (fset sym hook) 119 (fset sym hook)
120 (setplist sym (or count 0)) 120 (setplist sym (or count 0))
121 name)) 121 name))
122 122
123 123 (define-abbrev-table 'fundamental-mode-abbrev-table nil)
124 ;; Fixup stuff from bootstrap def of define-abbrev-table in subr.el 124 (and (eq major-mode 'fundamental-mode)
125 (let ((l abbrev-table-name-list)) 125 (not local-abbrev-table)
126 (while l 126 (setq local-abbrev-table fundamental-mode-abbrev-table))
127 (let ((fixup (car l))) 127
128 (if (consp fixup) 128 (define-abbrev-table 'global-abbrev-table nil)
129 (progn
130 (setq abbrev-table-name-list (delq fixup abbrev-table-name-list))
131 (define-abbrev-table (car fixup) (cdr fixup))))
132 (setq l (cdr l))))
133 ;; These are no longer initialized by C code
134 (if (not global-abbrev-table)
135 (progn
136 (setq global-abbrev-table (make-abbrev-table))
137 (setq abbrev-table-name-list (cons 'global-abbrev-table
138 abbrev-table-name-list))))
139 (if (not fundamental-mode-abbrev-table)
140 (progn
141 (setq fundamental-mode-abbrev-table (make-abbrev-table))
142 (setq abbrev-table-name-list (cons 'fundamental-mode-abbrev-table
143 abbrev-table-name-list))))
144 (and (eq major-mode 'fundamental-mode)
145 (not local-abbrev-table)
146 (setq local-abbrev-table fundamental-mode-abbrev-table)))
147
148 129
149 (defun define-global-abbrev (name expansion) 130 (defun define-global-abbrev (name expansion)
150 "Define ABBREV as a global abbreviation for EXPANSION." 131 "Define ABBREV as a global abbreviation for EXPANSION."
151 (interactive "sDefine global abbrev: \nsExpansion for %s: ") 132 (interactive "sDefine global abbrev: \nsExpansion for %s: ")
152 (define-abbrev global-abbrev-table 133 (define-abbrev global-abbrev-table