Update years in copyright notice; nfc.
[bpt/emacs.git] / lisp / rect.el
index 84094cd..63979cb 100644 (file)
@@ -1,6 +1,7 @@
 ;;; rect.el --- rectangle functions for GNU Emacs
 
-;; Copyright (C) 1985, 1999, 2000, 2001 Free Software Foundation, Inc.
+;; Copyright (C) 1985, 1999, 2000, 2001, 2002, 2003, 2004
+;;   2005, 2006 Free Software Foundation, Inc.
 
 ;; Maintainer: Didier Verna <didier@xemacs.org>
 ;; Keywords: internal
@@ -19,8 +20,8 @@
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
 
 ;;;###autoload
 (defun move-to-column-force (column &optional flag)
-  "Obsolete.  Use `move-to-column'.
-If COLUMN is within a multi-column character, replace it by spaces and tab.
+  "If COLUMN is within a multi-column character, replace it by spaces and tab.
 As for `move-to-column', passing anything but nil or t in FLAG will move to
 the desired column only if the line is long enough."
   (move-to-column column (or flag t)))
-(make-obsolete 'move-to-column-force "move-to-column" "21.2")
+
+;;;###autoload
+(make-obsolete 'move-to-column-force 'move-to-column "21.2")
 
 ;; not used any more --dv
 ;; extract-rectangle-line stores lines into this list
@@ -126,14 +128,14 @@ the function is called."
     ))
 
 (defun delete-rectangle-line (startcol endcol fill)
-  (when (= (move-to-column startcol (or fill 'coerce)) startcol)
+  (when (= (move-to-column startcol (if fill t 'coerce)) startcol)
     (delete-region (point)
                   (progn (move-to-column endcol 'coerce)
                          (point)))))
 
 (defun delete-extract-rectangle-line (startcol endcol lines fill)
   (let ((pt (point-at-eol)))
-    (if (< (move-to-column startcol (or fill 'coerce)) startcol)
+    (if (< (move-to-column startcol (if fill t 'coerce)) startcol)
        (setcdr lines (cons (spaces-string (- endcol startcol))
                            (cdr lines)))
       ;; else
@@ -186,7 +188,7 @@ the function is called."
        (setq val (concat "        " val)
              n (- n 8)))
       (concat val (aref spaces-strings n)))))
-    
+
 ;;;###autoload
 (defun delete-rectangle (start end &optional fill)
   "Delete (don't save) text in the region-rectangle.
@@ -265,7 +267,7 @@ and point is at the lower right corner."
           (or (bolp) (insert ?\n))
           (move-to-column insertcolumn t)))
       (setq first nil)
-      (insert (car lines))
+      (insert-for-yank (car lines))
       (setq lines (cdr lines)))))
 
 ;;;###autoload
@@ -283,17 +285,19 @@ on the right side of the rectangle."
   (goto-char start))
 
 (defun open-rectangle-line (startcol endcol fill)
-  (when (= (move-to-column startcol (or fill 'coerce)) startcol)
+  (when (= (move-to-column startcol (if fill t 'coerce)) startcol)
     (unless (and (not fill)
                 (= (point) (point-at-eol)))
       (indent-to endcol))))
 
 (defun delete-whitespace-rectangle-line (startcol endcol fill)
-  (when (= (move-to-column startcol (or fill 'coerce)) startcol)
+  (when (= (move-to-column startcol (if fill t 'coerce)) startcol)
     (unless (= (point) (point-at-eol))
       (delete-region (point) (progn (skip-syntax-forward " ") (point))))))
 
-;;;###autoload (defalias 'close-rectangle 'delete-whitespace-rectangle) ;; Old name
+;;;###autoload
+(defalias 'close-rectangle 'delete-whitespace-rectangle) ;; Old name
+
 ;;;###autoload
 (defun delete-whitespace-rectangle (start end &optional fill)
   "Delete all whitespace following a specified column in each line.
@@ -318,7 +322,6 @@ With a prefix (or a FILL) argument, also fill too short lines."
   (insert string))
 
 ;;;###autoload
-
 (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.
@@ -329,12 +332,13 @@ Called from a program, takes three args; START, END and STRING."
          (list
           (region-beginning)
           (region-end)
-          (read-string (format "String rectangle (default `%s'): "
+          (read-string (format "String rectangle (default %s): "
                                (or (car string-rectangle-history) ""))
                        nil 'string-rectangle-history
                        (car string-rectangle-history)))))
   (apply-on-rectangle 'string-rectangle-line start end string t))
 
+;;;###autoload
 (defalias 'replace-rectangle 'string-rectangle)
 
 ;;;###autoload
@@ -349,7 +353,7 @@ This command does not delete or overwrite any existing text."
          (list
           (region-beginning)
           (region-end)
-          (read-string (format "String insert rectangle (default `%s'): "
+          (read-string (format "String insert rectangle (default %s): "
                                (or (car string-rectangle-history) ""))
                        nil 'string-rectangle-history
                        (car string-rectangle-history)))))
@@ -368,7 +372,7 @@ rectangle which were empty."
 
 (defun clear-rectangle-line (startcol endcol fill)
   (let ((pt (point-at-eol)))
-    (when (= (move-to-column startcol (or fill 'coerce)) startcol)
+    (when (= (move-to-column startcol (if fill t 'coerce)) startcol)
       (if (and (not fill)
               (<= (save-excursion (goto-char pt) (current-column)) endcol))
          (delete-region (point) pt)
@@ -381,4 +385,5 @@ rectangle which were empty."
 
 (provide 'rect)
 
+;;; arch-tag: 178847b3-1f50-4b03-83de-a6e911cc1d16
 ;;; rect.el ends here