home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: gnu.utils.bug
- Path: sparky!uunet!convex!linac!pacific.mps.ohio-state.edu!cis.ohio-state.edu!talisman.kaleida.com!conklin
- From: conklin@talisman.kaleida.com (J.T. Conklin)
- Subject: GNU diff `-U LINES' wanted
- Message-ID: <9211112159.AA13343@talisman.kaleida.com>
- Sender: gnulists@ai.mit.edu
- Reply-To: conklin@kaleida.com
- Organization: GNUs Not Usenet
- References: conklin@talisman.kaleida.com (J.T. Conklin)
- Distribution: gnu
- Date: Wed, 11 Nov 1992 21:59:53 GMT
- Approved: bug-gnu-utils@prep.ai.mit.edu
- Lines: 138
-
- >>>>> pinard@icule.UUCP (Francois Pinard) writes:
- Francois> In GNU diff 2.0 documentation, -LINES is declared to be
- Francois> obsolescent. Let me suggest implementing a new `-U LINES'
- Francois> meaning `--unified=LINES' to parallel the fact that `-C
- Francois> LINES' means `--context=LINES'. One should not ought to
- Francois> recourse to full option names nor obsolescent features just
- Francois> for specifying a number of context lines for unidiffs.
-
- I liked this idea so much, I added to my copy of diff. If you haven't
- done this yourself, here is a patch containing the code and texinfo
- changes.
-
- --jtc
-
- diff -c diff/ChangeLog:1.1.1.1 diff/ChangeLog:1.2
- *** diff/ChangeLog:1.1.1.1 Tue Nov 10 17:08:40 1992
- --- diff/ChangeLog Tue Nov 10 17:08:41 1992
- ***************
- *** 1,3 ****
- --- 1,9 ----
- + Fri Nov 6 12:11:05 1992 J.T. Conklin (conklin@talisman.kaleida.com)
- +
- + * diff.c (main): Allow -U.
- + (usage): Document -U.
- + diff.texi: Document -U.
- +
- Tue Sep 15 14:27:25 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
-
- * Version 2.0.
- diff -c diff/diff.c:1.1.1.1 diff/diff.c:1.2
- *** diff/diff.c:1.1.1.1 Tue Nov 10 17:08:41 1992
- --- diff/diff.c Tue Nov 10 17:08:41 1992
- ***************
- *** 243,249 ****
- /* Decode the options. */
-
- while ((c = getopt_long (argc, argv,
- ! "0123456789abBcC:dD:efF:hHiI:lL:nNpPqrsS:tTuvwW:x:X:y",
- longopts, (int *)0)) != EOF)
- {
- switch (c)
- --- 243,249 ----
- /* Decode the options. */
-
- while ((c = getopt_long (argc, argv,
- ! "0123456789abBcC:dD:efF:hHiI:lL:nNpPqrsS:tTuU:vwW:x:X:y",
- longopts, (int *)0)) != EOF)
- {
- switch (c)
- ***************
- *** 287,292 ****
- --- 287,293 ----
- break;
-
- case 'C':
- + case 'U':
- case 129: /* +context[=lines] */
- case 130: /* +unified[=lines] */
- if (optarg)
- ***************
- *** 300,307 ****
-
- /* Falls through. */
- case 'c':
- ! /* Make context-style output. */
- ! specify_style (c == 130 ? OUTPUT_UNIFIED : OUTPUT_CONTEXT);
- break;
-
- case 'd':
- --- 301,311 ----
-
- /* Falls through. */
- case 'c':
- ! case 'u':
- ! /* context diffs are more common then unified diffs, so we
- ! test against the context diff flags first */
- ! specify_style ((c == 'c' || c == 'C' || c == 129)
- ! ? OUTPUT_CONTEXT : OUTPUT_UNIFIED);
- break;
-
- case 'd':
- ***************
- *** 432,442 ****
- tab_align_flag = 1;
- break;
-
- - case 'u':
- - /* Output the context diff in unidiff format. */
- - specify_style (OUTPUT_UNIFIED);
- - break;
- -
- case 'v':
- fprintf (stderr, "GNU diff version %s\n", version_string);
- break;
- --- 436,441 ----
- ***************
- *** 560,566 ****
- fprintf (stderr, "Usage: %s [options] from-file to-file\n", program);
- fprintf (stderr, "Options:\n\
- [-abBcdefhHilnNpPqrstTuvwy] [-C lines] [-D symbol] [-F regexp]\n\
- ! [-I regexp] [-L from-label [-L to-label]] [-S starting-file]\n\
- [-W columns] [-x pattern] [-X pattern-file] [--exclude=pattern]\n\
- [--exclude-from=pattern-file] [--ignore-blank-lines] [--context[=lines]]\n\
- [--ifdef=symbol] [--show-function-line=regexp] [--speed-large-files]\n\
- --- 559,565 ----
- fprintf (stderr, "Usage: %s [options] from-file to-file\n", program);
- fprintf (stderr, "Options:\n\
- [-abBcdefhHilnNpPqrstTuvwy] [-C lines] [-D symbol] [-F regexp]\n\
- ! [-I regexp] [-L from-label [-L to-label]] [-S starting-file] [-U lines]\n\
- [-W columns] [-x pattern] [-X pattern-file] [--exclude=pattern]\n\
- [--exclude-from=pattern-file] [--ignore-blank-lines] [--context[=lines]]\n\
- [--ifdef=symbol] [--show-function-line=regexp] [--speed-large-files]\n\
- diff -c diff/diff.texi:1.1.1.1 diff/diff.texi:1.2
- *** diff/diff.texi:1.1.1.1 Tue Nov 10 17:08:42 1992
- --- diff/diff.texi Tue Nov 10 17:08:42 1992
- ***************
- *** 756,764 ****
-
- The unified output format is a variation on the context format that is
- more compact because it omits redundant context lines. To select this
- ! output format, use the @samp{-u} or @samp{--unified@r{[}=@var{lines}@r{]}}
- ! option. The argument @var{lines} is the number of lines of context to
- ! show. When it is not given, it defaults to three.
-
- At present, only GNU @code{diff} can produce this format and only GNU
- @code{patch} can automatically apply diffs in this format.
- --- 756,765 ----
-
- The unified output format is a variation on the context format that is
- more compact because it omits redundant context lines. To select this
- ! output format, use the @samp{-U @var{lines}},
- ! @samp{--unified@r{[}=@var{lines}@r{]}}, or @samp{-u} option. The
- ! argument @var{lines} is the number of lines of context to show. When it
- ! is not given, it defaults to three.
-
- At present, only GNU @code{diff} can produce this format and only GNU
- @code{patch} can automatically apply diffs in this format.
-
-