1@pindex msgen 2@cindex @code{msgen} program, usage 3@example 4msgen [@var{option}] @var{inputfile} 5@end example 6 7@cindex generate translation catalog in English 8The @code{msgen} program creates an English translation catalog. The 9input file is the last created English PO file, or a PO Template file 10(generally created by xgettext). Untranslated entries are assigned a 11translation that is identical to the msgid. 12 13Note: @samp{msginit --no-translator --locale=en} performs a very similar 14task. The main difference is that @code{msginit} cares specially about 15the header entry, whereas @code{msgen} doesn't. 16 17@subsection Input file location 18 19@table @samp 20@item @var{inputfile} 21Input PO or POT file. 22 23@item -D @var{directory} 24@itemx --directory=@var{directory} 25@opindex -D@r{, @code{msgen} option} 26@opindex --directory@r{, @code{msgen} option} 27Add @var{directory} to the list of directories. Source files are 28searched relative to this list of directories. The resulting @file{.po} 29file will be written relative to the current directory, though. 30 31@end table 32 33If @var{inputfile} is @samp{-}, standard input is read. 34 35@subsection Output file location 36 37@table @samp 38@item -o @var{file} 39@itemx --output-file=@var{file} 40@opindex -o@r{, @code{msgen} option} 41@opindex --output-file@r{, @code{msgen} option} 42Write output to specified file. 43 44@end table 45 46The results are written to standard output if no output file is specified 47or if it is @samp{-}. 48 49@subsection Input file syntax 50 51@table @samp 52@item -P 53@itemx --properties-input 54@opindex -P@r{, @code{msgen} option} 55@opindex --properties-input@r{, @code{msgen} option} 56Assume the input file is a Java ResourceBundle in Java @code{.properties} 57syntax, not in PO file syntax. 58 59@item --stringtable-input 60@opindex --stringtable-input@r{, @code{msgen} option} 61Assume the input file is a NeXTstep/GNUstep localized resource file in 62@code{.strings} syntax, not in PO file syntax. 63 64@end table 65 66@subsection Output details 67 68@c --no-escape and --escape omitted on purpose. They are not useful. 69 70@table @samp 71@item --force-po 72@opindex --force-po@r{, @code{msgen} option} 73Always write an output file even if it contains no message. 74 75@item -i 76@itemx --indent 77@opindex -i@r{, @code{msgen} option} 78@opindex --indent@r{, @code{msgen} option} 79Write the .po file using indented style. 80 81@item --no-location 82@opindex --no-location@r{, @code{msgen} option} 83Do not write @samp{#: @var{filename}:@var{line}} lines. 84 85@item --add-location 86@opindex --add-location@r{, @code{msgen} option} 87Generate @samp{#: @var{filename}:@var{line}} lines (default). 88 89@item --strict 90@opindex --strict@r{, @code{msgen} option} 91Write out a strict Uniforum conforming PO file. Note that this 92Uniforum format should be avoided because it doesn't support the 93GNU extensions. 94 95@item -p 96@itemx --properties-output 97@opindex -p@r{, @code{msgen} option} 98@opindex --properties-output@r{, @code{msgen} option} 99Write out a Java ResourceBundle in Java @code{.properties} syntax. Note 100that this file format doesn't support plural forms and silently drops 101obsolete messages. 102 103@item --stringtable-output 104@opindex --stringtable-output@r{, @code{msgen} option} 105Write out a NeXTstep/GNUstep localized resource file in @code{.strings} syntax. 106Note that this file format doesn't support plural forms. 107 108@item -w @var{number} 109@itemx --width=@var{number} 110@opindex -w@r{, @code{msgen} option} 111@opindex --width@r{, @code{msgen} option} 112Set the output page width. Long strings in the output files will be 113split across multiple lines in order to ensure that each line's width 114(= number of screen columns) is less or equal to the given @var{number}. 115 116@item --no-wrap 117@opindex --no-wrap@r{, @code{msgen} option} 118Do not break long message lines. Message lines whose width exceeds the 119output page width will not be split into several lines. Only file reference 120lines which are wider than the output page width will be split. 121 122@item -s 123@itemx --sort-output 124@opindex -s@r{, @code{msgen} option} 125@opindex --sort-output@r{, @code{msgen} option} 126Generate sorted output. Note that using this option makes it much harder 127for the translator to understand each message's context. 128 129@item -F 130@itemx --sort-by-file 131@opindex -F@r{, @code{msgen} option} 132@opindex --sort-by-file@r{, @code{msgen} option} 133Sort output by file location. 134 135@end table 136 137@subsection Informative output 138 139@table @samp 140@item -h 141@itemx --help 142@opindex -h@r{, @code{msgen} option} 143@opindex --help@r{, @code{msgen} option} 144Display this help and exit. 145 146@item -V 147@itemx --version 148@opindex -V@r{, @code{msgen} option} 149@opindex --version@r{, @code{msgen} option} 150Output version information and exit. 151 152@end table 153