Node:
Specified Headings,
Next:
C Function Headings,
Up:
Sections
Showing Lines That Match Regular Expressions
To show in which sections differences occur for files that are not
source code for C or similar languages, use the -F regexp
or --show-function-line=regexp
option. diff
considers lines that match the grep
-style regular expression
regexp to be the beginning
of a section of the file. Here are suggested regular expressions for
some common languages:
^[[:alpha:]$_]
- C, C++, Prolog
^(
- Lisp
^@node
- Texinfo
This option does not automatically select an output format; in order to
use it, you must select the context format (see Context Format) or
unified format (see Unified Format). In other output formats it
has no effect.
The -F
and --show-function-line
options find the nearest
unchanged line that precedes each hunk of differences and matches the
given regular expression. Then they add that line to the end of the
line of asterisks in the context format, or to the @@
line in
unified format. If no matching line exists, they leave the output for
that hunk unchanged. If that line is more than 40 characters long, they
output only the first 40 characters. You can specify more than one
regular expression for such lines; diff
tries to match each line
against each regular expression, starting with the last one given. This
means that you can use -p
and -F
together, if you wish.