using (in-readtable) to select a readtable

João Távora joaotavora at gmail.com
Thu Aug 13 18:26:56 UTC 2015


73budden,

I've re-implemented your latest idea here:

   https://github.com/capitaomorte/sly-named-readtables

It works and the mode-line indicator idea is a nice touch (there's a
screenshot).

It's probably still a bit sketchy though: the readtables found by in
(in-readtable ...) forms take precedence of others found in
*readtable-alist* (i.e. in-readtable binds *buffer-readtable* tighter).

I would like to understand more about this conflict, before I implement
some protection like you suggested, whereby (in-readtable ...) bindings
would error out if they discovered there was already another binding
coming form *readtable-alist*.

I'm still skeptical as Attila is as to how this would lead to
unpredictable or suprising behaviour. Is it only that SLIME-specific
kludge in NAMED-READTABLES itself or something deeper?

Another thing I don't fully understand in your idea (but I did
reimplement it that way) is why the readtable information has to go on
every Emacs->Lisp request, i.e., why not only on commands that eval lisp
and compile parts of buffers? Is compile-file affected as well, should
it be?

João



More information about the slime-devel mailing list