changeset 107468:008c1c06812b

* replace.el (occur-accumulate-lines, occur-engine): Use `occur-engine-line' instead of duplicate code. (occur-engine-line): New function created from duplicate code in `occur-accumulate-lines' and `occur-engine'.
author Juri Linkov <juri@jurta.org>
date Tue, 23 Mar 2010 09:16:57 +0200
parents f0ec21d379ff
children e009deee2da4 2348ff8393d2
files lisp/ChangeLog lisp/replace.el
diffstat 2 files changed, 21 insertions(+), 23 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Tue Mar 23 09:11:50 2010 +0200
+++ b/lisp/ChangeLog	Tue Mar 23 09:16:57 2010 +0200
@@ -1,3 +1,10 @@
+2010-03-23  Juri Linkov  <juri@jurta.org>
+
+	* replace.el (occur-accumulate-lines, occur-engine):
+	Use `occur-engine-line' instead of duplicate code.
+	(occur-engine-line): New function created from duplicate code
+	in `occur-accumulate-lines' and `occur-engine'.
+
 2010-03-23  Juri Linkov  <juri@jurta.org>
 
 	* finder.el: Remove TODO tasks.
--- a/lisp/replace.el	Tue Mar 23 09:11:50 2010 +0200
+++ b/lisp/replace.el	Tue Mar 23 09:16:57 2010 +0200
@@ -1016,18 +1016,7 @@
 	(setq count (+ count (if forwardp -1 1)))
 	(setq beg (line-beginning-position)
 	      end (line-end-position))
-	(if (and keep-props (if (boundp 'jit-lock-mode) jit-lock-mode)
-		 (text-property-not-all beg end 'fontified t))
-	    (if (fboundp 'jit-lock-fontify-now)
-		(jit-lock-fontify-now beg end)))
-	(push
-	 (if (and keep-props (not (eq occur-excluded-properties t)))
-	     (let ((str (buffer-substring beg end)))
-	       (remove-list-of-text-properties
-		0 (length str) occur-excluded-properties str)
-	       str)
-	   (buffer-substring-no-properties beg end))
-	 result)
+	(push (occur-engine-line beg end) result)
 	(forward-line (if forwardp 1 -1)))
       (nreverse result))))
 
@@ -1228,17 +1217,7 @@
 			    endpt (line-end-position)))
 		    (setq marker (make-marker))
 		    (set-marker marker matchbeg)
-		    (if (and keep-props
-			     (if (boundp 'jit-lock-mode) jit-lock-mode)
-			     (text-property-not-all begpt endpt 'fontified t))
-			(if (fboundp 'jit-lock-fontify-now)
-			    (jit-lock-fontify-now begpt endpt)))
-		    (if (and keep-props (not (eq occur-excluded-properties t)))
-			(progn
-			  (setq curstring (buffer-substring begpt endpt))
-			  (remove-list-of-text-properties
-			   0 (length curstring) occur-excluded-properties curstring))
-		      (setq curstring (buffer-substring-no-properties begpt endpt)))
+		    (setq curstring (occur-engine-line begpt endpt))
 		    ;; Highlight the matches
 		    (let ((len (length curstring))
 			  (start 0))
@@ -1335,6 +1314,18 @@
       ;; Return the number of matches
       globalcount)))
 
+(defun occur-engine-line (beg end)
+  (if (and keep-props (if (boundp 'jit-lock-mode) jit-lock-mode)
+	   (text-property-not-all beg end 'fontified t))
+      (if (fboundp 'jit-lock-fontify-now)
+	  (jit-lock-fontify-now beg end)))
+  (if (and keep-props (not (eq occur-excluded-properties t)))
+      (let ((str (buffer-substring beg end)))
+	(remove-list-of-text-properties
+	 0 (length str) occur-excluded-properties str)
+	str)
+    (buffer-substring-no-properties beg end)))
+
 ;; Generate context display for occur.
 ;; OUT-LINE is the line where the match is.
 ;; NLINES and KEEP-PROPS are args to occur-engine.