CVS update by michaelk packages/xemacs-packages/ediff, ediff-ptch.el ...

xemacs-cvs at xemacs.org xemacs-cvs at xemacs.org
Tue Jun 12 15:25:26 EDT 2007


  User: michaelk
  Date: 07/06/12 21:25:26

  Modified:    packages/xemacs-packages/ediff ediff.texi ediff-util.el
                        ediff-ptch.el ediff-mult.el ediff-init.el ChangeLog
Log:
2007-06-12  Michael Kifer  <kifer at cs.stonybrook.edu>

	* ediff-mult.el
	(ediff-meta-buffer-brief-message,ediff-meta-buffer-verbose-message):
	new variables.
	(ediff-meta-buffer-message): variable deleted.
	(ediff-verbose-help-enabled): new variable.
	(ediff-toggle-verbose-help-meta-buffer): new function.
	(ediff-redraw-directory-group-buffer): made aware of short/verbose
	message options

	* ediff-ptch.el (ediff-context-diff-label-regexp): better regexp.
	(ediff-fixup-patch-map): improved heuristic.

Revision  Changes    Path
1.36      +1 -0      XEmacs/packages/xemacs-packages/ediff/ediff.texi

Index: ediff.texi
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ediff/ediff.texi,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -p -r1.35 -r1.36
--- ediff.texi	2006/08/25 16:43:17	1.35
+++ ediff.texi	2007/06/12 19:25:24	1.36
@@ -2506,6 +2506,7 @@ Andy Scott (ascott@@pcocd2.intel.com),
 Axel Seibert (axel@@tumbolia.ppp.informatik.uni-muenchen.de),
 Vin Shelton (acs@@xemacs.org),
 Scott O. Sherman (Scott.Sherman@@mci.com),
+Nikolaj Schumacher (n_schumacher@@web.de),
 Richard Stallman (rms@@gnu.org),
 Richard Stanton (stanton@@haas.berkeley.edu),
 Sam Steingold (sds@@goems.com),



1.35      +6 -6      XEmacs/packages/xemacs-packages/ediff/ediff-util.el

Index: ediff-util.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ediff/ediff-util.el,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -p -r1.34 -r1.35
--- ediff-util.el	2007/01/23 21:42:43	1.34
+++ ediff-util.el	2007/06/12 19:25:24	1.35
@@ -4315,11 +4315,11 @@ Mail anyway? (y or n) ")
 (provide 'ediff-util)
 
 
-;;; Local Variables:
-;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun)
-;;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1)
-;;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body))
-;;; End:
+;; Local Variables:
+;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun)
+;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1)
+;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body))
+;; End:
 
-;;; arch-tag: f51099b6-ef4b-470f-88a1-3a0e0b03a879
+;; arch-tag: f51099b6-ef4b-470f-88a1-3a0e0b03a879
 ;;; ediff-util.el ends here



1.19      +11 -10    XEmacs/packages/xemacs-packages/ediff/ediff-ptch.el

Index: ediff-ptch.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ediff/ediff-ptch.el,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -p -r1.18 -r1.19
--- ediff-ptch.el	2007/01/23 21:42:44	1.18
+++ ediff-ptch.el	2007/06/12 19:25:24	1.19
@@ -136,10 +136,10 @@ patch.  So, don't change these variables
 
 (defcustom ediff-context-diff-label-regexp
   (concat "\\(" 	; context diff 2-liner
-	  "^\\*\\*\\* \\([^ \t]+\\)[^*]+[\t ]*\n--- \\([^ \t]+\\)"
+	  "^\\*\\*\\* \\([^\t]+\\)[^*]+[\t ]*\n--- \\([^\t]+\\)"
 	  "\\|" 	; GNU unified format diff 2-liner
-	  "^--- \\([^ \t]+\\)[\t ]+.*\n\\+\\+\\+ \\([^ \t]+\\)"
-	  "\\)")
+	  "^--- \\([^\t]+\\)[\t ]+.*\n\\+\\+\\+ \\([^\t]+\\)"
+	  "\\)"))
   "*Regexp matching filename 2-liners at the start of each context diff.
 You probably don't want to change that, unless you are using an obscure patch
 program."
@@ -231,7 +231,7 @@ program."
 	    ;; possible-file-names is holding the new file names until we
 	    ;; insert the old file name in the patch map
 	    ;; It is a pair
-	    ;;     (filename-from-1st-header-line . fn from 2nd line)
+	    ;;     (filename-from-1st-header-line . filename-from-2nd-line)
 	    (setq possible-file-names
 		  (cons (if (and beg1 end1)
 			    (buffer-substring beg1 end1)
@@ -309,12 +309,13 @@ program."
 		;; these dirs lead to the actual files starting at the present
 		;; directory. So, we don't strip these relative dirs from the
 		;; file names. This is a heuristic intended to improve guessing
-		(unless (or (file-name-absolute-p base-dir1)
-			    (file-name-absolute-p base-dir2)
-			    (not (file-exists-p base-dir1))
-			    (not (file-exists-p base-dir2)))
-		  (setq base-dir1 ""
-			base-dir2 ""))
+		(let ((default-directory (file-name-directory filename)))
+		  (unless (or (file-name-absolute-p base-dir1)
+			      (file-name-absolute-p base-dir2)
+			      (not (file-exists-p base-dir1))
+			      (not (file-exists-p base-dir2)))
+		    (setq base-dir1 ""
+			  base-dir2 "")))
 		(or (string= (car proposed-file-names) "/dev/null")
 		    (setcar proposed-file-names
 			    (ediff-file-name-sans-prefix



1.29      +43 -19    XEmacs/packages/xemacs-packages/ediff/ediff-mult.el

Index: ediff-mult.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ediff/ediff-mult.el,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -p -r1.28 -r1.29
--- ediff-mult.el	2007/01/23 21:42:44	1.28
+++ ediff-mult.el	2007/06/12 19:25:25	1.29
@@ -129,9 +129,15 @@
 ;; the registry buffer
 (defvar ediff-registry-buffer nil)
 
-(defconst ediff-meta-buffer-message "This is an Ediff Session Group Panel: %s
+(defconst ediff-meta-buffer-brief-message "Ediff Session Group Panel: %s
 
-Useful commands:
+     Type ? to show useful commands in this buffer
+
+")
+
+(defconst ediff-meta-buffer-verbose-message "Ediff Session Group Panel: %s
+
+Useful commands (type ? to hide them and free up screen):
      button2, v, or RET over session record:   start that Ediff session
      M:\tin sessions invoked from here, brings back this group panel
      R:\tdisplay the registry of active Ediff sessions
@@ -360,10 +366,24 @@ buffers."
        (if (stringp (ediff-get-session-objC-name session-info))
 	   (file-directory-p (ediff-get-session-objC-name session-info)) t)))
 
+
+(ediff-defvar-local ediff-verbose-help-enabled nil
+  "If t, display redundant help in ediff-directories and other meta buffers.
+Toggled by ediff-toggle-verbose-help-meta-buffer" )
+  
+;; Toggle verbose help in meta-buffers
+;; TODO: Someone who understands all this can make it better.
+(defun ediff-toggle-verbose-help-meta-buffer ()
+  "Toggle showing tediously verbose help in meta buffers."
+  (interactive)
+  (setq ediff-verbose-help-enabled (not ediff-verbose-help-enabled))
+  (ediff-update-meta-buffer (current-buffer) 'must-redraw))
+
 ;; set up the keymap in the meta buffer
 (defun ediff-setup-meta-map ()
   (setq ediff-meta-buffer-map (make-sparse-keymap))
   (suppress-keymap ediff-meta-buffer-map)
+  (define-key ediff-meta-buffer-map "?" 'ediff-toggle-verbose-help-meta-buffer)
   (define-key ediff-meta-buffer-map "q" 'ediff-quit-meta-buffer)
   (define-key ediff-meta-buffer-map "T" 'ediff-toggle-filename-truncation)
   (define-key ediff-meta-buffer-map "R" 'ediff-show-registry)
@@ -924,27 +944,31 @@ behavior."
        (mapcar 'delete-overlay (overlays-in 1 1))  ; emacs
        )
 
-      (insert (format ediff-meta-buffer-message
-		      (ediff-abbrev-jobname ediff-metajob-name)))
-
       (setq regexp (ediff-get-group-regexp meta-list)
 	    merge-autostore-dir
 	    (ediff-get-group-merge-autostore-dir meta-list))
+
+      (if ediff-verbose-help-enabled
+	  (progn
+	    (insert (format ediff-meta-buffer-verbose-message
+			    (ediff-abbrev-jobname ediff-metajob-name)))
 
-      (cond ((ediff-collect-diffs-metajob)
-	     (insert
-	      "     P:\tcollect custom diffs of all marked sessions\n"))
-	    ((ediff-patch-metajob)
-	     (insert
-	      "     P:\tshow patch appropriately for the context (session or group)\n")))
-      (insert
-       "     ^:\tshow parent session group\n")
-      (or (ediff-one-filegroup-metajob)
-	  (insert
-	   "     D:\tshow differences among directories\n"
-	   "    ==:\tfor each session, show which files are identical\n"
-	   "    =h:\tlike ==, but also marks those sessions for hiding\n"
-	   "    =m:\tlike ==, but also marks those sessions for operation\n\n"))
+	    (cond ((ediff-collect-diffs-metajob)
+		   (insert
+		    "     P:\tcollect custom diffs of all marked sessions\n"))
+		  ((ediff-patch-metajob)
+		   (insert
+		    "     P:\tshow patch appropriately for the context (session or group)\n")))
+	    (insert
+	     "     ^:\tshow parent session group\n")
+	    (or (ediff-one-filegroup-metajob)
+		(insert
+		 "     D:\tshow differences among directories\n"
+		 "    ==:\tfor each session, show which files are identical\n"
+		 "    =h:\tlike ==, but also marks sessions for hiding\n"
+		 "    =m:\tlike ==, but also marks sessions for operation\n\n")))
+	(insert (format ediff-meta-buffer-brief-message
+			(ediff-abbrev-jobname ediff-metajob-name))))
 
       (insert "\n")
       (if (and (stringp regexp) (> (length regexp) 0))



1.37      +8 -6      XEmacs/packages/xemacs-packages/ediff/ediff-init.el

Index: ediff-init.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ediff/ediff-init.el,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -p -r1.36 -r1.37
--- ediff-init.el	2007/01/23 21:42:44	1.36
+++ ediff-init.el	2007/06/12 19:25:25	1.37
@@ -110,6 +110,7 @@ that Ediff doesn't know about.")
 ;;
 ;; Plagiarised from `emerge-defvar-local' for XEmacs.
 (defmacro ediff-defvar-local (var value doc)
+  (declare (indent defun))
   `(progn
      (defvar ,var ,value ,doc)
      (make-variable-buffer-local ',var)
@@ -258,6 +259,7 @@ It needs to be killed when we quit the s
 ;; Doesn't save the point and mark.
 ;; This is `with-current-buffer' with the added test for live buffers."
 (defmacro ediff-with-current-buffer (buffer &rest body)
+  (declare (indent 1) (debug (form body)))
   `(if (ediff-buffer-live-p ,buffer)
        (save-current-buffer
 	 (set-buffer ,buffer)
@@ -1873,11 +1875,11 @@ Unless optional argument INPLACE is non-
 
 
 
-;;; Local Variables:
-;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun)
-;;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1)
-;;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body))
-;;; End:
+;; Local Variables:
+;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun)
+;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1)
+;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body))
+;; End:
 
-;;; arch-tag: fa31d384-1e70-4d4b-82a7-3e96307c46f5
+;; arch-tag: fa31d384-1e70-4d4b-82a7-3e96307c46f5
 ;;; ediff-init.el ends here



1.116     +15 -1     XEmacs/packages/xemacs-packages/ediff/ChangeLog

Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ediff/ChangeLog,v
retrieving revision 1.115
retrieving revision 1.116
diff -u -p -r1.115 -r1.116
--- ChangeLog	2007/01/24 08:42:57	1.115
+++ ChangeLog	2007/06/12 19:25:25	1.116
@@ -1,7 +1,21 @@
+2007-06-12  Michael Kifer  <kifer at cs.stonybrook.edu>
+	
+	* ediff-mult.el
+	(ediff-meta-buffer-brief-message,ediff-meta-buffer-verbose-message):
+	new variables.
+	(ediff-meta-buffer-message): variable deleted.
+	(ediff-verbose-help-enabled): new variable.
+	(ediff-toggle-verbose-help-meta-buffer): new function.
+	(ediff-redraw-directory-group-buffer): made aware of short/verbose
+	message options
+	
+	* ediff-ptch.el (ediff-context-diff-label-regexp): better regexp.
+	(ediff-fixup-patch-map): improved heuristic.
+	
 2007-01-24  Norbert Koch  <viteno at xemacs.org>
 
 	* Makefile (VERSION): XEmacs package 1.68 released.
-
+	
 2007-01-23  Michael Kifer  <kifer at cs.stonybrook.edu>
 	
 	* ediff-util.el (ediff-clone-buffer-for-region-comparison): change text





More information about the XEmacs-CVS mailing list