[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs/lisp ChangeLog abbrev.el
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] emacs/lisp ChangeLog abbrev.el |
Date: |
Wed, 25 Nov 2009 04:59:06 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Stefan Monnier <monnier> 09/11/25 04:59:06
Modified files:
lisp : ChangeLog abbrev.el
Log message:
(abbrev--before-point): Use word-motion functions
if :regexp is not specified (bug#5031).
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.16726&r2=1.16727
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/abbrev.el?cvsroot=emacs&r1=1.85&r2=1.86
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.16726
retrieving revision 1.16727
diff -u -b -r1.16726 -r1.16727
--- ChangeLog 25 Nov 2009 03:59:19 -0000 1.16726
+++ ChangeLog 25 Nov 2009 04:59:02 -0000 1.16727
@@ -1,5 +1,8 @@
2009-11-25 Stefan Monnier <address@hidden>
+ * abbrev.el (abbrev--before-point): Use word-motion functions
+ if :regexp is not specified (bug#5031).
+
* subr.el (string-prefix-p): New function.
* man.el (Man-completion-cache): New var.
Index: abbrev.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/abbrev.el,v
retrieving revision 1.85
retrieving revision 1.86
diff -u -b -r1.85 -r1.86
--- abbrev.el 19 Nov 2009 03:12:52 -0000 1.85
+++ abbrev.el 25 Nov 2009 04:59:05 -0000 1.86
@@ -671,11 +671,19 @@
(setq tables (append (abbrev-table-get table :parents) tables))
(setq res
(and (or (not enable-fun) (funcall enable-fun))
- (looking-back (or (abbrev-table-get table :regexp)
- "\\<\\(\\w+\\)\\W*")
- (line-beginning-position))
+ (let ((re (abbrev-table-get table :regexp)))
+ (if (null re)
+ ;; We used to default `re' to "\\<\\(\\w+\\)\\W*"
+ ;; but when words-include-escapes is set, that
+ ;; is not right and fixing it is boring.
+ (let ((lim (point)))
+ (backward-word 1)
+ (setq start (point))
+ (forward-word 1)
+ (setq end (min (point) lim)))
+ (when (looking-back re (line-beginning-position))
(setq start (match-beginning 1))
- (setq end (match-end 1))
+ (setq end (match-end 1)))))
(setq name (buffer-substring start end))
(let ((abbrev (abbrev-symbol name table)))
(when abbrev
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs/lisp ChangeLog abbrev.el,
Stefan Monnier <=