changeset 12557:34e9427fe8f5

(canonically-space-region): Doc fix. (fill-region-as-paragraph): In adaptive-fill-mode, if paragraph has one line, take the fill prefix from it. (adaptive-fill-regexp): Doc fix. (fill-individual-paragraphs): Use `adaptive-fill-regexp' to determine `fill-prefix' if `adaptive-fill-mode' is non-nil.
author Karl Heuer <kwzh@gnu.org>
date Mon, 17 Jul 1995 22:50:30 +0000
parents fb1b760f6636
children 98c9ac60aa20
files lisp/textmodes/fill.el
diffstat 1 files changed, 18 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/textmodes/fill.el	Mon Jul 17 22:49:37 1995 +0000
+++ b/lisp/textmodes/fill.el	Mon Jul 17 22:50:30 1995 +0000
@@ -61,7 +61,8 @@
   "*Regexp to match text at start of line that constitutes indentation.
 If Adaptive Fill mode is enabled, whatever text matches this pattern
 on the second line of a paragraph is used as the standard indentation
-for the paragraph.")
+for the paragraph.  If the paragraph has just one line, the indentation
+is taken from that line.")
 
 (defun current-fill-column ()
   "Return the fill-column to use for this line.
@@ -92,7 +93,7 @@
 (defun canonically-space-region (beg end)
   "Remove extra spaces between words in region.
 Puts one space between words in region; two between sentences.
-Remove indenation from each line."
+Remove indentation from each line."
   (interactive "r")
   (save-excursion
     (goto-char beg)
@@ -180,17 +181,17 @@
 	  (save-excursion
 	    (goto-char from)
 	    (if (eolp) (forward-line 1))
-	    (forward-line 1)
+	    ;; Move to the second line unless there is just one.
+	    (let ((firstline (point)))
+	      (forward-line 1)
+	      (if (>= (point) to)
+		  (goto-char firstline)))
 	    (move-to-left-margin)
-	    (if (< (point) to)
-		(let ((start (point)))
-		  (re-search-forward adaptive-fill-regexp)
-		  (setq fill-prefix (buffer-substring start (point)))
-		  (set-text-properties 0 (length fill-prefix) nil
-				       fill-prefix)))
-	    ;; If paragraph has only one line, don't assume in general
-	    ;; that additional lines would have the same starting
-	    ;; decoration.  Assume no indentation.
+	    (let ((start (point)))
+	      (re-search-forward adaptive-fill-regexp)
+	      (setq fill-prefix (buffer-substring start (point)))
+	      (set-text-properties 0 (length fill-prefix) nil
+				   fill-prefix))
 	    ))
 
       (save-restriction
@@ -762,8 +763,11 @@
 		   (if (not (and fill-prefix
 				 (looking-at fill-prefix-regexp)))
 		       (setq fill-prefix
-			     (buffer-substring (point)
-					       (save-excursion (skip-chars-forward " \t") (point)))
+			     (if (and adaptive-fill-mode adaptive-fill-regexp
+				      (looking-at (concat "\\(" adaptive-fill-regexp "\\)")))
+				 (match-string 1)
+			       (buffer-substring (point)
+						 (save-excursion (skip-chars-forward " \t") (point))))
 			     fill-prefix-regexp
 			     (regexp-quote fill-prefix)))
 		   (forward-line 1)