]> git.eshelyaron.com Git - emacs.git/commit
Avoid writing empty abbrev tables
authorAllen Li <darkfeline@felesatra.moe>
Mon, 1 Jan 2018 04:33:21 +0000 (20:33 -0800)
committerEli Zaretskii <eliz@gnu.org>
Sat, 29 Sep 2018 07:27:11 +0000 (10:27 +0300)
commit3bbe9e609138ae88a4c98bcee0da8fcf8b4a3e80
treedddace7db216a1ca095fc3ebfd19c5935818c16e
parent48ff4c0b2f78f1812fa12e3a56ee5f2a0bc712f7
Avoid writing empty abbrev tables

Fixes bug#29923

'insert-abbrev-table-description' with a non-nil READABLE inserts Lisp
forms suitable for evaluation to restore the defined abbrevs.  We
don't have to insert a form for tables that do not have any abbrevs.

To implement this, we need to filter out system abbrevs before
checking if a table is empty, because system abbrevs were previously
skipped in the 'abbrev--write' call, at which point we would already
have started inserting the beginning of a table definition form.

* lisp/abbrev.el (insert-abbrev-table-description):
Skip inserting empty tables when READABLE is non-nil.
Clarify behavior in documentation string.
(abbrev--write): Remove system abbrev check.

* doc/lispref/abbrevs.texi (Abbrev Tables): Document behavior
with empty tables.

* etc/NEWS: Mention the change in behavior of
'insert-abbrev-table-description'.
doc/lispref/abbrevs.texi
etc/NEWS
lisp/abbrev.el