.TH WMC 1 "October 2005" "@PACKAGE_STRING@" "Wine Developers Manual"
.SH NAME
wmc \- Wine Message Compiler
.SH SYNOPSIS
.B wmc
.RI [ options ]\ [ inputfile ]
.SH DESCRIPTION
.B wmc
compiles messages from
.B inputfile
into FormatMessage[AW] compatible format encapsulated in a resourcescript
format.
.B wmc
outputs the data either in a standard \fI.bin\fR formatted binary
file, or can generated inline resource data.
.PP
.B wmc
takes only one \fIinputfile\fR as argument (see \fBBUGS\fR). The
\fIinputfile\fR normally has extension \fI.mc\fR. The messages are read from
standard input if no inputfile is given. If the outputfile is not specified
with \fB-o\fR, then \fBwmc\fR will write the output to \fIinputfile.{rc,h}\fR.
The outputfile is named \fIwmc.tab.{rc,h}\fR if no inputfile was given.
.SH OPTIONS
.TP
.BI \-B\  x
Set output byte-order x={n[ative], l[ittle], b[ig]}. Default is n[ative].
.TP
.B \-c
Set 'custom-bit' in message-code values.
.TP
.B \-d
NON-FUNCTIONAL; Use decimal values in output
.TP
.B \-D
Set debug flag. This results is a parser trace and a lot of extra messages.
.TP
.BR \-h ,\  \-\-help
Print an informative usage message and exits.
.TP
.BI \-H\  file
Write headerfile to \fIfile\fR. Default is \fIinputfile.h\fR.
.TP
.B \-i
Inline messagetable(s). This option skips the generation of all \fI.bin\fR files
and writes all output into the \fI.rc\fR file. This encoding is parsable with
wrc(1).
.TP
.BR \-o ,\  \-\-output =\fIfile
Output to \fIfile\fR. Default is \fIinputfile.rc\fR.
.TP
.BR \-O ,\  \-\-output\-format =\fIformat
Set the output format. Supported formats are \fBrc\fR (the default),
\fBres\fR, and \fBpot\fR.
.TP
.BR \-P ,\  \-\-po-dir =\fIdirectory
Enable the generation of resource translations based on po files
loaded from the specified directory. That directory must follow the
gettext convention, in particular in must contain one \fI.po\fR file for
each language, and a LINGUAS file listing the available languages.
.TP
.B \-u
Assume that the inputfile is in unicode.
.TP
.B \-U
Write resource output in unicode formatted messagetable(s).
.TP
.B \-v
Show all supported codepages and languages.
.TP
.BR \-V ,\  \-\-version
Print version end exit.
.TP
.BR \-W ,\  \-\-pedantic
Enable pedantic warnings.
.SH EXTENSIONS
The original syntax is extended to support codepages more smoothly. Normally,
codepages are based on the DOS codepage from the language setting. The
original syntax only allows the destination codepage to be set. However, this
is not enough for non\-DOS systems which do not use unicode source-files.
.PP
A new keyword \fBCodepages\fR is introduced to set both input and output
codepages to anything one wants for each language. The syntax is similar to
the other constructs:
.PP
Codepages '=' '(' language '=' cpin ':' cpout ... ')'
.PP
The \fIlanguage\fR is the numerical language\-ID or the alias set with
LanguageNames. The input codepage \fIcpin\fR and output codepage
\fIcpout\fR are the numerical codepage IDs. There can be multiple mappings
within the definition and the definition may occur more than once.
.SH AUTHORS
.B wmc
was written by Bertho A. Stultiens.
.SH BUGS
The message compiler should be able to have multiple input files and combine
them into one output file. This would enable the splitting of languages into
separate files.
.PP
Unicode detection of the input is suboptimal, to say the least. It should
recognize byte order marks (BOM) and decide what to do.
.PP
Decimal output is completely lacking. Don't know whether it should be
implemented because it is a, well, non-informative format change. It is
recognized on the commandline for some form of compatibility.
.PP
Bugs can be reported on the
.UR http://bugs.winehq.org
.B Wine bug tracker
.UE .
.SH AVAILABILITY
.B wmc
is part of the Wine distribution, which is available through WineHQ,
the
.UR http://www.winehq.org/
.B Wine development headquarters
.UE .
.SH "SEE ALSO"
.BR wine (1),
.BR wrc (1),
.br
.UR http://www.winehq.org/help
.B Wine documentation and support
.UE .
