メッセージの記述形式に関する次のガイドラインには、用語、句読法、叙法、態、時制、キャピタリゼーション、その他の使用法に関する項目が含まれます。
文の形式を使用します。1 行で 1 文のメッセージが望ましいです。
冠詞 (a、an、the) はあいまいさをなくす必要がある場合に付けます。
文の最初の語は大文字にして、最後にはピリオドを付けます。
現在形を使用します。メッセージは未来形にしないでください。たとえば次のような文を使用します。
The foo command displays a calendar.
次のようにはしないでください。
The foo command will display a calendar.
メッセージでは一人称 (I または we) を使わないでください。
二人称の使用も避けてください。
ヘルプおよび対話型テキスト以外では、youという語は使わないでください。
能動態を使用します。次の例の 1 行目は元のメッセージで、2 行目は望ましい書き方です。
MYNUM "Month and year must be entered as numbers." MYNUM "foo: 7777-222 Enter month and year as numbers.¥n"
7777-222 はメッセージ ID です。
命令法 (コマンド句) と、能動態を示す動詞を使用します。たとえば、specify、use、check、choose、wait などです。
メッセージは肯定的な表現にします。次の例の 1 行目は元のメッセージで、2 行目は望ましい書き方です。
BADL "Don't use the f option more than once." BADL "foo: 7777-009 Use the -f flag only once.¥n"
名詞を動詞として使用しないでください。辞書にある文法の範囲内で語を使用します。ある語が辞書に名詞としてしか載っていない場合、その語は動詞として使用しないでください。たとえば、solution a problem (また、architect a system ) のようには使わないでください。
接頭辞や接尾辞を使用しないでください。翻訳者が re-、un-、in-、non- で始まる語を解釈できないかもしれないため、このような接頭辞や接尾辞を使用したメッセージは、翻訳されると意図した意味とは異なってしまう可能性があります。しかし、接頭辞が一般的に使用される語の一部に完全になっている場合は例外です。previous や premature は使用できます。nonexistent は使用できません。
複数形は使用しないでください。error(s) のように括弧を使って単数と複数を示すことはしないでください。この書き方だと翻訳できません。単数と複数を示さなければならない場合は、error or errors としてください。よりよい方法は、状況に合わせて単数形と複数形の 2 つの異なるメッセージのいずれかが発行されるようにコードを作成することです。
短縮形は使用しないでください。システムが処理できないことを表すには cannnot だけを使用してください。
引用符を使用しないでください。単一引用符も二重引用符も同じです。たとえば、%s、%c、%d などの変数やコマンドに引用符を付けないでください。ユーザは引用符を文字どおり入力するものだと思うかもしれません。
行の終わりで語をハイフンで結ばないでください。
メッセージでは一般的な強調表示の方法を取らないでください。また、単語の先頭あるいはすべての単語を大文字表記することによる強調表示の方法は用いないでください。
and/or は使用しないでください。この構文は他の言語には存在しません。通常、必ずしも両方する必要がない場合は、or とする方が適します。
24 時間制を使用します。a.m. や p.m. を使って時刻を指定しないでください。たとえば、1:00 p.m. は 13:00 と記述します。
頭文字による略記は避けてください。略さずに書いたものより頭文字による略記の方がよく知られている場合にだけ略記を使用します。略記を複数形にするには、小文字の s をアポストロフィなしで付けます。記述する前に、それが商標でないことを確認してください。
「禁句」は避けてください。たとえば、abort、argument、execute などです。プロジェクト用語集を参照してください。
意味のある用語を使うよう心がけてください。メッセージが確実に意味をなし、翻訳可能であるようにする一方、元のメッセージ・テキストの意味をできるだけ維持してください。