summaryrefslogtreecommitdiff
path: root/lisp/misc.el
diff options
context:
space:
mode:
authorLute Kamstra <lute@gnu.org>2003-09-24 08:52:09 +0000
committerLute Kamstra <lute@gnu.org>2003-09-24 08:52:09 +0000
commit2fd8a18a9ad52c78c4a3cdc032badb81678a67f4 (patch)
tree0e02d444dcdec7e3e6f13364f5c182c2c88baf46 /lisp/misc.el
parent41beda59dd0be296535241c6f1d021d321cb6ea9 (diff)
downloademacs-2fd8a18a9ad52c78c4a3cdc032badb81678a67f4.tar.gz
emacs-2fd8a18a9ad52c78c4a3cdc032badb81678a67f4.tar.bz2
emacs-2fd8a18a9ad52c78c4a3cdc032badb81678a67f4.zip
(upcase-char): Fix docstring.
(zap-up-to-char): New command.
Diffstat (limited to 'lisp/misc.el')
-rw-r--r--lisp/misc.el21
1 files changed, 19 insertions, 2 deletions
diff --git a/lisp/misc.el b/lisp/misc.el
index 2ca39f7b1e5..31a35affad0 100644
--- a/lisp/misc.el
+++ b/lisp/misc.el
@@ -1,6 +1,6 @@
;;; misc.el --- some nonstandard basic editing commands for Emacs
-;; Copyright (C) 1989 Free Software Foundation, Inc.
+;; Copyright (C) 1989, 2003 Free Software Foundation, Inc.
;; Maintainer: FSF
;; Keywords: convenience
@@ -58,6 +58,23 @@ The characters copied are inserted in the buffer before point."
(+ n (point)))))))
(insert string)))
+;; Variation of `zap-to-char'.
+
+(defun zap-up-to-char (arg char)
+ "Kill up to, but not including ARG'th occurrence of CHAR.
+Case is ignored if `case-fold-search' is non-nil in the current buffer.
+Goes backward if ARG is negative; error if CHAR not found.
+Ignores CHAR at point."
+ (interactive "p\ncZap up to char: ")
+ (let ((direction (if (>= arg 0) 1 -1)))
+ (kill-region (point)
+ (progn
+ (forward-char direction)
+ (unwind-protect
+ (search-forward (char-to-string char) nil nil arg)
+ (backward-char direction))
+ (point)))))
+
;; These were added with an eye to making possible a more CCA-compatible
;; command set; but that turned out not to be interesting.
@@ -72,7 +89,7 @@ The characters copied are inserted in the buffer before point."
(push-mark (point-max)))
(defun upcase-char (arg)
- "Uppercasify ARG chars starting from point. Point doesn't move"
+ "Uppercasify ARG chars starting from point. Point doesn't move."
(interactive "p")
(save-excursion
(upcase-region (point) (progn (forward-char arg) (point)))))