GNU bug report logs - #9360
24.0.50; emacs-lisp-mode-abbrev-table neglected in emacs-lisp-mode

Previous Next

Package: emacs;

Reported by: Seweryn Kokot <sewkokot <at> gmail.com>

Date: Wed, 24 Aug 2011 16:02:02 UTC

Severity: normal

Found in version 24.0.50

Done: Chong Yidong <cyd <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 9360 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Seweryn Kokot <sewkokot <at> gmail.com>
Cc: 9360 <at> debbugs.gnu.org
Subject: Re: bug#9360: 24.0.50;
	emacs-lisp-mode-abbrev-table neglected in emacs-lisp-mode
Date: Wed, 24 Aug 2011 16:21:45 -0400
Seweryn Kokot wrote:

> When in a buffer in emacs-lisp-mode, emacs 24 neglects
> emacs-lisp-mode-abbrev-table. It uses lisp-mode-abbrev-table only. I
> think the elisp manual should tell us more about the difference between
> the three lisp abbrev tables:
> emacs-lisp-mode-abbrev-table, lisp-interaction-mode-abbrev-table and
> lisp-mode-abbrev-table. I add that in emacs 23
> emacs-lisp-mode-abbrev-table worked was taken into account when in
> emacs-lisp-mode buffer.

I don't see that emacs-lisp-mode-abbrev-table has ever had an effect.
In 23.1 it is void. In 23.2 and on it is defined (by define-derived-mode)
but not used. `add-mode-abbrev' in an Emacs Lisp mode buffer adds to
lisp-mode-abbrev-table. Adding an entry to emacs-lisp-mode-abbrev-table
in abbrev_defs has no effect.

This is because emacs-lisp-mode calls lisp-mode-variables, which
explicitly sets the abbrev-table to lisp-mode-abbrev-table.

To me, the bug looks like the fact that emacs-lisp-mode-abbrev-table is
defined at all. If it's never going to be used, the definition of
emacs-lisp-mode should specify an :abbrev-table.

> In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
>  of 2011-08-22 on 3249CTO




This bug report was last modified 13 years and 178 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.