Difference between revisions of "Typography Style Guide"

From The Battle for Wesnoth Wiki
(Typography Style Guide)
m (Usages in Speech: cleaning up wrong formating)
Line 191: Line 191:
  (in this case, speech treated as fading because the ''listener's'' attention has wandered)
  (in this case, speech treated as fading because the ''listener's'' attention has wandered)
=Usages in Speech=
==Usages in Speech==
As far as this style guide is concerned, 'Speech' pretty much exclusively means in the campaign dialogue stored in Wesnoth's .cfg files. Usages in the online help, the user guide, the game's user interface and so on are separate (but related) matters.
As far as this style guide is concerned, 'Speech' pretty much exclusively means in the campaign dialogue stored in Wesnoth's .cfg files. Usages in the online help, the user guide, the game's user interface and so on are separate (but related) matters.

Latest revision as of 00:48, 21 June 2019

This style guide describes how character dialogue within campaigns should be marked up. For dialogue within the Wesnoth game user interface, see the UI Style Guide. For C coding guidelines, see the CodingStandards. For WML coding, see the WML Style Guide. For a general writing style guide for Wesnoth campaigns, see esr's Campaign Design How-To, http://www.catb.org/~esr/wesnoth/campaign-design-howto.html This guide covers storyboarding, plotting and adding flavour, as well as advice on map design, balance, and some of the pitfalls to avoid.

Note: Many of these areas are no longer particularly typography-related. They will be moved to a separate writing style guide before too long. Simons Mith 13:16, 19 August 2010 (UTC)


  1. http://www.alistapart.com/articles/emen/ The Trouble with Em and En (and Other Shady Characters)
  2. http://en.wikipedia.org/wiki/Hyphen
  3. http://en.wikipedia.org/wiki/Dash
  4. http://en.wikipedia.org/wiki/Ellipsis
  5. http://en.wikipedia.org/wiki/Quotation_mark
  6. http://en.wikipedia.org/wiki/Title_case#Choice_of_case_in_text

Character Usage Summary


en dash:                –     U+2013 (8211)
em dash:                —     U+2014 (8212)
horizontal bar:         ―     U+2015 (8213)   AKA quotation dash
minus sign:             −     U+2212 (8722)

Quotes and Apostrophes

left single quote:      ‘     U+2018 (8216)
right single quote:     ’     U+2019 (8217)   same character as curly apostrophe
left double quote:      “     U+201C (8220)
right double quote:     ”     U+201D (8221)
curly apostrophe:       ’     U+2019 (8217)   same character as right single quote

Other Characters (for reference)

ellipsis:               …     U+2026 (8230)   not used at present, use three full stops
hyphen:                 ‐     U+2010 (8208)   actual hyphen character, not used at present
                                              hyphen-minus is OK in the standard Wesnoth font

Characters being removed from within US-English dialogs

hyphen-minus            -     replace with U+2013, U+2014, U+2015, U+2212 as appropriate
straight apostrophe     '     same character as single quote, replace with U+2019
unsexed single quote    '     same character as straight apostrophe, replace with U+2018 and U+2019 as appropriate
backquote               `     shouldn't be present anywhere, replace with U+2018
unsexed double quote    "     replace with U+201C, U+201D as appropriate

Title Case

For scenario titles, scenario IDs and filenames, our preferred version of title case (there are several) is to capitalize all words except for articles, prepositions, and conjunctions. This is the third option listed at http://en.wikipedia.org/wiki/Title_case#Choice_of_case_in_text. (Also shown below):

The Vitamins Are in My Fresh California Raisins

For example, if you had a scenario called A Man, an Elf and a Diary, the scenario filename might be


the corresponding map filename


and the WML at the start of the scenario file might be

#textdomain wesnoth-Fate_of_a_Princess
name= _ "A Man, an Elf, and a Diary"

Please apply these guidelines to all scenario filenames, scenario and campaign titles and IDs. For filenames, omit any punctuation and use underscores instead of spaces.

Spacing Definitions

  • 'Unspaced' means no spaces before or after
  • 'Spaced' means spaces before and after
  • 'Leading space' means a space before, no space after
  • 'Trailing space' means a space after, but no space before

If the space is the first character after an open quotation, or the last character before a close quotation, it should be omitted. This means 'unspaced' elements will be unaltered, 'spaced' elements will become either leading- or trailing-spaced elements, and leading- or trailing-spaced elements may be unaltered, or may become unspaced.


Em Dash

"And now— An unexpected interruption!"
(trailing space em dash U+2014)
"—What was that?!"
(leading space em dash U+2014)
(abrupt start to a sentence)
"commands great respect — especially among soldiers"
(spaced em dash U+2014)
"Somewhere in this sentence—no need to guess where—is a parenthetical thought."
(paired unspaced em dashes U+2014)

In character dialogue you can use parentheses instead of paired spaced em dashes, but in speech the dashes are slightly more preferable.

En Dash

"The trident is 14–2"
(unspaced en dash U+2013)
(weapon attack statistics)

Things like weapon attack statistics and other game jargon should not be used in any dialogue spoken by a character.

high-priority–high-pressure tasks
(unspaced en dash U+2013)
(hyphenating compound words – in this case tasks which are both high-priority and high-pressure)
"S–gn–d, D–lf–do–"
(unspaced en dash U+2013)
(marking missing letters in a fragment of text)

These usages are all very rare in scenario dialogue.

Horizontal Bar

text=_"Gee, look at all them Injuns!"
source=_"― General Custer, 1876"
(spaced horizontal bar U+2015)

This is a sample quotation from tips.cfg; there are no instances of this usage in scenario dialogue at present.

Minus Sign

(outside of equations use leading space minus sign U+2212)
(sample from english.cfg; extremely rare in scenario dialog)

In speech, the word 'minus' should be written out in full; only game-specific scenario-related sentences should use the minus symbol inside scenario dialogue text.

Hyphen Minus

"Assemble a war-party"
(unspaced hyphen-minus)
(ordinary hyphen minus from the keyboard)

Note that there are no plans at present to use the genuine unicode hyphen ‐ U+2010


There is a Unicode ellipsis symbol, … U+2026, but at present we are using three full stops because in the standard Wesnoth font it looks basically the same. For our purposes, the non-speech uses of ellipsis – typically for quoting extracts of text, are very unlikely to be relevant. Please see references 1 and 4 for more details if you need information on this area. Normally an ellipsis should be spaced to separate it from the text, but when it combines with other punctuation, the leading space disappears and the other punctuation follows. For pauses in mid-word, use unspaced ellipses. For speech in the Wesnoth game, a trailing space is usually the most appropriate option. Examples:

alpha ... beta
(used for missing words in a quoted section of text)
gamma, ... delta
(missing words, mixed with punctuation)
(both very rare in dialogue)
(a word fading away to nothing)
(by far the most common usage in the Wesnoth game)
eta... theta
(a pause between words, or speech fading away from one word to the next)
(also common)
(not uncommon)
mu..., nu
(a pause or a fading away, mixed with some punctuation)
(not uncommon)
(words removed from the end of a sentence, so there's a full stop)
(full stop counts as punctuation, so the spaces around the ellipsis are removed, giving four dots)
  1. Outside of speech, an ellipsis is most often used to indicate one or more missing words in a quotation.
  2. In speech, it most often represents a pause of some kind.
  3. Missing or unintelligible words can also be represented with an ellipsis.
  4. When an ellipsis occurs at the end of a sentence, it should be treated in one of three ways, depending on usage:
    1. If the ellipsis is being used to indicate one or missing words, it should be followed by a period.
    2. If it indicates one or more missing sentences, then it should appear after the period of the preceding sentence, and with a space on either side.
    3. If it indicates that the thought or quote is just trailing off at the end of a sentence (no missing words), then only the ellipsis is used, without a closing period.

Usages 4.1 and 4.2 are very rare in Wesnoth dialogue. 99% of the time, we follow usage 4.3. This means you would probably only have four dots (ellipsis plus full stop) if a character was talking or quoting at length and you cut off the character's speech partway through. In normal speech, four dots will almost always be incorrect. Similarly, there is no such thing as a five-dot (or more) ellipsis, so using any more than three dots will probably be wrong. Chinese and Japanese can use six- and variable numbers of dots respectively, but that doesn't mean we can in US-English.


"Now, listen carefully. This is a very long and complicated document:
“Firstly, all beer barrels shall be marked with His Majesty's Royal Seal.
“Secondly, all dogs shall wear spiked metal collars....”"
(usage 4.1)
(technically correct, but long screeds of text are bad practice in scenario dialogue anyway)
"Dear friends, we are gathered here today to celebrate the many achievements of me,
Delfador the Wise, the Noble, the handsome, he who defeated the dreaded Floating Nose
of the Swamp of Despair, and ate the Sacred Pie of..."
(usage 4.3)
(in this case, speech treated as fading because the listener's attention has wandered)

Usages in Speech

As far as this style guide is concerned, 'Speech' pretty much exclusively means in the campaign dialogue stored in Wesnoth's .cfg files. Usages in the online help, the user guide, the game's user interface and so on are separate (but related) matters.

The Difference Between Ellipses and Dashes in Speech

In speech, an ellipsis with a trailing space represents an indefinite or variable pause, or a character's words fading away to nothing, and an unspaced ellipsis represents an indefinite or variable pause in mid-word. An em dash represents an intentional pause, or an abrupt cut-off, possibly in mid-word. So that's the basic difference for Wesnoth's purposes; abrupt, use a dash, fading, use ellipsis.

Ellipses in Speech

If you start a character's speech with an ellipsis, it needs a trailing space:

"... Haldric?"
(trailing space ellipsis)
(tentative inquiry)

When mixed in with punctuation, the trailing space is lost:

"And that reason would be...?"
(unspaced ellipsis)
(leading question)

If a character is dying, their speech might fade away as follows:

"Urgh! I go on to the Sunlit Lands..."
(trailing space ellipsis)

For a character struggling to speak, you would normally use trailing space ellipses:

"Urgh! I go... on... to... the... Sunlit... Lands..."

You can fade away or pause in mid-word if you want, but generally only in longer words. Again, use only sparingly:

(unspaced ellipsis)

Mixing these makes a character's speech appear even more irregular, but may look untidy or incorrect even when it's intentional. Use sparingly:

"Urgh! I go on... to... the... Sun...lit... Lands..."

Darken Volk, the necromancer in Descent into Darkness, uses a lot of pauses in his conversation as he searches for just the right word:

"The northlands have been my... home... for many years,"
(trailing space ellipsis)

If a non-speaking character needs a moment in the spotlight, you can use an ellipsis for a wordless pause. Use sparingly:

(trailing space ellipsis)

Dashes in Speech

Dashes are used for abrupt or intentional interruptions, including when a character 'interrupts himself' by making an aside or changing who he is talking to in mid-sentence.

"You can't kill me! I am invinc—"
(trailing space em dash U+2014)
"Delfador, my friend — Li'sar, the book, if you please — would you mind looking at this strange old tome we found?"
(spaced em dash U+2014)
(two changes in who he's talking to, so two spaced em dashes)
"Delfador, old friend— Down, Fyrax! — Don't worry, he's harmless— Now, where was I?"
(trailing space and spaced em dashes U+2014)
(a mixed combination of interruptions and changes in who is being addressed)
"—What was that?!"
(leading space em dash U+2014)

Theoretically, a short, sharp, but significant wordless pause could be marked with an em dash. However, the Wesnoth user interface is too sluggish to represent this properly, because you have to click or press keys to step through dialogue. For this reason, we advise against using it.

(spaced em dash U+2014)

Emphasis in Speech

We can now use bold and italic HTML-style markup inside WML tags. We use the Pango markup language, which is similar to HTML, but not exactly the same. I recommend adopting the use of Pango markup as promptly as possible. A quick overview is available here: http://www.pygtk.org/docs/pygtk/pango-markup-language.html

  • For specialised game jargon terms, which should never be spoken in-character, use <i>i tags</i>: 'Your units are <i>chaotic</i>. Your enemies, the elves, are <i>neutral</i>.' However, you don't have to italicise every instance of a game term. When introducing an important new concept, italicise it the first time, then just refer to it normally. This mostly applies to tutorial-style scenarios. When introducing items or units with special abilities in ordinary scenarios, use italics to highlight the special feature(s): 'This enchanted spear inflicts <i>arcane</i> damage.' 'Your new recruit has the <i>diehard</i> ability, which means....'
  • For user interface features, such as buttons, menu options and key shortcuts, use <b>b tags</b>. 'To undo a move, press the <b>u</b> key.' 'Click the <b>End Turn</b>' button in the bottom right of the game window.'
  • For emphatic speech by characters, and in-character use of jargon, (for example, if a human wizard used a word in the Drakish language), use <i>i tags</i>. This method is also used for the titles of campaigns or scenarios; <i>The South Guard</i>, <i>A Choice Must be Made</i>, and so on.
  • For shouting, either continue to use CAPITAL LETTERS, as now, or consider switching to the use of <big>big tags</big> instead. Which to use is going to be the author's decision, and may vary from campaign to campaign. Whichever you choose, be consistent throughout the campaign. Use of capitals for shouting is a reasonably well-established practice, but please use it infrequently, because it can become irritating when overused.

Note for editors: In the current campaign texts, some instances of capitals should be switched to <i> tags, while others should become <big> tags instead. However, there is likely to be some text remaining in all capitals after these adjustments.

Note also that 1.9.0 provides some macros to do standardised formatting for you: see data/core/macros/interface-utils.cfg, which provides the following:

"<small>(" + {TEXT} + ")</small>"#enddef
#define ASIDE TEXT
"<i>(" + {TEXT} + ")</i>"#enddef
"<span color='#bcb088'><b>" + {TEXT} + "</b></span>

... and could easily be expanded for SHOUT, ACTION and any other special markup that might be desired.

  • For larger text, which might be used for headings, or in place of capital letters use <big>big tags</big>.
  • For whispered text and asides, try <small><i>(combined small and i tags, inside parentheses)</small></i>. (This usage TBC.)


Apostrophes are easy; just use a right single quote for a curly apostrophe; it's the same character in Unicode (’ U+2019)

Quotes in Speech

We are adopting the standard of 'logical punctuation', where the practice is to include within quotation marks only those punctuation marks that appeared in the quoted material. Otherwise punctuation is placed outside the closing quotation marks. See reference 5 above, particularly the Punctuation section (also linked here: http://en.wikipedia.org/wiki/Quotation_mark#Punctuation). This is as distinct from the US 'traditional punctuation' style, where full stops and commas tend to appear inside the quotation marks even if they are not part of the quote. Note that in fiction, it's rare for there to be any actual difference between the two styles.

Characters mentioning words or names (as opposed to using them) will usually use sexed single quotes:

"Who is this ‘Mal-Ravanal’ fellow?"
"Calm down, soldier!  Who is this 'they' you are speaking of?"

When a character is reporting someone else's exact words, this is a rare occasion when double quotes would be used:

"Lord Aryad said, “If more trouble follows them here we should let them fight it out,
then we should ‘deal’ with the survivors, and make a compromise with the Dwarves.”"

Referring to the second example above,

"Calm down, soldier! Who is this “they” you are speaking of?"

could also be justified, but with a difference in emphasis; the form with double quotes emphasizes that the speaker is quoting a previous utterance of the soldier, whereas the first form emphasizes the indefiniteness of the language the soldier used.

Numbers in Speech

In game-specific dialogues, always write numbers as numbers:

"The Elvish Fighter has a 5–4 melee attack."
"You gain 500 gold!"

In character dialogues, write numbers below ten as words, and numbers above twelve as numbers. If it's a round number above 12, you may continue to write it in words:

"Five gold pieces"
"Five hundred gold pieces"
"Ten thousand orcs"
"572 gold pieces"
"43 trolls"

The numbers 10–12 represent a grey area where you can use either convention as you see fit. As far as possible, you should avoid mixing words and numbers in a single dialogue:

"We have only 7 warriors remaining, but the enemy has 33 orcs and 14 trolls."

Write complex number ranges as numbers separated with an en dash (U+2013). Write simple number ranges as words:

"35-50 elves"
"Between five and eight years, Sire."

Sound Effects

'Sound effects' includes maniacal laughter, characters' death noises – usually variations on the theme of 'Argh!' and other non-words. The main guideline is to tone these down somewhat; don't use 'Aaaaaarrrrrrgggggghhhhhhh!!!!!', be content with 'AAaargh!'. Maniacal laughter, no matter how maniacal, should only have 3–4 HAs in it, and never more than about 5. 'HAHAHAHA!' will usually be quite sufficient. Feel free to use 'Hmm' or 'Hmmm', but not 'Hmmmmm' or more. As a rough rule of thumb, restrict yourself to a maximum of about 10 letters for random exclamations, and normally 5–7.

Similarly, do not use multiple exclamation or question marks. The following combinations are acceptable: !, ?, !?, ?!, ??, !!, but three or more marks really are not. Incidentally, an exclaimed question would be punctuated with ?!, whereas an incredulous statement would be punctuated with !?.

Don't forget that you can still use <big>, <b> and <i> tags, or use some sort of WML special effect such as the {EARTHQUAKE}, {FLASH_ } or {LIGHTNING_ } macros, possibly with sound or a custom portrait. I would encourage these methods, rather than trying to convey the same thing with nothing more than the keyboard auto-repeat to help you.

Wordless Actions

When a character performs some unspoken action, such as heaving open a door, sighing, or making some other random sound, and you specifically want to cover that action in the dialogue, use the same style as for stage directions. If the action is mixed in with speech, put it in parentheses and italicise it.

"(Sigh) Very well, I'll send some troops to accompany you."
"What the...? (Gurgle) The slaves... are... uprising..."

If there is no speech at all, you can:

  1. Assign the entire dialogue to the narrator, in which case no special markup is needed
  2. Phrase the action as a complete sentences, marked with italics only
  3. Continue to use parentheses and italics

Examples, in order of preference:

Speaker: Chantal
(Cautiously opens the box)
(usually present tense)
Speaker: Narrator
Chantal cautiously opened the box.
(usually past tense)
Speaker: Chantal
Chantal cautiously opens the box.
(usually present tense)
This page was last edited on 21 June 2019, at 00:48.