Subject: RE: bug#358: dabbrev-abbrev-char-regexp

From: Drew Adams <[email-masked]>
Date: Thu, 23 Mar 2017 13:24:19 -0700 (PDT)

> >> +For instance, if you are programming in Lisp, `yes-or-no-p' is a
> >> +symbol, while `yes', `or', `no' and `p' are considered words.
> >
> > This text (same as before) is a bit misleading.  It makes it sound
> > like `yes', `or', `no', and `p' are considered words but not symbols.
> > They are also considered symbols.  Each of their characters has word
> > syntax, but in Lisp those names name symbols.
> >
> > It is better not to talk about Lisp symbols at all here, I think.
> > This is about the syntax categories symbol and word.  It is not
> > about which names can be used for Lisp symbols.  (And there is
> > no such thing as a Lisp "word".)
> 
> The text is using "symbol" as a shorthand for "text which
> `forward-symbol' would move over" or "sequence of characters with word
> or symbol constituent syntax", and "word" as short for "text which
> `forward-word' would move over" or "sequence of characters with word
> constituent syntax".

Yes, that's the intended meaning.  Which is why it should not
mention Lisp symbols, which are something else again.

> I think it's reasonably clear from context (as
> you say, there is no such thing as a Lisp "word" in any other sense),
> but I have no problem replacing it with something less ambiguous if
> you can come up with something that's not too long.

I don't think any example is needed.  Essentially we are saying
here that if a letter has word syntax and `-' has symbol syntax
then \"\\\\sw\" matches a word char and \"\\\\sw\\\\|\\\\s_\"
matches a word char or a symbol char.  Not worth saying, IMO.