### Language Specfic Message Text Definition (Windows)

One or more message text definitions come after the message definition keywords. Each message text definition begins with the Language keyword that identifies which binary output file this message text is to be output to. Beginning on the next line is the first line of the message text. The message text is terminated by a line containing a single period at the beginning of the line, immediately followed by a new line. No spaces are allowed around the keyword. Within the message text, blank lines and white spaces are preserved as part of the message.

The following is the message text definition format:

>     Language={LANGUAGE_NAME}
>     {MESSAGETEXT}
>     .

Within the message text, several escape sequences are supported for dynamically formatting the message. The percent sign character (%) begins all escape sequences.

Escape Sequence | Definition
--- | ---
%0 | This terminates a message text line without a trailing newline. This can be used to build up long lines or to terminate the message itself without a trailing newline, which is useful for prompt messages.
%n!printf format string! | This identifies an insert. The value of n can be between 1 and 99. The printf format string must be enclosed by exclamation marks. It is optional and defaults to !s! if not specified. The printf format string can contain the * specifier for either the precision or width components, and if so, they will consume inserts %n+1 and %n+2 for their values at run time. mc.exe will print a warning message if an explicit reference is made to these inserts elsewhere in the message text.

Inserts must reference a parameter passed to the FormatMessage API call. It will return an error if a message refers to an insert that was not passed to the FormatMessage API call.

Any other character following a percent sign, other than a digit, will be formatted in the output message without the percent sign. For example:

%% | Will output a single percent sign in the formatted message text.
%n | Will output a hard line break when it occurs at the end of a line. This is useful when FormatMessage is supplying normal line breaks so that the message fits in a certain width.
%r | Will output a hard carriage return, without a trailing newline.
%b | Will output a space in the formatted message text. This can be used to insure that there are the appropriate number of trailing spaces in a message text line.
%t | Will output a tab in the formatted message text.
%. | Will output a single period in the formatted message text. This can be used to get a single period at the beginning of a line without terminating the message text definition.
%! | Will output a single exclamation point in the formatted message text. This can be used to get an exclamation point immediately after an insert without it being mistaken for the beginning of a printf format string.

Note: Unicode is not supported. You may use DBCS in your message text file, as long as you have text editor that can do this.

Message Compiler - An Overview
Message Compiler - Syntax
MKMSGF - Make Message File Utility
MKMSGF - Syntax