changeset 54578:9e27d826339c

(dabbrev-expand): Fix regexp construction. (dabbrev--find-expansion): Use pop. (dabbrev--search): Use match-string-no-properties.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Fri, 26 Mar 2004 15:19:39 +0000
parents 664f8942b3c8
children 5133c27cc4f0
files lisp/dabbrev.el
diffstat 1 files changed, 5 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/dabbrev.el	Fri Mar 26 15:17:50 2004 +0000
+++ b/lisp/dabbrev.el	Fri Mar 26 15:19:39 2004 +0000
@@ -1,6 +1,6 @@
 ;;; dabbrev.el --- dynamic abbreviation package
 
-;; Copyright (C) 1985, 86, 92, 94, 96, 1997, 2000, 01, 2003
+;; Copyright (C) 1985, 86, 92, 94, 96, 1997, 2000, 01, 03, 2004
 ;;   Free Software Foundation, Inc.
 
 ;; Author: Don Morrison
@@ -529,7 +529,7 @@
 		;; Take the following word, with intermediate separators,
 		;; as our expansion this time.
 		(re-search-forward
-		 (concat "\\(\\(" dabbrev--abbrev-char-regexp "\\)+\\)"))
+		 (concat "\\(?:" dabbrev--abbrev-char-regexp "\\)+"))
 		(setq expansion (buffer-substring-no-properties
 				 dabbrev--last-expansion-location (point)))
 
@@ -793,10 +793,7 @@
        ;; Walk through the buffers till we find a match.
        (let (expansion)
 	 (while (and (not expansion) dabbrev--friend-buffer-list)
-	   (setq dabbrev--last-buffer
-		 (car dabbrev--friend-buffer-list))
-	   (setq dabbrev--friend-buffer-list
-		 (cdr dabbrev--friend-buffer-list))
+	   (setq dabbrev--last-buffer (pop dabbrev--friend-buffer-list))
 	   (set-buffer dabbrev--last-buffer)
 	   (dabbrev--scanning-message)
 	   (setq dabbrev--last-expansion-location (point-min))
@@ -1000,8 +997,7 @@
 	      nil
 	    ;; We have a truly valid match.  Find the end.
 	    (re-search-forward pattern2)
-	    (setq found-string (buffer-substring-no-properties
-				(match-beginning 0) (match-end 0)))
+	    (setq found-string (match-string-no-properties 0))
 	    (setq result found-string)
 	    (and ignore-case (setq found-string (downcase found-string)))
 	    ;; Ignore this match if it's already in the table.
@@ -1010,9 +1006,7 @@
 		 (string= found-string table-string))
 		(setq found-string nil)))
 	  ;; Prepare to continue searching.
-	  (if reverse
-	      (goto-char (match-beginning 0))
-	    (goto-char (match-end 0))))
+	  (goto-char (if reverse (match-beginning 0) (match-end 0))))
 	;; If we found something, use it.
 	(when found-string
 	  ;; Put it into `dabbrev--last-table'