msi: Replace the string table hash with a sorted index.
[wine.git] / tools / wmc / wmc.man.in
blob349112556b71d04885eb592b01330629a375b228
1 .\" -*- nroff -*-
2 .TH WMC 1 "October 2005" "@PACKAGE_STRING@" "Wine Developers Manual"
3 .SH NAME
4 wrc \- Wine Message Compiler
5 .SH SYNOPSIS
6 .BI "wmc " "[options] " "[inputfile]"
7 .SH DESCRIPTION
8 .B wmc
9 compiles messages from
10 .B inputfile
11 into FormatMessage[AW] compatible format encapsulated in a resourcescript
12 format.
13 .B wmc
14 outputs the data either in a standard \fB.bin\fR formatted binary
15 file, or can generated inline resource data.
16 .PP
17 .B wmc
18 takes only one \fBinputfile\fR as argument (see \fBBUGS\fR). The
19 \fBinputfile\fR normally has extension \fB.mc\fR. The messages are read from
20 standard input if no inputfile is given. If the outputfile is not specified
21 with \fI-o\fR, then \fBwmc\fR will write the output to \fBinputfile.{rc,h}\fR.
22 The outputfile is named \fBwmc.tab.{rc,h}\fR if no inputfile was given.
23 .SH OPTIONS
24 .TP
25 .I \-B x
26 Set output byte-order x={n[ative], l[ittle], b[ig]}. Default is n[ative].
27 .TP
28 .I \-c
29 Set 'custom-bit' in message-code values.
30 .TP
31 .I \-d
32 NON-FUNCTIONAL; Use decimal values in output
33 .TP
34 .I \-D
35 Set debug flag. This results is a parser trace and a lot of extra messages.
36 .TP
37 .I \-h
38 Print an informative usage message.
39 .TP
40 .I \-H file
41 Write headerfile to \fIfile\fR. Default is \fIinputfile.h\fR.
42 .TP
43 .I \-i
44 Inline messagetable(s). This option skips the generation of all \fI.bin\fR files
45 and writes all output into the \fI.rc\fR file. This encoding is parsable with
46 wrc(1).
47 .TP
48 .I \-o file
49 Output to \fIfile\fR. Default is \fIinputfile.rc\fR.
50 .TP
51 .I \-u
52 Assume that the inputfile is in unicode.
53 .TP
54 .I \-U
55 Write resource output in unicode formatted messagetable(s).
56 .TP
57 .I \-v
58 Show all supported codepages and languages.
59 .TP
60 .I \-V
61 Print version end exit.
62 .TP
63 .I \-W
64 Enable pedantic warnings.
65 .SH EXTENSIONS
66 The original syntax is extended to support codepages more smoothly. Normally,
67 codepages are based on the DOS\-codepage from the language setting. The
68 original syntax only allows the destination codepage to be set. However, this
69 is not enough for non\-DOS systems which do not use unicode source-files.
70 .PP
71 A new keyword \fICodepages\fR is introduced to set both input and output
72 codepages to anything one wants for each language. The syntax is similar to
73 the other constructs:
74 .PP
75 Codepages '=' '(' language '=' cpin ':' cpout ... ')'
76 .PP
77 The \fIlanguage\fR is the numerical language\-ID or the alias set with
78 LanguageNames. The input\-codepage \fIcpin\fR and output\-codepage
79 \fIcpout\fR are the numerical codepage\-IDs. There can be multiple mapping
80 within the definition and the definition may occur more than once.
81 .SH AUTHORS
82 .B wmc
83 was written by Bertho A. Stultiens.
84 .SH BUGS
85 The message compiler should be able to have multiple inputfiles and combine
86 them into one outputfile. This would enable the splitting of languages into
87 separate files.
88 .PP
89 Unicode detection of the input is suboptimal, to say the least. It should
90 recognize byte\-order\-marks (BOM) and decide what to do.
91 .PP
92 Decimal output is completely lacking. Don't know whether it should be
93 implemented because it is a, well, non-informative format change. It is
94 recognized on the commandline for some form of compatibility.
95 .SH AVAILABILITY
96 .B wmc
97 is part of the wine distribution, which is available through
98 WineHQ, the
99 .B wine
100 development headquarters, at
101 .I http://www.winehq.org/.
102 .SH "SEE ALSO"
103 .BR wine (1),
104 .BR wrc (1)