Mercurial > emacs
changeset 85465:b9fe84d8ca5a
(smerge-auto-refine): New var.
(smerge-next, smerge-prev): Use it.
(smerge-batch-resolve): Ad-hoc trick for Arch's .rej files.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Sat, 20 Oct 2007 01:52:22 +0000 |
parents | b8519672d451 |
children | c610862b85d0 |
files | lisp/ChangeLog lisp/smerge-mode.el |
diffstat | 2 files changed, 17 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sat Oct 20 01:50:38 2007 +0000 +++ b/lisp/ChangeLog Sat Oct 20 01:52:22 2007 +0000 @@ -1,5 +1,9 @@ 2007-10-20 Stefan Monnier <monnier@iro.umontreal.ca> + * smerge-mode.el (smerge-auto-refine): New var. + (smerge-next, smerge-prev): Use it. + (smerge-batch-resolve): Ad-hoc trick for Arch's .rej files. + * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): Add `body' arg. Cleanup the check-narrow-maybe/re-narrow-maybe mess.
--- a/lisp/smerge-mode.el Sat Oct 20 01:50:38 2007 +0000 +++ b/lisp/smerge-mode.el Sat Oct 20 01:52:22 2007 +0000 @@ -79,6 +79,10 @@ :group 'smerge :type 'boolean) +(defcustom smerge-auto-refine t + "Automatically highlight changes in detail as the user visits conflicts." + :type 'boolean) + (defface smerge-mine '((((min-colors 88) (background light)) (:foreground "blue1")) @@ -252,7 +256,9 @@ ;;;; ;; Define smerge-next and smerge-prev -(easy-mmode-define-navigation smerge smerge-begin-re "conflict") +(easy-mmode-define-navigation smerge smerge-begin-re "conflict" nil nil + (if smerge-auto-refine + (condition-case nil (smerge-refine) (error nil)))) (defconst smerge-match-names ["conflict" "mine" "base" "other"]) @@ -433,6 +439,12 @@ (error "`smerge-batch-resolve' is to be used only with -batch")) (while command-line-args-left (let ((file (pop command-line-args-left))) + (if (string-match "\\.rej\\'" file) + ;; .rej files should never contain diff3 markers, on the other hand, + ;; in Arch, .rej files are sometimes used to indicate that the + ;; main file has diff3 markers. So you can pass **/*.rej and + ;; it will DTRT. + (setq file (substring file 0 (match-beginning 0)))) (message "Resolving conflicts in %s..." file) (when (file-readable-p file) (with-current-buffer (find-file-noselect file)