diff lisp/rect.el @ 37444:d5ed9aa37aa2

(string-rectangle): Revert to 20.x behaviour. (replace-rectangle): Make it an alias for string-rectangle. (string-insert-rectangle): New function.
author Gerd Moellmann <gerd@gnu.org>
date Tue, 24 Apr 2001 10:56:26 +0000
parents 22ed3ce37a4c
children b174db545cfd
line wrap: on
line diff
--- a/lisp/rect.el	Tue Apr 24 06:33:40 2001 +0000
+++ b/lisp/rect.el	Tue Apr 24 10:56:26 2001 +0000
@@ -1,6 +1,6 @@
 ;;; rect.el --- rectangle functions for GNU Emacs.
 
-;; Copyright (C) 1985, 1999 Free Software Foundation, Inc.
+;; Copyright (C) 1985, 1999, 2000, 2001 Free Software Foundation, Inc.
 
 ;; Maintainer: Didier Verna <verna@inf.enst.fr>
 ;; Keywords: internal
@@ -305,8 +305,7 @@
 (defun delete-whitespace-rectangle-line (startcol endcol fill)
   (when (= (move-to-column-force startcol (or fill 'coerce)) startcol)
     (unless (= (point) (point-at-eol))
-      (delete-region (point) (progn (skip-syntax-forward " ") (point))))
-    ))
+      (delete-region (point) (progn (skip-syntax-forward " ") (point))))))
 
 ;;;###autoload (defalias 'close-rectangle 'delete-whitespace-rectangle) ;; Old name
 ;;;###autoload
@@ -326,22 +325,6 @@
 ;; to string-rectangle-line.
 (defvar string-rectangle-string)
 
-;;;###autoload
-(defun string-rectangle (start end string)
-  "Insert STRING on each line of the region-rectangle, shifting text right.
-
-When called from a program the rectangle's corners are START and END.
-The left edge of the rectangle specifies the column for insertion.
-This command does not delete or overwrite any existing text."
-  (interactive "*r\nsString rectangle: ")
-  ;; XEmacs tests `pending-delete-mode' here, and replaces the
-  ;; rectangle if that's on.  Using `delete-selection-mode' here would
-  ;; only be useful if `mark-even-if-inactive' is on since otherwise
-  ;; we need the mark to be active, given the interactive spec, and
-  ;; then we'd always delete.  Maybe revisit this and consider testing
-  ;; `mark-even-if-inactive' too?
-  (apply-on-rectangle 'string-rectangle-line start end string nil))
-
 (defun string-rectangle-line (startcol endcol string delete)
   (move-to-column-force startcol)
   (if delete
@@ -349,11 +332,26 @@
   (insert string))
 
 ;;;###autoload
-(defun replace-rectangle (start end string)
-  "Like `string-rectangle', but replace the original region."
+(defun string-rectangle (start end string)
+  "Replace rectangle contents with STRING on each line.
+The length of STRING need not be the same as the rectangle width.
+
+Called from a program, takes three args; START, END and STRING."
   (interactive "*r\nsString rectangle: ")
   (apply-on-rectangle 'string-rectangle-line start end string t))
 
+(defalias 'replace-rectangle 'string-rectangle)
+
+;;;###autoload
+(defun string-insert-rectangle (start end string)
+  "Insert STRING on each line of region-rectangle, shifting text right.
+
+When called from a program, the rectangle's corners are START and END.
+The left edge of the rectangle specifies the column for insertion.
+This command does not delete or overwrite any existing text."
+  (interactive "*r\nsString insert rectangle: ")
+  (apply-on-rectangle 'string-rectangle-line start end string nil))
+
 ;;;###autoload
 (defun clear-rectangle (start end &optional fill)
   "Blank out the region-rectangle.
@@ -377,8 +375,7 @@
 	(move-to-column-force endcol)
 	(setq spaces (- (point) pt))
 	(delete-region pt (point))
-	(indent-to (+ (current-column) spaces))))
-    ))
+	(indent-to (+ (current-column) spaces))))))
 
 (provide 'rect)