The text lines of one language are concatenated in order. The three forms may be mixed.

Single-quoted

'Usage: {$not_a_macro} stays literal'

No macros: {$…} is plain text. Escapes work. No newline is added.

Double-quoted

"Hello, {$user}! "
"You have {$count} new messages."

Macros and escapes. No newline is added — these two lines make one sentence. A string must close on its own line:

app.msg:3:1: error: unterminated string, missing closing "

Bar lines

|usage: {$program} [locale]
|  Prints the messages in the locale's language, \
|or in English.

The text is the rest of the line, blanks included, and a newline is added at its end — unless the line ends with a backslash, which joins the next line. Macros and escapes work; ', " and # are plain text.