X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/341dd15a7bd9d0b4adff846e94289b3e1877eed1..114f9c96795aff3b51b9060d7c9c1b77debcc99a:/lisp/diff.el diff --git a/lisp/diff.el b/lisp/diff.el index d8de7c2bb1..0206c17e77 100644 --- a/lisp/diff.el +++ b/lisp/diff.el @@ -1,17 +1,19 @@ ;;; diff.el --- run `diff' in compilation-mode -;; Copyright (C) 1992, 1994, 1996, 2001, 2002, 2003, 2004, -;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +;; Copyright (C) 1992, 1994, 1996, 2001, 2002, 2003, 2004, 2005, 2006, +;; 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +;; Author: Frank Bresz +;; (according to authors.el) ;; Maintainer: FSF ;; Keywords: unix, tools ;; This file is part of GNU Emacs. -;; GNU Emacs is free software; you can redistribute it and/or modify +;; GNU Emacs is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 3, or (at your option) -;; any later version. +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -19,9 +21,7 @@ ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GNU Emacs. If not, see . ;;; Commentary: @@ -36,14 +36,14 @@ :group 'tools) ;;;###autoload -(defcustom diff-switches "-c" - "*A string or list of strings specifying switches to be passed to diff." +(defcustom diff-switches (purecopy "-c") + "A string or list of strings specifying switches to be passed to diff." :type '(choice string (repeat string)) :group 'diff) ;;;###autoload -(defcustom diff-command "diff" - "*The command to use to run diff." +(defcustom diff-command (purecopy "diff") + "The command to use to run diff." :type 'string :group 'diff) @@ -70,7 +70,9 @@ were found." (goto-char (point-max)) (let ((inhibit-read-only t)) (insert (format "\nDiff finished%s. %s\n" - (if (equal 0 code) " (no differences)" "") + (cond ((equal 0 code) " (no differences)") + ((equal 2 code) " (diff error)") + (t "")) (current-time-string)))))) (defvar diff-old-file nil) @@ -80,10 +82,14 @@ were found." ;;;###autoload (defun diff (old new &optional switches no-async) "Find and display the differences between OLD and NEW files. -Interactively the current buffer's file name is the default for NEW -and a backup file for NEW is the default for OLD. +When called interactively, read OLD and NEW using the minibuffer; +the default for NEW is the current buffer's file name, and the +default for OLD is a backup file for NEW, if one exists. If NO-ASYNC is non-nil, call diff synchronously. -With prefix arg, prompt for diff switches." + +When called interactively with a prefix argument, prompt +interactively for diff switches. Otherwise, the switches +specified in `diff-switches' are passed to the diff command." (interactive (let (oldf newf) (setq newf (buffer-file-name)