2008-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
+ * abbrev.el (define-abbrev-table): Apply props even if the table
+ exists already.
+
* minibuffer.el (completion-table-with-context): Fix `pred' for the
various kinds of completion tables.
(completion-emacs22-try-completion): Place cursor after the /, as was
(eval `(defvar ,tablename nil ,@(if (stringp docstring) (list docstring))))
(let ((table (if (boundp tablename) (symbol-value tablename))))
(unless table
- (setq table (make-abbrev-table props))
+ (setq table (make-abbrev-table))
(set tablename table)
(push tablename abbrev-table-name-list))
+ ;; We used to just pass them to `make-abbrev-table', but that fails
+ ;; if the table was pre-existing as is the case if it was created by
+ ;; loading the user's abbrev file.
+ (while (consp props)
+ (abbrev-table-put table (pop props) (pop props)))
(dolist (elt definitions)
(apply 'define-abbrev table elt))))