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

From: Lars Magne Ingebrigtsen <[email-masked]>
Date: Wed, 06 Jul 2011 19:46:23 +0200

Glenn Morris <[email-masked]> writes:

> After looking at this again, there's still no difference between nil
> and \\sw\\|\\s- AFAICS,

I've now changed the doc string to reflect this.

> but now dabbrev--abbrev-at-point makes little
> sense to me:
>
> emacs -Q --eval '(setq dabbrev-abbrev-char-regexp "\\sw")'
>
> in scratch:
>
> yes-or-no---
>
> followed by M-/ gives
>
> "No dynamic expansion for `no---' found". Obviously, "---" are not
> word constituents, yet they are included in the abbrev, in flat
> contradiction to the doc-string of dabbrev-abbrev-char-regexp:
>
>     if you set this variable to "\\sw", then expanding `yes-or-no-'
>     signals an error because `-' is not part of a word
>
> This is caused by dabbrev--abbrev-at-point's:
>
>     ;; If we aren't right after an abbreviation,
>     ;; move point back to just after one.
>     ;; This is so the user can get successive words
>     ;; by typing the punctuation followed by M-/.

I have no idea how dabbrev works, but isn't that a new bug report?  :-)

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/