unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table
@ 2010-05-03  5:58 Jim Meyering
  2010-05-03 17:34 ` Stefan Monnier
  2010-05-04  2:09 ` Kevin Rodgers
  0 siblings, 2 replies; 4+ messages in thread
From: Jim Meyering @ 2010-05-03  5:58 UTC (permalink / raw)
  To: 6086; +Cc: Stefan Monnier

Hello,

I use snapshots built from the latest sources.
Starting about a week ago (April 28th), this code in my
~/.emacs has been making that snapshot version fail:

    Loading ~/emacs/startup...done
    Symbol's value as variable is void: fundamental-mode-syntax-table

The offending code is here:

    (defun my-_-hook (modename)
      (add-hook
        (intern (concat modename "-mode-hook"))
        `(lambda () (modify-syntax-entry ?_ "w"
                     ,(intern (concat modename "-mode-syntax-table"))))))

    ;;; Treat underscores as word-constituent characters in these modes.
    (mapcar 'my-_-hook '("c" "c++" "perl" "makefile" "text" "fundamental"
                         "m4" "shell-script" "autoconf"))

This looks like the change set that provoked it:

2010-04-28  Stefan Monnier  <monnier@iro.umontreal.ca>

       Make it possible to locally disable a globally enabled mode.
       * simple.el (fundamental-mode): Run fundamental-mode-hook.
       * emacs-lisp/derived.el (define-derived-mode): Use fundamental-mode
       rather than kill-all-local-variables so it runs fundamental-mode-hook.
       * emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
       Use fundamental-mode-hook to run MODE-enable-in-buffers earlier, so
       that subsequent hooks get a chance to disable it.

For now, I've simply removed "fundamental" from the list.
Is there a better way?







^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table
  2010-05-03  5:58 bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table Jim Meyering
@ 2010-05-03 17:34 ` Stefan Monnier
  2010-05-03 17:44   ` Jim Meyering
  2010-05-04  2:09 ` Kevin Rodgers
  1 sibling, 1 reply; 4+ messages in thread
From: Stefan Monnier @ 2010-05-03 17:34 UTC (permalink / raw)
  To: Jim Meyering; +Cc: 6086

>     (defun my-_-hook (modename)
>       (add-hook
>         (intern (concat modename "-mode-hook"))
>         `(lambda () (modify-syntax-entry ?_ "w"
>                      ,(intern (concat modename "-mode-syntax-table"))))))

>     ;;; Treat underscores as word-constituent characters in these modes.
>     (mapcar 'my-_-hook '("c" "c++" "perl" "makefile" "text" "fundamental"
>                          "m4" "shell-script" "autoconf"))

In prior versions of Emacs, the "fundamental" entry had no effect at
all: it just added a function to an unused hook.  So the fact that the
function would fail if it were run was not noticed.

> For now, I've simply removed "fundamental" from the list.

Looks right.

> Is there a better way?

I guess we could provide a
(defconst fundamental-mode-syntax-table (standard-syntax-table)).


        Stefan






^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table
  2010-05-03 17:34 ` Stefan Monnier
@ 2010-05-03 17:44   ` Jim Meyering
  0 siblings, 0 replies; 4+ messages in thread
From: Jim Meyering @ 2010-05-03 17:44 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 6086

Stefan Monnier wrote:
>>     (defun my-_-hook (modename)
>>       (add-hook
>>         (intern (concat modename "-mode-hook"))
>>         `(lambda () (modify-syntax-entry ?_ "w"
>>                      ,(intern (concat modename "-mode-syntax-table"))))))
>
>>     ;;; Treat underscores as word-constituent characters in these modes.
>>     (mapcar 'my-_-hook '("c" "c++" "perl" "makefile" "text" "fundamental"
>>                          "m4" "shell-script" "autoconf"))
>
> In prior versions of Emacs, the "fundamental" entry had no effect at
> all: it just added a function to an unused hook.  So the fact that the
> function would fail if it were run was not noticed.
>
>> For now, I've simply removed "fundamental" from the list.
>
> Looks right.
>
>> Is there a better way?
>
> I guess we could provide a
> (defconst fundamental-mode-syntax-table (standard-syntax-table)).

Thanks for explaining.






^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table
  2010-05-03  5:58 bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table Jim Meyering
  2010-05-03 17:34 ` Stefan Monnier
@ 2010-05-04  2:09 ` Kevin Rodgers
  1 sibling, 0 replies; 4+ messages in thread
From: Kevin Rodgers @ 2010-05-04  2:09 UTC (permalink / raw)
  To: bug-gnu-emacs

Jim Meyering wrote:
> Hello,
> 
> I use snapshots built from the latest sources.
> Starting about a week ago (April 28th), this code in my
> ~/.emacs has been making that snapshot version fail:
> 
>     Loading ~/emacs/startup...done
>     Symbol's value as variable is void: fundamental-mode-syntax-table
> 
> The offending code is here:
> 
>     (defun my-_-hook (modename)
>       (add-hook
>         (intern (concat modename "-mode-hook"))
>         `(lambda () (modify-syntax-entry ?_ "w"
>                      ,(intern (concat modename "-mode-syntax-table"))))))

Why not call the syntax-table function instead of constructing and referencing
the FOO-mode-syntax-table variable?

>     ;;; Treat underscores as word-constituent characters in these modes.
>     (mapcar 'my-_-hook '("c" "c++" "perl" "makefile" "text" "fundamental"
>                          "m4" "shell-script" "autoconf"))
> 
> This looks like the change set that provoked it:
> 
> 2010-04-28  Stefan Monnier  <monnier@iro.umontreal.ca>
> 
>        Make it possible to locally disable a globally enabled mode.
>        * simple.el (fundamental-mode): Run fundamental-mode-hook.
>        * emacs-lisp/derived.el (define-derived-mode): Use fundamental-mode
>        rather than kill-all-local-variables so it runs fundamental-mode-hook.
>        * emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
>        Use fundamental-mode-hook to run MODE-enable-in-buffers earlier, so
>        that subsequent hooks get a chance to disable it.
> 
> For now, I've simply removed "fundamental" from the list.
> Is there a better way?
> 
> 
> 
> 
> 
> 


-- 
Kevin Rodgers
Denver, Colorado, USA








^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-05-04  2:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-03  5:58 bug#6086: Symbol's value as variable is void: fundamental-mode-syntax-table Jim Meyering
2010-05-03 17:34 ` Stefan Monnier
2010-05-03 17:44   ` Jim Meyering
2010-05-04  2:09 ` Kevin Rodgers

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).