Linux Commands Examples

A great documentation place for Linux commands


mark differences between groff/nroff/troff files

see also : groff - nroff - diff


gdiffmk-aaddmark ] [ -cchangemark ] [ -ddeletemark ] [ -D-B ] [ -Mmark1 mark2 ] ] [ -xdiffcmd ] [ -- ] [ --help ] [ --version ] file1 file2output ]

add an example, a script, a trick and tips

: email address (won't be displayed)
: name

Step 2

Thanks for this example ! - It will be moderated and published shortly.

Feel free to post other examples
Oops ! There is a tiny cockup. A damn 404 cockup. Please contact the loosy team who maintains and develops this wonderful site by clicking in the mighty feedback button on the side of the page. Say what happened. Thanks!


no example yet ...

... Feel free to add your own example above to help other Linux-lovers !


gdiffmk compares two groff(1), nroff(1), or troff(1) documents, file1 and file2, and creates an output which is file2 with added ’margin character’ (.mc) commands that indicate the differences.

If the output filename is present, the output is written there. If it is - or absent the output is written to the standard output.

If the file1 or file2 argument is - the standard input is read for that input. Clearly both cannot be -.

Note that the output is not necessarily compatible with all macro packages and all preprocessors. See the BUGS section below.



Use the addmark for source lines not in file1 but present in file2. Default: +.


By default, the deleted texts marked by the -D option end with an added troff break command, .br, to ensure that the deletions are marked properly. This is the only way to guarantee that deletions and small changes get flagged. This option directs the program not to insert these breaks; it makes no sense to use it without -D.


Use the changemark for changed source lines. Default: |.


Use the deletemark for deleted source lines. Default: *.


Show the deleted portions from changed and deleted text. Default delimiting marks: [[ .... ]].

-Mmark1 mark2

Change the delimiting marks for the -D option. It makes no sense to use this option without -D.


Use the diffcmd command to perform the comparison of file1 and file2. In particular, diffcmd should accept the GNU diff -Dname option. Default: diff(1).


All the following arguments are treated as file names, even if they begin with -.


Print a usage message on standard error output and exit.


Print version information on the standard output and exit.


Copyright © 2004, 2005, 2008 Free Software Foundation, Inc.

gdiffmk 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 3 of the License, or (at your option) any later version.

gdiffmk 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 this program. If not, see <>.


The output is not necessarily compatible with all macro packages and all preprocessors. A workaround that is often successful against preprocessor problems is to run gdiffmk on the output of all the preprocessors instead of the input source.

gdiffmk relies on the -Dname option of GNU diff(1) to make a merged ’#ifdef’ output format. It hasn’t been tested whether other versions of diff(1) do support this option. See also the -xdiffcmd option.

Report bugs to bug-groff[:at:]gnu[:dot:]org. Include a complete, self-contained example that will allow the bug to be reproduced, and say which version of gdiffmk you are using.

see also

groff , nroff , gtroff, diff


This document was written and is maintained by Mike Bianchi (mailto:MBianchi[:at:]Foveal[:dot:]com).

This document is distributed under the terms of the FDL (GNU Free Documentation License) version 1.1 or later. You should have received a copy of the FDL on your system, it is also available on-line at the GNU copyleft site (

gdiffmk is part of the groff GNU free software project. All parts of the groff package are protected by GNU copyleft licenses. The software files are distributed under the terms of the GNU General Public License (GPL), while the documentation files mostly use the GNU Free Documentation License (FDL).

How can this site be more helpful to YOU ?

give  feedback