aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoam Postavsky2017-03-24 10:47:19 -0400
committerNoam Postavsky2017-03-26 09:14:15 -0400
commit9a7370796455b87cebb1177eecc6fa985f61f6a8 (patch)
tree0414bbab234e7a0d61ba1b4f9f94b076e00e6afc
parentafe8849bac1ec228680bcb590da6313800067d34 (diff)
downloademacs-9a7370796455b87cebb1177eecc6fa985f61f6a8.tar.gz
emacs-9a7370796455b87cebb1177eecc6fa985f61f6a8.zip
Fix docstring of dabbrev-abbrev-char-regexp
* lisp/dabbrev.el (dabbrev-abbrev-char-regexp): Using a value of nil is equivalent to "\\sw\\|\\s_", and has no special behavior. If the previous character doesn't match, we search backwards for one that does, not throw an error. Replace Lisp example with C based one to make it clear that "symbol" means a sequence of word and symbol constituent characters, not a Lisp symbol (Bug#358).
-rw-r--r--lisp/dabbrev.el32
1 files changed, 15 insertions, 17 deletions
diff --git a/lisp/dabbrev.el b/lisp/dabbrev.el
index 3550d75c46a..9c9dc8a4f38 100644
--- a/lisp/dabbrev.el
+++ b/lisp/dabbrev.el
@@ -191,23 +191,21 @@ This variable has an effect only when the value of
191This regexp will be surrounded with \\\\( ... \\\\) when actually used. 191This regexp will be surrounded with \\\\( ... \\\\) when actually used.
192 192
193Set this variable to \"\\\\sw\" if you want ordinary words or 193Set this variable to \"\\\\sw\" if you want ordinary words or
194\"\\\\sw\\\\|\\\\s_\" if you want symbols (including characters whose 194\"\\\\sw\\\\|\\\\s_\" if you want symbols (including characters
195syntax is \"symbol\" as well as those whose syntax is \"word\". 195whose syntax is \"symbol\" as well as those whose syntax is
196 196\"word\"). The abbreviation is from point to the start of the
197The value nil has a special meaning: the abbreviation is from point to 197previous sequence of characters matching this variable.
198previous word-start, but the search is for symbols. 198
199 199The default value of nil is equivalent to \"\\\\sw\\\\|\\\\s_\".
200For instance, if you are programming in Lisp, `yes-or-no-p' is a symbol, 200
201while `yes', `or', `no' and `p' are considered words. If this 201For instance, suppose the current buffer is in `c-mode'. If this
202variable is nil, then expanding `yes-or-no-' looks for a symbol 202variable is nil or \"\\\\sw\\\\|\\\\s_\", then expanding
203starting with or containing `no-'. If you set this variable to 203`debug_print_in_' looks for a symbol starting with
204\"\\\\sw\\\\|\\\\s_\", that expansion looks for a symbol starting with 204`debug_print_in_'. If you set this variable to \"\\\\sw\", that
205`yes-or-no-'. Finally, if you set this variable to \"\\\\sw\", then 205expansion looks for a word prefixed with `in_' (e.g., it would
206expanding `yes-or-no-' signals an error because `-' is not part of a word; 206match `in_range', but not `in_close_range'). If expanding
207but expanding `yes-or-no' looks for a word starting with `no'. 207`debug_print_in' it would look for a word starting with
208 208`in' (e.g. `integer')."
209The recommended value is nil, which will make dabbrev default to
210using \"\\\\sw\\\\|\\\\s_\"."
211 :type '(choice (const nil) 209 :type '(choice (const nil)
212 regexp) 210 regexp)
213 :group 'dabbrev) 211 :group 'dabbrev)