• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1@c This file is part of the GNU gettext manual.
2@c Copyright (C) 1995-2019 Free Software Foundation, Inc.
3@c See the file gettext.texi for copying conditions.
4
5@pindex msgunfmt
6@cindex @code{msgunfmt} program, usage
7@example
8msgunfmt [@var{option}] [@var{file}]...
9@end example
10
11@cindex convert binary message catalog into PO file
12The @code{msgunfmt} program converts a binary message catalog to a
13Uniforum style .po file.
14
15@subsection Operation mode
16
17@table @samp
18@item -j
19@itemx --java
20@opindex -j@r{, @code{msgunfmt} option}
21@opindex --java@r{, @code{msgunfmt} option}
22@cindex Java mode, and @code{msgunfmt} program
23Java mode: input is a Java @code{ResourceBundle} class.
24
25@item --csharp
26@opindex --csharp@r{, @code{msgunfmt} option}
27@cindex C# mode, and @code{msgunfmt} program
28C# mode: input is a .NET .dll file containing a subclass of
29@code{GettextResourceSet}.
30
31@item --csharp-resources
32@opindex --csharp-resources@r{, @code{msgunfmt} option}
33@cindex C# resources mode, and @code{msgunfmt} program
34C# resources mode: input is a .NET @file{.resources} file.
35
36@item --tcl
37@opindex --tcl@r{, @code{msgunfmt} option}
38@cindex Tcl mode, and @code{msgunfmt} program
39Tcl mode: input is a tcl/msgcat @file{.msg} file.
40
41@end table
42
43@subsection Input file location
44
45@table @samp
46@item @var{file} @dots{}
47Input .mo files.
48
49@end table
50
51If no input @var{file} is given or if it is @samp{-}, standard input is read.
52
53@subsection Input file location in Java mode
54
55@table @samp
56@item -r @var{resource}
57@itemx --resource=@var{resource}
58@opindex -r@r{, @code{msgunfmt} option}
59@opindex --resource@r{, @code{msgunfmt} option}
60Specify the resource name.
61
62@item -l @var{locale}
63@itemx --locale=@var{locale}
64@opindex -l@r{, @code{msgunfmt} option}
65@opindex --locale@r{, @code{msgunfmt} option}
66Specify the locale name, either a language specification of the form @var{ll}
67or a combined language and country specification of the form @var{ll_CC}.
68
69@end table
70
71The class name is determined by appending the locale name to the resource name,
72separated with an underscore.  The class is located using the @code{CLASSPATH}.
73
74@subsection Input file location in C# mode
75
76@table @samp
77@item -r @var{resource}
78@itemx --resource=@var{resource}
79@opindex -r@r{, @code{msgunfmt} option}
80@opindex --resource@r{, @code{msgunfmt} option}
81Specify the resource name.
82
83@item -l @var{locale}
84@itemx --locale=@var{locale}
85@opindex -l@r{, @code{msgunfmt} option}
86@opindex --locale@r{, @code{msgunfmt} option}
87Specify the locale name, either a language specification of the form @var{ll}
88or a combined language and country specification of the form @var{ll_CC}.
89
90@item -d @var{directory}
91@opindex -d@r{, @code{msgunfmt} option}
92Specify the base directory for locale dependent @file{.dll} files.
93
94@end table
95
96The @samp{-l} and @samp{-d} options are mandatory.  The @file{.msg} file is
97located in a subdirectory of the specified directory whose name depends on the
98locale.
99
100@subsection Input file location in Tcl mode
101
102@table @samp
103@item -l @var{locale}
104@itemx --locale=@var{locale}
105@opindex -l@r{, @code{msgunfmt} option}
106@opindex --locale@r{, @code{msgunfmt} option}
107Specify the locale name, either a language specification of the form @var{ll}
108or a combined language and country specification of the form @var{ll_CC}.
109
110@item -d @var{directory}
111@opindex -d@r{, @code{msgunfmt} option}
112Specify the base directory of @file{.msg} message catalogs.
113
114@end table
115
116The @samp{-l} and @samp{-d} options are mandatory.  The @file{.msg} file is
117located in the specified directory.
118
119@subsection Output file location
120
121@table @samp
122@item -o @var{file}
123@itemx --output-file=@var{file}
124@opindex -o@r{, @code{msgunfmt} option}
125@opindex --output-file@r{, @code{msgunfmt} option}
126Write output to specified file.
127
128@end table
129
130The results are written to standard output if no output file is specified
131or if it is @samp{-}.
132
133@subsection Output details
134
135@c --no-escape and --escape omitted on purpose.  They are not useful.
136
137@table @samp
138@item --color
139@itemx --color=@var{when}
140@opindex --color@r{, @code{msgunfmt} option}
141Specify whether or when to use colors and other text attributes.
142See @ref{The --color option} for details.
143
144@item --style=@var{style_file}
145@opindex --style@r{, @code{msgunfmt} option}
146Specify the CSS style rule file to use for @code{--color}.
147See @ref{The --style option} for details.
148
149@item --force-po
150@opindex --force-po@r{, @code{msgunfmt} option}
151Always write an output file even if it contains no message.
152
153@item -i
154@itemx --indent
155@opindex -i@r{, @code{msgunfmt} option}
156@opindex --indent@r{, @code{msgunfmt} option}
157Write the .po file using indented style.
158
159@item --strict
160@opindex --strict@r{, @code{msgunfmt} option}
161Write out a strict Uniforum conforming PO file.  Note that this
162Uniforum format should be avoided because it doesn't support the
163GNU extensions.
164
165@item -p
166@itemx --properties-output
167@opindex -p@r{, @code{msgunfmt} option}
168@opindex --properties-output@r{, @code{msgunfmt} option}
169Write out a Java ResourceBundle in Java @code{.properties} syntax.  Note
170that this file format doesn't support plural forms and silently drops
171obsolete messages.
172
173@item --stringtable-output
174@opindex --stringtable-output@r{, @code{msgunfmt} option}
175Write out a NeXTstep/GNUstep localized resource file in @code{.strings} syntax.
176Note that this file format doesn't support plural forms.
177
178@item -w @var{number}
179@itemx --width=@var{number}
180@opindex -w@r{, @code{msgunfmt} option}
181@opindex --width@r{, @code{msgunfmt} option}
182Set the output page width.  Long strings in the output files will be
183split across multiple lines in order to ensure that each line's width
184(= number of screen columns) is less or equal to the given @var{number}.
185
186@item --no-wrap
187@opindex --no-wrap@r{, @code{msgunfmt} option}
188Do not break long message lines.  Message lines whose width exceeds the
189output page width will not be split into several lines.  Only file reference
190lines which are wider than the output page width will be split.
191
192@item -s
193@itemx --sort-output
194@opindex -s@r{, @code{msgunfmt} option}
195@opindex --sort-output@r{, @code{msgunfmt} option}
196@cindex sorting @code{msgunfmt} output
197Generate sorted output.  Note that using this option makes it much harder
198for the translator to understand each message's context.
199
200@end table
201
202@subsection Informative output
203
204@table @samp
205@item -h
206@itemx --help
207@opindex -h@r{, @code{msgunfmt} option}
208@opindex --help@r{, @code{msgunfmt} option}
209Display this help and exit.
210
211@item -V
212@itemx --version
213@opindex -V@r{, @code{msgunfmt} option}
214@opindex --version@r{, @code{msgunfmt} option}
215Output version information and exit.
216
217@item -v
218@itemx --verbose
219@opindex -v@r{, @code{msgunfmt} option}
220@opindex --verbose@r{, @code{msgunfmt} option}
221Increase verbosity level.
222
223@end table
224