emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/lisp ChangeLog ediff-init.el ediff-merg.e...


From: Michael Kifer
Subject: [Emacs-diffs] emacs/lisp ChangeLog ediff-init.el ediff-merg.e...
Date: Sat, 15 Aug 2009 05:57:13 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Michael Kifer <kifer>   09/08/15 05:57:12

Modified files:
        lisp           : ChangeLog ediff-init.el ediff-merg.el ediff.el 
        lisp/emulation : viper-cmd.el viper.el 

Log message:
        2009-08-15  Michael Kifer  <address@hidden>
                
                * viper-cmd.el (viper-insert-isearch-string): new function.
                (viper-if-string): redefine C-s in the minibuffer to insert the 
last
                incremental search string.
                
                * ediff-init.el (ediff-coding-system): use escape-quoted in 
case of
                XEmacs.
                
                * ediff-merg.el (ediff-merge-region-is-non-clash-to-skip,
                ediff-merge-region-is-non-clash,
                ediff-skip-merge-region-if-changed-from-default-p): use defun.
                Also check if the job is really a merge job.
                
                * ediff.el (ediff-current-file): new function.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.15938&r2=1.15939
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ediff-init.el?cvsroot=emacs&r1=1.96&r2=1.97
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ediff-merg.el?cvsroot=emacs&r1=1.43&r2=1.44
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ediff.el?cvsroot=emacs&r1=1.107&r2=1.108
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/emulation/viper-cmd.el?cvsroot=emacs&r1=1.83&r2=1.84
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/emulation/viper.el?cvsroot=emacs&r1=1.121&r2=1.122

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.15938
retrieving revision 1.15939
diff -u -b -r1.15938 -r1.15939
--- ChangeLog   15 Aug 2009 01:04:14 -0000      1.15938
+++ ChangeLog   15 Aug 2009 05:57:08 -0000      1.15939
@@ -1,3 +1,19 @@
+2009-08-15  Michael Kifer  <address@hidden>
+       
+       * viper-cmd.el (viper-insert-isearch-string): new function.
+       (viper-if-string): redefine C-s in the minibuffer to insert the last
+       incremental search string.
+       
+       * ediff-init.el (ediff-coding-system): use escape-quoted in case of
+       XEmacs.
+       
+       * ediff-merg.el (ediff-merge-region-is-non-clash-to-skip,
+       ediff-merge-region-is-non-clash,
+       ediff-skip-merge-region-if-changed-from-default-p): use defun.
+       Also check if the job is really a merge job.
+       
+       * ediff.el (ediff-current-file): new function.
+       
 2009-08-15  Chong Yidong  <address@hidden>
 
        * progmodes/js.el: Edit docstrings throughout to follow Emacs

Index: ediff-init.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/ediff-init.el,v
retrieving revision 1.96
retrieving revision 1.97
diff -u -b -r1.96 -r1.97
--- ediff-init.el       5 Jan 2009 03:18:58 -0000       1.96
+++ ediff-init.el       15 Aug 2009 05:57:12 -0000      1.97
@@ -727,7 +727,9 @@
   :type 'symbol
   :group 'ediff)
 
-(defcustom ediff-coding-system-for-write 'emacs-internal
+(defcustom ediff-coding-system-for-write (if (featurep 'xemacs)
+                                            'escape-quoted
+                                          'emacs-internal)
   "The coding system for write to use when writing out difference regions
 to temp files in buffer jobs and when Ediff needs to find fine differences."
   :type 'symbol

Index: ediff-merg.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/ediff-merg.el,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -b -r1.43 -r1.44
--- ediff-merg.el       31 Jan 2009 22:10:29 -0000      1.43
+++ ediff-merg.el       15 Aug 2009 05:57:12 -0000      1.44
@@ -97,23 +97,25 @@
 
 ;; check if there is no clash between the ancestor and one of the variants.
 ;; if it is not a merge job then return true
-(defsubst ediff-merge-region-is-non-clash (n)
+(defun ediff-merge-region-is-non-clash (n)
   (if (ediff-merge-job)
       (string-match "prefer" (or (ediff-get-state-of-merge n) ""))
     t))
 
 ;; If ediff-show-clashes-only, check if there is no clash between the ancestor
 ;; and one of the variants.
-(defsubst ediff-merge-region-is-non-clash-to-skip (n)
-  (and ediff-show-clashes-only
+(defun ediff-merge-region-is-non-clash-to-skip (n)
+  (and (ediff-merge-job)
+       ediff-show-clashes-only
        (ediff-merge-region-is-non-clash n)))
 
 ;; If ediff-skip-changed-regions, check if the merge region differs from
 ;; the current default. If a region is different from the default, it means
 ;; that the user has made determination as to how to merge for this particular
 ;; region.
-(defsubst ediff-skip-merge-region-if-changed-from-default-p (n)
-  (and ediff-skip-merge-regions-that-differ-from-default
+(defun ediff-skip-merge-region-if-changed-from-default-p (n)
+  (and (ediff-merge-job)
+       ediff-skip-merge-regions-that-differ-from-default
        (ediff-merge-changed-from-default-p n 'prefers-too)))
 
 

Index: ediff.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/ediff.el,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -b -r1.107 -r1.108
--- ediff.el    31 Jan 2009 22:10:30 -0000      1.107
+++ ediff.el    15 Aug 2009 05:57:12 -0000      1.108
@@ -12,8 +12,8 @@
 ;; filed in the Emacs bug reporting system against this file, a copy
 ;; of the bug report be sent to the maintainer's email address.
 
-(defconst ediff-version "2.81.2" "The current version of Ediff")
-(defconst ediff-date "November 22, 2008" "Date of last update")
+(defconst ediff-version "2.81.3" "The current version of Ediff")
+(defconst ediff-date "August 15, 2009" "Date of last update")
 
 
 ;; This file is part of GNU Emacs.
@@ -361,6 +361,43 @@
 (defalias 'ediff 'ediff-files)
 
 ;;;###autoload
+(defun ediff-current-file ()
+  "Start ediff between current buffer and its file on disk.
+This command can be used instead of `revert-buffer'.  If there is
+nothing to revert then this command fails."
+  (interactive)
+  (unless (or revert-buffer-function
+              revert-buffer-insert-file-contents-function
+              (and buffer-file-number
+                   (or (buffer-modified-p)
+                       (not (verify-visited-file-modtime
+                             (current-buffer))))))
+    (error "Nothing to revert"))
+  (let* ((auto-save-p (and (recent-auto-save-p)
+                           buffer-auto-save-file-name
+                           (file-readable-p buffer-auto-save-file-name)
+                           (y-or-n-p
+                            "Buffer has been auto-saved recently.  Compare 
with auto-save file? ")))
+         (file-name (if auto-save-p
+                        buffer-auto-save-file-name
+                      buffer-file-name))
+         (revert-buf-name (concat "FILE=" file-name))
+         (revert-buf (get-buffer revert-buf-name))
+         (current-major major-mode))
+    (unless file-name
+      (error "Buffer does not seem to be associated with any file"))
+    (when revert-buf
+      (kill-buffer revert-buf)
+      (setq revert-buf nil))
+    (setq revert-buf (get-buffer-create revert-buf-name))
+    (with-current-buffer revert-buf
+      (insert-file-contents file-name)
+      ;; Assume same modes:
+      (funcall current-major))
+    (ediff-buffers revert-buf (current-buffer))))
+
+
+;;;###autoload
 (defun ediff-backup (file)
   "Run Ediff on FILE and its backup file.
 Uses the latest backup, if there are several numerical backups.

Index: emulation/viper-cmd.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/emulation/viper-cmd.el,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -b -r1.83 -r1.84
--- emulation/viper-cmd.el      9 Jan 2009 05:01:01 -0000       1.83
+++ emulation/viper-cmd.el      15 Aug 2009 05:57:12 -0000      1.84
@@ -3685,15 +3685,24 @@
 
 ;; searching
 
+(defun viper-insert-isearch-string ()
+  "Insert `isearch' last search string."
+  (interactive)
+  (when isearch-string (insert isearch-string)))
+
 (defun viper-if-string (prompt)
   (if (memq viper-intermediate-command
            '(viper-command-argument viper-digit-argument viper-repeat))
       (setq viper-this-command-keys (this-command-keys)))
-  (let ((s (viper-read-string-with-history
+  (let* ((keymap (let ((keymap (copy-keymap minibuffer-local-map)))
+                   (define-key keymap [(control ?s)] 
'viper-insert-isearch-string)
+                   keymap))
+         (s (viper-read-string-with-history
            prompt
            nil ; no initial
            'viper-search-history
-           (car viper-search-history))))
+             (car viper-search-history)
+             keymap)))
     (if (not (string= s ""))
        (setq viper-s-string s))))
 

Index: emulation/viper.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/emulation/viper.el,v
retrieving revision 1.121
retrieving revision 1.122
diff -u -b -r1.121 -r1.122
--- emulation/viper.el  9 Jan 2009 04:36:04 -0000       1.121
+++ emulation/viper.el  15 Aug 2009 05:57:12 -0000      1.122
@@ -14,7 +14,7 @@
 ;; filed in the Emacs bug reporting system against this file, a copy
 ;; of the bug report be sent to the maintainer's email address.
 
-(defconst viper-version "3.14 of November 22, 2008"
+(defconst viper-version "3.14.1 of August 15, 2009"
   "The current version of Viper")
 
 ;; This file is part of GNU Emacs.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]