summaryrefslogtreecommitdiff
path: root/admin/bzrmerge.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2012-01-18 22:42:57 -0800
committerGlenn Morris <rgm@gnu.org>2012-01-18 22:42:57 -0800
commit54de86ac6216fc2eece477308dde090381d6b6c7 (patch)
tree81ec4c77d0121a27eb6e26f1edf4b8ad42fd18a4 /admin/bzrmerge.el
parent606c44c4cfea818143b9007754331dcf4fa06561 (diff)
downloademacs-54de86ac6216fc2eece477308dde090381d6b6c7.tar.gz
Small bzrmerge.el change.
* admin/bzrmerge.el (bzrmerge-missing): Allow a definitive "no" answer to the "skip?" question, since there can be multiple such for any revision.
Diffstat (limited to 'admin/bzrmerge.el')
-rw-r--r--admin/bzrmerge.el20
1 files changed, 17 insertions, 3 deletions
diff --git a/admin/bzrmerge.el b/admin/bzrmerge.el
index 2efb17603cd..cb63d5b16ba 100644
--- a/admin/bzrmerge.el
+++ b/admin/bzrmerge.el
@@ -133,9 +133,23 @@ are both lists of revnos, in oldest-first order."
(setq str (substring str (match-end 0))))
(when (string-match "[.!;, ]+\\'" str)
(setq str (substring str 0 (match-beginning 0))))
- (if (save-excursion (y-or-n-p (concat str ": Skip? ")))
- (setq skip t))))
- (if skip
+ (let ((help-form "\
+Type `y' to skip this revision,
+`N' to include it and go on to the next revision,
+`n' to not skip, but continue to search this log entry for skip regexps,
+`q' to quit merging."))
+ (case (save-excursion
+ (read-char-choice
+ (format "%s: Skip (y/n/N/q/%s)? " str
+ (key-description (vector help-char)))
+ '(?y ?n ?N ?q)))
+ (?y (setq skip t))
+ (?q (keyboard-quit))
+ ;; A single log entry can match skip-regexp multiple
+ ;; times. If you are sure you don't want to skip it,
+ ;; you don't want to be asked multiple times.
+ (?N (setq skip 'no))))))
+ (if (eq skip t)
(push revno skipped)
(push revno revnos)))))
(delete-region (point) (point-max)))