Subject: bug#9360: 24.0.50; emacs-lisp-mode-abbrev-table neglected in emacs-lisp-mode

From: Seweryn Kokot <[email-masked]>
Date: Thu, 25 Aug 2011 06:26:56 +0000 (UTC)

Glenn Morris <rgm <at> gnu.org> writes:

> 
> 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.

I'm using msf-abbrev [1] library which uses emacs-lisp-mode-abbrev-table for 
emacs-lisp-mode and this mechanism worked in emacs 23.2 and not in emacs 
24.0.50. Now I modified msf-abbrev settings to use lisp-mode-abbrev-table but 
in fact it can be misleading to see emacs-lisp-mode-abbrev-table not working 
with emacs-lisp-mode. It's better to remove this table or explain how to use 
this abbrev table in emacs and elisp manuals. 

Thanks,
Regards,
Seweryn

[1] http://www.emacswiki.org/emacs/MsfAbbrev

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