From: "Stefan Monnier" <monnier+gnu/emacs@RUM.cs.yale.edu>
Cc: Alex Schroeder <alex@emacswiki.org>, emacs-devel@gnu.org
Subject: Re: Assignment of misc packages for emacs
Date: Tue, 07 May 2002 21:47:47 -0400 [thread overview]
Message-ID: <200205080147.g481lmD01045@rum.cs.yale.edu> (raw)
In-Reply-To: buo4rhj5tii.fsf@mcspd15.ucom.lsi.nec.co.jp
> Also note that `diff-mode', which is what VC diffs are `colorized' with,
> also offers many useful features for manipulating diffs -- navigation,
> applying/unapplying of hunks, format conversion, direction reversal, and
> even sane editing of the diff file [it automatically adjusts the line
> counts for you]. It's quite snazzy...
>
> There was some small issue that interfered with it being used for `M-x
> diff' output, but my vague memory is that it was pretty trivial (my
> recollection is that I thought the proper solution was to say `fuck it'
> and use diff-mode anyway).
I personally use the patch below but never bothered to try and
make it into something good enough to install. I don't even know
what is missing (if anything).
I don't have it high on my todo list, so if anybody wants to see
it happen, he'd better do it himself,
Stefan
Index: diff.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/diff.el,v
retrieving revision 1.43
diff -u -r1.43 diff.el
--- diff.el 11 Oct 2001 01:20:16 -0000 1.43
+++ diff.el 8 May 2002 01:44:00 -0000
@@ -91,11 +91,8 @@
;; Don't reparse diffs already seen at last parse.
(if compilation-parsing-end (goto-char compilation-parsing-end))
- ;; Construct in REGEXP a regexp composed of all those in dired-regexp-alist.
- (let ((regexp (mapconcat (lambda (elt)
- (concat "\\(" (car elt) "\\)"))
- diff-regexp-alist
- "\\|"))
+ ;; Construct in REGEXP a regexp composed of all those in diff-regexp-alist.
+ (let ((regexp (mapconcat 'car diff-regexp-alist "\\|"))
;; (GROUP-IDX OLD-IDX NEW-IDX)
(groups (let ((subexpr 1))
(mapcar (lambda (elt)
@@ -190,7 +187,7 @@
"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.
-With prefix arg, prompt for diff switches."
+With prefix arg, prompt for diff SWITCHES."
(interactive
(nconc
(let (oldf newf)
@@ -247,16 +244,23 @@
"No more differences" "Diff"
'diff-parse-differences))
(set-buffer buf)
+ ;; Replace compilation-mode with diff-mode + compilation-minor-mode.
+ (diff-mode)
+ (compilation-shell-minor-mode -1) ;diff-mode turned it on.
+ (compilation-minor-mode 1)
+ (set (make-local-variable 'compilation-parse-errors-function)
+ 'diff-parse-differences)
+ (set (make-local-variable 'compilation-error-message)
+ "No more differences")
+ ;; Continue as if nothing had happened.
(set (make-local-variable 'diff-old-file) old)
(set (make-local-variable 'diff-new-file) new)
(set (make-local-variable 'diff-old-temp-file) old-alt)
(set (make-local-variable 'diff-new-temp-file) new-alt)
(set (make-local-variable 'compilation-finish-function)
- (function (lambda (buff msg)
- (if diff-old-temp-file
- (delete-file diff-old-temp-file))
- (if diff-new-temp-file
- (delete-file diff-new-temp-file)))))
+ (lambda (buff msg)
+ (if diff-old-temp-file (delete-file diff-old-temp-file))
+ (if diff-new-temp-file (delete-file diff-new-temp-file))))
;; When async processes aren't available, the compilation finish
;; function doesn't get chance to run. Invoke it by hand.
(or (fboundp 'start-process)
next prev parent reply other threads:[~2002-05-08 1:47 UTC|newest]
Thread overview: 109+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200205050534.g455YfF01634@aztec.santafe.edu>
2002-05-05 22:02 ` Assignment of misc packages for emacs Kim F. Storm
2002-05-06 23:07 ` Alex Schroeder
2002-05-08 1:16 ` Miles Bader
2002-05-08 1:47 ` Stefan Monnier [this message]
2002-05-09 2:45 ` Richard Stallman
2002-05-07 14:08 ` Kai Großjohann
2002-05-08 13:58 ` Richard Stallman
2002-05-08 1:31 ` Miles Bader
2002-05-08 6:23 ` Thien-Thi Nguyen
2002-05-14 19:41 ` Richard Stallman
2002-05-14 19:41 ` Richard Stallman
2002-05-14 23:44 ` Kim F. Storm
2002-05-15 1:08 ` Miles Bader
2002-05-15 21:37 ` Kim F. Storm
2002-05-16 1:19 ` Miles Bader
2002-05-17 19:29 ` Richard Stallman
2002-05-17 21:42 ` Kim F. Storm
2002-05-17 19:29 ` Richard Stallman
2002-05-17 21:31 ` Kim F. Storm
2002-05-16 7:22 ` Richard Stallman
2002-05-16 23:41 ` Kim F. Storm
2002-05-15 4:51 ` Eli Zaretskii
2002-05-15 8:41 ` Andreas Schwab
2002-05-15 10:20 ` Eli Zaretskii
2002-05-15 11:08 ` Andreas Schwab
2002-05-15 21:41 ` Kim F. Storm
2002-05-15 19:27 ` Stefan Monnier
2002-05-15 20:37 ` Andreas Schwab
2002-05-16 23:39 ` Kim F. Storm
2002-05-16 22:49 ` Stefan Monnier
2002-05-17 6:27 ` Eli Zaretskii
2002-05-17 7:10 ` Miles Bader
2002-05-17 9:21 ` Andreas Schwab
2002-05-17 11:13 ` Miles Bader
2002-05-17 9:40 ` Eli Zaretskii
2002-05-17 11:15 ` Miles Bader
2002-05-17 10:47 ` Kim F. Storm
2002-05-17 10:08 ` Stefan Monnier
2002-05-17 11:20 ` Miles Bader
2002-05-17 12:07 ` Kim F. Storm
2002-05-17 11:28 ` Miles Bader
2002-05-18 18:48 ` Richard Stallman
2002-05-18 21:39 ` Kim F. Storm
2002-05-19 19:40 ` Richard Stallman
2002-05-18 22:37 ` Stefan Monnier
2002-05-19 19:40 ` Richard Stallman
2002-05-16 23:07 ` Miles Bader
2002-05-18 18:48 ` Richard Stallman
2002-05-19 11:57 ` Miles Bader
2002-05-19 14:41 ` Stefan Monnier
2002-05-19 15:12 ` Miles Bader
2002-05-20 6:38 ` Miles Bader
2002-05-20 9:57 ` Alex Schroeder
2002-05-20 10:06 ` Kai Großjohann
2002-05-20 21:34 ` Richard Stallman
2002-05-21 9:54 ` Mario Lang
2002-05-21 10:23 ` Miles Bader
2002-05-22 22:29 ` Richard Stallman
2002-05-21 10:20 ` Miles Bader
2002-05-22 22:27 ` Richard Stallman
2002-05-23 7:08 ` Miles Bader
2002-05-23 16:49 ` Mario Lang
2002-05-23 22:21 ` Miles Bader
2002-06-04 17:27 ` Miles Bader
2002-06-05 14:42 ` Stefan Monnier
2002-06-06 1:07 ` Miles Bader
2002-06-06 1:37 ` Stefan Monnier
2002-06-06 1:46 ` Miles Bader
2002-06-06 7:57 ` Miles Bader
2002-06-07 0:45 ` Richard Stallman
2002-06-07 0:45 ` Richard Stallman
2002-06-05 23:10 ` Kim F. Storm
2002-06-06 1:09 ` Miles Bader
2002-06-06 1:24 ` Miles Bader
2002-06-07 0:45 ` Richard Stallman
2002-06-07 23:26 ` Kim F. Storm
2002-06-08 1:09 ` Miles Bader
2002-06-08 19:15 ` Richard Stallman
2002-06-06 12:04 ` Richard Stallman
2002-06-06 12:41 ` Miles Bader
2002-06-06 13:37 ` Stefan Monnier
2002-06-06 13:45 ` Miles Bader
2002-06-07 23:23 ` Richard Stallman
2002-06-08 4:06 ` Miles Bader
2002-06-09 15:19 ` Richard Stallman
2002-06-10 14:35 ` Stefan Monnier
2002-06-11 19:25 ` Richard Stallman
2002-07-07 22:46 ` What happened to the key-menu patch? Kim F. Storm
2002-07-09 7:00 ` Miles Bader
2002-07-09 13:58 ` Stefan Monnier
2002-07-10 2:43 ` Miles Bader
2002-07-10 18:12 ` Stefan Monnier
2002-07-10 10:43 ` Richard Stallman
2002-07-11 17:13 ` Stefan Monnier
2002-07-12 17:37 ` Richard Stallman
2002-07-12 18:07 ` Stefan Monnier
2002-07-13 14:20 ` Richard Stallman
2002-07-13 17:37 ` Stefan Monnier
2002-07-15 1:09 ` Richard Stallman
2002-07-09 18:51 ` Richard Stallman
2002-07-10 2:45 ` Miles Bader
2002-07-10 19:20 ` Richard Stallman
2002-05-20 14:48 ` Assignment of misc packages for emacs Richard Stallman
2002-05-18 18:48 ` Richard Stallman
2002-05-18 20:07 ` Kim F. Storm
2002-05-19 19:40 ` Richard Stallman
2002-05-16 7:21 ` Richard Stallman
2002-05-16 7:21 ` Richard Stallman
2002-05-15 7:44 ` D. Goel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200205080147.g481lmD01045@rum.cs.yale.edu \
--to=monnier+gnu/emacs@rum.cs.yale.edu \
--cc=alex@emacswiki.org \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).