(diffutils.info)Incomplete Lines


Next: Comparing Directories Prev: Output Formats Up: Top
Enter node , (file) or (file)node

3 Incomplete Lines
******************

When an input file ends in a non-newline character, its last line is
called an "incomplete line" because its last character is not a newline.
All other lines are called "full lines" and end in a newline character.
Incomplete lines do not match full lines unless differences in white
space are ignored (Note: White Space).

   An incomplete line is normally distinguished on output from a full
line by a following line that starts with '\'.  However, the RCS format
(Note: RCS) outputs the incomplete line as-is, without any trailing
newline or following line.  The side by side format normally represents
incomplete lines as-is, but in some cases uses a '\' or '/' gutter
marker.  Note: Side by Side.  The if-then-else line format preserves a
line's incompleteness with '%L', and discards the newline with '%l'.
Note: Line Formats.  Finally, with the 'ed' and forward 'ed' output
formats (Note: Output Formats) 'diff' cannot represent an incomplete
line, so it pretends there was a newline and reports an error.

   For example, suppose 'F' and 'G' are one-byte files that contain just
'f' and 'g', respectively.  Then 'diff F G' outputs

     1c1
     < f
     \ No newline at end of file
     ---
     > g
     \ No newline at end of file

(The exact message may differ in non-English locales.)  'diff -n F G'
outputs the following without a trailing newline:

     d1 1
     a1 1
     g

'diff -e F G' reports two errors and outputs the following:

     1c
     g
     .


automatically generated by info2www version 1.2.2.9