1@pindex msgcmp 2@cindex @code{msgcmp} program, usage 3@example 4msgcmp [@var{option}] @var{def}.po @var{ref}.pot 5@end example 6 7@cindex compare PO files 8The @code{msgcmp} program compares two Uniforum style .po files to check that 9both contain the same set of msgid strings. The @var{def}.po file is an 10existing PO file with the translations. The @var{ref}.pot file is the last 11created PO file, or a PO Template file (generally created by @code{xgettext}). 12This is useful for checking that you have translated each and every message 13in your program. Where an exact match cannot be found, fuzzy matching is 14used to produce better diagnostics. 15 16@subsection Input file location 17 18@table @samp 19@item @var{def}.po 20Translations. 21 22@item @var{ref}.pot 23References to the sources. 24 25@item -D @var{directory} 26@itemx --directory=@var{directory} 27@opindex -D@r{, @code{msgcmp} option} 28@opindex --directory@r{, @code{msgcmp} option} 29Add @var{directory} to the list of directories. Source files are 30searched relative to this list of directories. 31 32@end table 33 34@subsection Operation modifiers 35 36@table @samp 37@item -m 38@itemx --multi-domain 39@opindex -m@r{, @code{msgcmp} option} 40@opindex --multi-domain@r{, @code{msgcmp} option} 41Apply @var{ref}.pot to each of the domains in @var{def}.po. 42 43@item --use-fuzzy 44@opindex --use-fuzzy@r{, @code{msgcmp} option} 45Consider fuzzy messages in the @var{def}.po file like translated messages. 46Note that using this option is usually wrong, because fuzzy messages are 47exactly those which have not been validated by a human translator. 48 49@item --use-untranslated 50@opindex --use-untranslated@r{, @code{msgcmp} option} 51Consider untranslated messages in the @var{def}.po file like translated 52messages. Note that using this option is usually wrong. 53 54@end table 55 56@subsection Input file syntax 57 58@table @samp 59@item -P 60@itemx --properties-input 61@opindex -P@r{, @code{msgcmp} option} 62@opindex --properties-input@r{, @code{msgcmp} option} 63Assume the input files are Java ResourceBundles in Java @code{.properties} 64syntax, not in PO file syntax. 65 66@item --stringtable-input 67@opindex --stringtable-input@r{, @code{msgcmp} option} 68Assume the input files are NeXTstep/GNUstep localized resource files in 69@code{.strings} syntax, not in PO file syntax. 70 71@end table 72 73@subsection Informative output 74 75@table @samp 76@item -h 77@itemx --help 78@opindex -h@r{, @code{msgcmp} option} 79@opindex --help@r{, @code{msgcmp} option} 80Display this help and exit. 81 82@item -V 83@itemx --version 84@opindex -V@r{, @code{msgcmp} option} 85@opindex --version@r{, @code{msgcmp} option} 86Output version information and exit. 87 88@end table 89