aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuc Teirlinck2004-08-31 23:38:53 +0000
committerLuc Teirlinck2004-08-31 23:38:53 +0000
commit2b1c8da040de829cd62574b24e332097f27493ce (patch)
tree621ba12b98a5bd6f1c1f20174278a37a1aae0916
parent745e0c15bbafa7db801057de5df0a68d772b0800 (diff)
downloademacs-2b1c8da040de829cd62574b24e332097f27493ce.tar.gz
emacs-2b1c8da040de829cd62574b24e332097f27493ce.zip
(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.
-rw-r--r--lisp/macros.el17
1 files changed, 7 insertions, 10 deletions
diff --git a/lisp/macros.el b/lisp/macros.el
index 72ba3f11721..0de5d223ee0 100644
--- a/lisp/macros.el
+++ b/lisp/macros.el
@@ -1,6 +1,6 @@
1;;; macros.el --- non-primitive commands for keyboard macros 1;;; macros.el --- non-primitive commands for keyboard macros
2 2
3;; Copyright (C) 1985, 86, 87, 92, 94, 95 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 86, 87, 92, 94, 95, 04 Free Software Foundation, Inc.
4 4
5;; Maintainer: FSF 5;; Maintainer: FSF
6;; Keywords: abbrev 6;; Keywords: abbrev
@@ -151,7 +151,7 @@ use this command, and then save the file."
151 (cond ((= char ?\\) 151 (cond ((= char ?\\)
152 (insert "\\\\")) 152 (insert "\\\\"))
153 ((= char ?\") 153 ((= char ?\")
154 (insert "\\\"")) 154 (insert "\\\""))
155 ((= char ?\;) 155 ((= char ?\;)
156 (insert "\\;")) 156 (insert "\\;"))
157 ((= char 127) 157 ((= char 127)
@@ -240,8 +240,9 @@ Possibilities: \\<query-replace-map>
240 240
241;;;###autoload 241;;;###autoload
242(defun apply-macro-to-region-lines (top bottom &optional macro) 242(defun apply-macro-to-region-lines (top bottom &optional macro)
243 "For each complete line between point and mark, move to the beginning 243 "Apply last keyboard macro to all lines in the region.
244of the line, and run the last keyboard macro. 244For each line that begins in the region, move to the beginning of
245the line, and run the last keyboard macro.
245 246
246When called from lisp, this function takes two arguments TOP and 247When called from lisp, this function takes two arguments TOP and
247BOTTOM, describing the current region. TOP must be before BOTTOM. 248BOTTOM, describing the current region. TOP must be before BOTTOM.
@@ -277,8 +278,7 @@ and write a macro to massage a word into a table entry:
277 \\C-x ) 278 \\C-x )
278 279
279and then select the region of un-tablified names and use 280and then select the region of un-tablified names and use
280`\\[apply-macro-to-region-lines]' to build the table from the names. 281`\\[apply-macro-to-region-lines]' to build the table from the names."
281"
282 (interactive "r") 282 (interactive "r")
283 (or macro 283 (or macro
284 (progn 284 (progn
@@ -286,10 +286,7 @@ and then select the region of un-tablified names and use
286 (error "No keyboard macro has been defined")) 286 (error "No keyboard macro has been defined"))
287 (setq macro last-kbd-macro))) 287 (setq macro last-kbd-macro)))
288 (save-excursion 288 (save-excursion
289 (let ((end-marker (progn 289 (let ((end-marker (copy-marker bottom))
290 (goto-char bottom)
291 (beginning-of-line)
292 (point-marker)))
293 next-line-marker) 290 next-line-marker)
294 (goto-char top) 291 (goto-char top)
295 (if (not (bolp)) 292 (if (not (bolp))