Mercurial > emacs
view admin/revdiff @ 81778:cd3e38bb3dc7
Merge from emacs--rel--22
Patches applied:
* emacs--rel--22 (patch 51-54)
- Update from CVS
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 233-234)
- Merge from emacs--devo--0
- Update from CVS
2007-07-08 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/cus-start.el (file-coding-system-alist): Fix custom type.
2007-07-08 Chong Yidong <cyd@stupidchicken.com>
* lisp/longlines.el (longlines-wrap-region): Avoid marking buffer as
modified.
(longlines-auto-wrap, longlines-window-change-function): Remove
unnecessary calls to set-buffer-modified-p.
2007-07-03 Dan Nicolaescu <dann@ics.uci.edu>
* lisp/progmodes/gud.el (auto-mode-alist): Match more valid gdb init
file names.
2007-07-01 Richard Stallman <rms@gnu.org>
* lisp/files.el (find-file-visit-truename): Fix safe-local-variable value.
2007-07-04 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/gnus-sum.el (gnus-summary-catchup): Don't recognize cached
articles as unfetched articles.
2007-07-02 Reiner Steib <Reiner.Steib@gmx.de>
* lisp/gnus/gnus-start.el (gnus-level-unsubscribed): Improve doc string.
2007-06-26 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/gnus-art.el (gnus-article-summary-command-nosave)
(gnus-article-read-summary-keys): Don't set the 3rd arg of
pop-to-buffer for XEmacs.
2007-07-02 Reiner Steib <Reiner.Steib@gmx.de>
* man/gnus-faq.texi ([3.2]): Fix locating of environment variables in the
Control Panel.
* man/gnus.texi (Misc Article): Add index entry for
gnus-single-article-buffer.
2007-06-27 Andreas Seltenreich <andreas@gate450.dyndns.org>
* man/gnus.texi (Starting Up): Fix typo.
2007-06-25 Katsumi Yamaoka <yamaoka@jpl.org>
* man/gnus.texi (Asynchronous Fetching): Fix typo.
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-806
| author | Miles Bader <miles@gnu.org> |
|---|---|
| date | Tue, 10 Jul 2007 02:02:35 +0000 |
| parents | 3d45362f1d38 |
| children | 450fa81c5930 95d0cdf160ea |
line wrap: on
line source
#! /usr/bin/perl # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 # Free Software Foundation, Inc. # # This file is part of GNU Emacs. # # 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 2, 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 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # 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. use File::Basename; if (@ARGV < 3) { print <<USAGE; revdiff FILE OLD NEW Get a diff of FILE between revisions OLD and NEW. Store the diff in a file named FILE-OLD-NEW.diff. If OLD is `-' use FILE's current revision for OLD. If OLD is `-<number>', use the Nth revision before the current one for OLD. If NEW is +<number> or -<number>, build diffs between revisions OLD and OLD +/- <number>. Examples: revdiff FILE - -1 get the latest change of FILE revdiff FILE -1 +1 also gets the latest change of FILE revdiff FILE 1.500 +2 get diffs 1.500-1.501 and 1.501-1.502. USAGE exit 1; } $file = shift @ARGV; $old = shift @ARGV; sub diffit { my ($old, $new) = @_; print "cvs diff -r$old -r$new $file >$file-$old-$new.diff\n"; system "cvs diff -r$old -r$new $file >$file-$old-$new.diff"; } sub current_revision ($) { my ($file) = @_; my $dir = dirname ($file); my $base = basename ($file); my $entries = "$dir/CVS/Entries"; die "Can't find $entries" unless -f $entries; open (IN, "<$entries") or die "Cannot open $entries"; my $rev; while ($line = <IN>) { if ($line =~ m,/$base/([^/]+),) { $rev = $1; break; } } die "Cannot determine current revision of $file" unless $rev; close (IN); return $rev; } if ($old eq "-") { $old = current_revision ($file); } elsif ($old =~ /^-(\d+)$/) { my $offset = $1; $old = current_revision ($file); die "Internal error" unless $old =~ /(.*)\.(\d+)$/; my $minor = $2 - $offset; $old = sprintf ("%d.%d", $1, $minor); } while (@ARGV) { my $new = shift @ARGV; if ($new =~ /^[+]\d+$/) { my $n = $new; for ($i = 0; $i < $n; ++$i) { unless ($old =~ /(.*)\.(\d+)$/) { die "Internal error"; } my $j = $2 + 1; $new = "$1.$j"; diffit ($old, $new); $old = $new; } } elsif ($new =~ /^[-]\d+$/) { my $n = - $new; for ($i = 0; $i < $n; ++$i) { unless ($old =~ /(.*)\.(\d+)$/) { die "Internal error"; } my $j = $2 - 1; $new = "$1.$j"; diffit ($new, $old); $old = $new; } } else { diffit ($old, $new); $old = $new; } } # Local Variables: # mode: cperl # End: # arch-tag: 2798b20d-c7f2-4c78-8378-7bb529c36a09
