| @c This file is part of the GNU gettext manual. |
| @c Copyright (C) 1995-2019 Free Software Foundation, Inc. |
| @c See the file gettext.texi for copying conditions. |
| |
| @pindex msgcat |
| @cindex @code{msgcat} program, usage |
| @example |
| msgcat [@var{option}] [@var{inputfile}]... |
| @end example |
| |
| @cindex concatenate PO files |
| @cindex merge PO files |
| The @code{msgcat} program concatenates and merges the specified PO files. |
| It finds messages which are common to two or more of the specified PO files. |
| By using the @code{--more-than} option, greater commonality may be requested |
| before messages are printed. Conversely, the @code{--less-than} option may be |
| used to specify less commonality before messages are printed (i.e.@: |
| @samp{--less-than=2} will only print the unique messages). Translations, |
| comments, extracted comments, and file positions will be cumulated, except that |
| if @code{--use-first} is specified, they will be taken from the first PO file |
| to define them. |
| |
| To concatenate POT files, better use @code{xgettext}, not @code{msgcat}, |
| because @code{msgcat} would choke on the undefined charsets in the specified |
| POT files. |
| |
| @subsection Input file location |
| |
| @table @samp |
| @item @var{inputfile} @dots{} |
| Input files. |
| |
| @item -f @var{file} |
| @itemx --files-from=@var{file} |
| @opindex -f@r{, @code{msgcat} option} |
| @opindex --files-from@r{, @code{msgcat} option} |
| Read the names of the input files from @var{file} instead of getting |
| them from the command line. |
| |
| @item -D @var{directory} |
| @itemx --directory=@var{directory} |
| @opindex -D@r{, @code{msgcat} option} |
| @opindex --directory@r{, @code{msgcat} option} |
| Add @var{directory} to the list of directories. Source files are |
| searched relative to this list of directories. The resulting @file{.po} |
| file will be written relative to the current directory, though. |
| |
| @end table |
| |
| If @var{inputfile} is @samp{-}, standard input is read. |
| |
| @subsection Output file location |
| |
| @table @samp |
| @item -o @var{file} |
| @itemx --output-file=@var{file} |
| @opindex -o@r{, @code{msgcat} option} |
| @opindex --output-file@r{, @code{msgcat} option} |
| Write output to specified file. |
| |
| @end table |
| |
| @cindex standard output, and @code{msgcat} |
| The results are written to standard output if no output file is specified |
| or if it is @samp{-}. |
| |
| @subsection Message selection |
| |
| @table @samp |
| @item -< @var{number} |
| @itemx --less-than=@var{number} |
| @opindex -<@r{, @code{msgcat} option} |
| @opindex --less-than@r{, @code{msgcat} option} |
| Print messages with less than @var{number} definitions, defaults to infinite |
| if not set. |
| |
| @item -> @var{number} |
| @itemx --more-than=@var{number} |
| @opindex ->@r{, @code{msgcat} option} |
| @opindex --more-than@r{, @code{msgcat} option} |
| Print messages with more than @var{number} definitions, defaults to 0 if not |
| set. |
| |
| @item -u |
| @itemx --unique |
| @opindex -u@r{, @code{msgcat} option} |
| @opindex --unique@r{, @code{msgcat} option} |
| Shorthand for @samp{--less-than=2}. Requests that only unique messages be |
| printed. |
| |
| @end table |
| |
| @subsection Input file syntax |
| |
| @table @samp |
| @item -P |
| @itemx --properties-input |
| @opindex -P@r{, @code{msgcat} option} |
| @opindex --properties-input@r{, @code{msgcat} option} |
| Assume the input files are Java ResourceBundles in Java @code{.properties} |
| syntax, not in PO file syntax. |
| |
| @item --stringtable-input |
| @opindex --stringtable-input@r{, @code{msgcat} option} |
| Assume the input files are NeXTstep/GNUstep localized resource files in |
| @code{.strings} syntax, not in PO file syntax. |
| |
| @end table |
| |
| @subsection Output details |
| |
| @c --no-escape and --escape omitted on purpose. They are not useful. |
| |
| @table @samp |
| @item -t |
| @itemx --to-code=@var{name} |
| @opindex -t@r{, @code{msgcat} option} |
| @opindex --to-code@r{, @code{msgcat} option} |
| Specify encoding for output. |
| |
| @item --use-first |
| @opindex --use-first@r{, @code{msgcat} option} |
| Use first available translation for each message. Don't merge several |
| translations into one. |
| |
| @item --lang=@var{catalogname} |
| @opindex --lang@r{, @code{msgcat} option} |
| Specify the @samp{Language} field to be used in the header entry. See |
| @ref{Header Entry} for the meaning of this field. Note: The |
| @samp{Language-Team} and @samp{Plural-Forms} fields are left unchanged. |
| |
| @item --color |
| @itemx --color=@var{when} |
| @opindex --color@r{, @code{msgcat} option} |
| Specify whether or when to use colors and other text attributes. |
| See @ref{The --color option} for details. |
| |
| @item --style=@var{style_file} |
| @opindex --style@r{, @code{msgcat} option} |
| Specify the CSS style rule file to use for @code{--color}. |
| See @ref{The --style option} for details. |
| |
| @item --force-po |
| @opindex --force-po@r{, @code{msgcat} option} |
| Always write an output file even if it contains no message. |
| |
| @item -i |
| @itemx --indent |
| @opindex -i@r{, @code{msgcat} option} |
| @opindex --indent@r{, @code{msgcat} option} |
| Write the .po file using indented style. |
| |
| @item --no-location |
| @opindex --no-location@r{, @code{msgcat} option} |
| Do not write @samp{#: @var{filename}:@var{line}} lines. |
| |
| @item -n |
| @itemx --add-location=@var{type} |
| @opindex -n@r{, @code{msgcat} option} |
| @opindex --add-location@r{, @code{msgcat} option} |
| Generate @samp{#: @var{filename}:@var{line}} lines (default). |
| |
| The optional @var{type} can be either @samp{full}, @samp{file}, or |
| @samp{never}. If it is not given or @samp{full}, it generates the |
| lines with both file name and line number. If it is @samp{file}, the |
| line number part is omitted. If it is @samp{never}, it completely |
| suppresses the lines (same as @code{--no-location}). |
| |
| @item --strict |
| @opindex --strict@r{, @code{msgcat} option} |
| Write out a strict Uniforum conforming PO file. Note that this |
| Uniforum format should be avoided because it doesn't support the |
| GNU extensions. |
| |
| @item -p |
| @itemx --properties-output |
| @opindex -p@r{, @code{msgcat} option} |
| @opindex --properties-output@r{, @code{msgcat} option} |
| Write out a Java ResourceBundle in Java @code{.properties} syntax. Note |
| that this file format doesn't support plural forms and silently drops |
| obsolete messages. |
| |
| @item --stringtable-output |
| @opindex --stringtable-output@r{, @code{msgcat} option} |
| Write out a NeXTstep/GNUstep localized resource file in @code{.strings} syntax. |
| Note that this file format doesn't support plural forms. |
| |
| @item -w @var{number} |
| @itemx --width=@var{number} |
| @opindex -w@r{, @code{msgcat} option} |
| @opindex --width@r{, @code{msgcat} option} |
| Set the output page width. Long strings in the output files will be |
| split across multiple lines in order to ensure that each line's width |
| (= number of screen columns) is less or equal to the given @var{number}. |
| |
| @item --no-wrap |
| @opindex --no-wrap@r{, @code{msgcat} option} |
| Do not break long message lines. Message lines whose width exceeds the |
| output page width will not be split into several lines. Only file reference |
| lines which are wider than the output page width will be split. |
| |
| @item -s |
| @itemx --sort-output |
| @opindex -s@r{, @code{msgcat} option} |
| @opindex --sort-output@r{, @code{msgcat} option} |
| @cindex sorting @code{msgcat} output |
| Generate sorted output. Note that using this option makes it much harder |
| for the translator to understand each message's context. |
| |
| @item -F |
| @itemx --sort-by-file |
| @opindex -F@r{, @code{msgcat} option} |
| @opindex --sort-by-file@r{, @code{msgcat} option} |
| Sort output by file location. |
| |
| @end table |
| |
| @subsection Informative output |
| |
| @table @samp |
| @item -h |
| @itemx --help |
| @opindex -h@r{, @code{msgcat} option} |
| @opindex --help@r{, @code{msgcat} option} |
| Display this help and exit. |
| |
| @item -V |
| @itemx --version |
| @opindex -V@r{, @code{msgcat} option} |
| @opindex --version@r{, @code{msgcat} option} |
| Output version information and exit. |
| |
| @end table |