# HG changeset patch # User Luc Teirlinck # Date 1093995533 0 # Node ID be5ab12309827c91cee699195905df52fcbe3377 # Parent d407cd57475cd1982ed6f823b2d33c40e47bf10c (apply-macro-to-region-lines): Make it operate on all lines that begin in the region, rather than on all complete lines in the region. diff -r d407cd57475c -r be5ab1230982 lisp/macros.el --- a/lisp/macros.el Tue Aug 31 22:48:41 2004 +0000 +++ b/lisp/macros.el Tue Aug 31 23:38:53 2004 +0000 @@ -1,6 +1,6 @@ ;;; macros.el --- non-primitive commands for keyboard macros -;; Copyright (C) 1985, 86, 87, 92, 94, 95 Free Software Foundation, Inc. +;; Copyright (C) 1985, 86, 87, 92, 94, 95, 04 Free Software Foundation, Inc. ;; Maintainer: FSF ;; Keywords: abbrev @@ -151,7 +151,7 @@ (cond ((= char ?\\) (insert "\\\\")) ((= char ?\") - (insert "\\\"")) + (insert "\\\"")) ((= char ?\;) (insert "\\;")) ((= char 127) @@ -240,8 +240,9 @@ ;;;###autoload (defun apply-macro-to-region-lines (top bottom &optional macro) - "For each complete line between point and mark, move to the beginning -of the line, and run the last keyboard macro. + "Apply last keyboard macro to all lines in the region. +For each line that begins in the region, move to the beginning of +the line, and run the last keyboard macro. When called from lisp, this function takes two arguments TOP and BOTTOM, describing the current region. TOP must be before BOTTOM. @@ -277,8 +278,7 @@ \\C-x ) and then select the region of un-tablified names and use -`\\[apply-macro-to-region-lines]' to build the table from the names. -" +`\\[apply-macro-to-region-lines]' to build the table from the names." (interactive "r") (or macro (progn @@ -286,10 +286,7 @@ (error "No keyboard macro has been defined")) (setq macro last-kbd-macro))) (save-excursion - (let ((end-marker (progn - (goto-char bottom) - (beginning-of-line) - (point-marker))) + (let ((end-marker (copy-marker bottom)) next-line-marker) (goto-char top) (if (not (bolp))