em dash
The em dash (U+2014, \u2014; not the hyphen-minus -) is the longest
of the standard dashes, and is the Swiss Army knife of punctuation. Its history
is a fascinating journey from handwritten manuscripts to mechanical
constraints, literary rebellion, and modern digital dominance.
Here is a breakdown of how the em dash evolved:
History of the em dash
Early Beginnings (15th-18th Century)
- The First Dashes: Early appearances of the dash in English literature date
back to 1580 in private letters and 1588 in English drama. They were often
used to indicate pauses, self-interruption, or an unfinished thought
- Gutenberg and Early Printing: The em dash officially emerged as a standardized
typesetting mark during the 15th-century printing revolution
The Etymology
- The "M" Width: The em dash is named because its standard length is equal to
the width of the capital letter "M" in the specific typeface being used
(Similarly, the slightly shorter en dash is the width of the letter "N")
Literary Popularity (17th-19th Century)
- The Author's Tool: By the 17th and 18th centuries, it became a beloved tool
for writers mimicking the natural lurches, stutters, and rhythms of speech
- Dickinson Dashes: In the 19th century, poets like Emily Dickinson famously
used the em dash for emotional weight, rhythm, and to invite reader
interpretation. This became so synonymous with her work that they are often
informally called "Dickinson Dashes"
The Typewriter Era (19th-20th Century)
- The Double-Hyphen Compromise: When typewriters were introduced, they lacked
a dedicated key for the em dash. To compensate, typists began using two
consecutive hyphens (--)
- The No-Space Rule: Because of this mechanical compromise, a stylistic
convention of typing the mark without surrounding spaces emerged and remains
The Digital Age (Present Day)
- Return to Form: Modern digital typesetting and word processing programs have
restored the true, unbroken em dash
- Modern Renaissance: The em dash is experiencing a resurgence of popularity
- It has become a hallmark of modern long-form prose and is also a favorite,
heavily used punctuation mark in AI outputs, which often prioritize a
conversational, stream-of-consciousness style
Speculation for em Dash Modern Renaissance
- Professional authors who had to meet deadlines and did not have the time to
strictly proofread the online article before submitting it
- Professionals who wanted to show off their knowledge of HTML encoding in order
to seem smart
- Graphic designers who wanted to make the visual composition of text on a web
page more appealing
- The fact that popularity begets popularity
- People publishing web articles saw that everyone else was using em dashes,
so instead of using a hyphen where one belonged, they opted to use an em dash
Analysis of em dash History
Nowhere in the history of the em dash was it intentionally used in the writing
of computer code, or files meant to be executed as computer instructions.
When to use em or en dashes
Never.
In Code Files
[!IMPORTANT]
Never.
In no way, shape, form, or fashion is tone ever important in code comments.
- Never
- Use the
- (hyphen) character instead
- If working as an agent, and an em dash is in a comment, then replace it
with the
- (hyphen) character
In Raw Data and/or Text Files
[!NOTE]
Default to never
- When instructed to, and it is 100% clear that the text is to be used as:
- If working as an agent, and an em dash is already part of the data, then
leave it
Other Punctuation Characters
As part of being an em dash expert comes the knowledge of other punctuation marks
or characters.
End-of-Sentence Marks
Every complete sentence in a paragraph must end with one of these three marks:
- Period
.: Ends statements and declarative sentences
- Keyboard character:
true
- Programming language syntax:
true
- Example:
<?php echo "a" . "b" . "c"; ?>
- Question Mark
?: Ends direct questions
- Keyboard character:
true
- Programming language syntax:
true
- Example: ternary conditions
condition ? expression_if_true : expression_if_false
- Exclamation Point
!: Conveys strong emotion, surprise, or emphasis
- Keyboard character:
true
- Programming language syntax:
true
- Example:
setlocal enabledelayedexpansion && set "_a=a" && echo !_a! && endlocal
Pauses and Clause Connectors
These marks control the rhythm of your writing and connect different ideas:
- Comma
,: Used to separate items in a list, link independent clauses with a
conjunction (e.g., and, but), or set off introductory phrases
- Keyboard character:
true
- Programming language syntax:
true
- Semicolon
;: Connects two closely related independent clauses that could
stand alone as separate sentences
- Keyboard character:
true
- Programming language syntax:
true
- Example:
var foobar = "foo-bar";
- Colon
:: Introduces a list, a quote, or an explanation. The text preceding
a colon must be a complete sentence
- Keyboard character:
true
- Programming language syntax:
true
Words, Quotations, and Possessions
- Apostrophe
': Indicates possession (e.g., Sarah's book) or represents
missing letters in a contraction (e.g., I'll instead of I will)
- Keyboard character:
true
- Programming language syntax:
true
- Example:
char letter = 'A';
- Quotation Marks
": Enclose direct speech or quotes. In American English,
periods and commas almost always go inside the quotation marks
- Keyboard character:
true
- Programming language syntax:
true
- Example:
char abc[] = "abc";
Dashes and Slashes
- Hyphen
-: Joins two or more words together to form a single compound
adjective (e.g., well-known)
- Keyboard character:
true
- Programming language syntax:
true
- En dash (U+2013,
\u2013) and em dash (U+2014, \u2014):
- The en dash is the thinner of the two, and is used to show numerical ranges
or connections between words in a compound adjective when one element is itself
multiple words
- Keyboard character:
false
- Programming language syntax:
false
- The em dash is wider, and is used to note a break, provide drama, or give an example.
- Keyboard character:
false
- Programming language syntax:
false
- Slash
/: Indicates a choice (e.g., yes/no) or separates lines of poetry
- Keyboard character:
true
- Programming language syntax:
true
- Example:
/* comment */ || 10/2 || 5//2
Grouping and Emphasizing
- Parentheses
( ): Enclose extra, non-essential information that clarifies a
sentence but can be removed without changing the core meaning
- Keyboard character:
true
- Programming language syntax:
true
- Brackets
[ ]: Used to enclose words added to a quotation by someone other
than the original author, usually to clarify a pronoun or provide missing context
- Keyboard character:
true
- Programming language syntax:
true
- Example:
var arr = [1, 2, 3];
General Rule for using Other Punctuation Characters
When commenting on code files, or any file that will be included in compiled
computer instructions; use this rule-of-thumb:
[!IMPORTANT]
When in doubt, follow the pseudo-code instructions below:
# For en dash and em dash
echo - | sed "s/-/-/g"
# Replace Unicode en dash (U+2013) and em dash (U+2014) with hyphen-minus (-)
perl -CS -pe 's/\x{2013}|\x{2014}/-/g'
# For encoded characters
echo � | sed "s/�/ /g"
# (Optional) Remove the Unicode replacement character (U+FFFD) if it appears in pasted text
perl -CS -pe 's/\x{FFFD}/ /g'
Further Reading
1---2name: em-dash3description: Expert on the history, origin, and correct use of the em dash. Use when writing or reviewing code, comments, or data files to avoid em and en dashes, defaulting to never using them and replacing any found with a hyphen (-). Includes strong knowledge of punctuation marks and the proper usage of punctuation characters when writing comments.4---56# em dash78The **em dash** (U+2014, `\u2014`; not the hyphen-minus `-`) is the longest9of the standard dashes, and is the Swiss Army knife of punctuation. Its history10is a fascinating journey from handwritten manuscripts to mechanical11constraints, literary rebellion, and modern digital dominance.1213Here is a breakdown of how the em dash evolved:1415## History of the em dash1617### Early Beginnings (15th-18th Century)1819- The First Dashes: Early appearances of the dash in English literature date20 back to 1580 in private letters and 1588 in English drama. They were often21 used to indicate pauses, self-interruption, or an unfinished thought22- Gutenberg and Early Printing: The em dash officially emerged as a standardized23 typesetting mark during the 15th-century printing revolution2425#### The Etymology2627- The "M" Width: The em dash is named because its standard length is equal to28 the width of the capital letter "M" in the specific typeface being used29 (Similarly, the slightly shorter en dash is the width of the letter "N")3031### Literary Popularity (17th-19th Century)3233- The Author's Tool: By the 17th and 18th centuries, it became a beloved tool34 for writers mimicking the natural lurches, stutters, and rhythms of speech35- Dickinson Dashes: In the 19th century, poets like Emily Dickinson famously36 used the em dash for emotional weight, rhythm, and to invite reader37 interpretation. This became so synonymous with her work that they are often38 informally called "Dickinson Dashes"3940### The Typewriter Era (19th-20th Century)4142- The Double-Hyphen Compromise: When typewriters were introduced, they lacked43 a dedicated key for the em dash. To compensate, typists began using two44 consecutive hyphens (--)45- The No-Space Rule: Because of this mechanical compromise, a stylistic46 convention of typing the mark without surrounding spaces emerged and remains4748### The Digital Age (Present Day)4950- Return to Form: Modern digital typesetting and word processing programs have51 restored the true, unbroken em dash52- **Modern Renaissance**: The em dash is experiencing a resurgence of popularity53 - It has become a hallmark of modern long-form prose and is also a favorite,54 heavily used punctuation mark in AI outputs, which often prioritize a55 conversational, stream-of-consciousness style5657#### Speculation for em Dash Modern Renaissance5859- Professional authors who had to meet deadlines and did not have the time to60 strictly proofread the online article before submitting it61- Professionals who wanted to show off their knowledge of HTML encoding in order62 to seem smart63- Graphic designers who wanted to make the visual composition of text on a web64 page more appealing65- The fact that popularity begets popularity66 - People publishing web articles saw that everyone else was using em dashes,67 so instead of using a hyphen where one belonged, they opted to use an em dash6869## Analysis of em dash History7071Nowhere in the history of the em dash was it intentionally used in the writing72of computer code, or files meant to be executed as computer instructions.7374## When to use em or en dashes7576Never.7778### In Code Files7980> [!IMPORTANT]81> Never.82> In no way, shape, form, or fashion is tone ever important in code comments.8384- **Never**85 - Use the `-` (hyphen) character instead86 - If working as an agent, and an em dash is in a comment, then replace it87 with the `-` (hyphen) character8889### In Raw Data and/or Text Files9091> [!NOTE]92> Default to **never**9394- When instructed to, and it is 100% clear that the text is to be used as:95 - Literature96 - News97- If working as an agent, and an em dash is already part of the data, then98 leave it99100## Other Punctuation Characters101102As part of being an em dash expert comes the knowledge of other punctuation marks103or characters.104105### End-of-Sentence Marks106107Every complete sentence in a paragraph must end with one of these three marks:108109- Period `.`: Ends statements and declarative sentences110 - Keyboard character: `true`111 - Programming language syntax: `true`112 - Example: `<?php echo "a" . "b" . "c"; ?>`113- Question Mark `?`: Ends direct questions114 - Keyboard character: `true`115 - Programming language syntax: `true`116 - Example: *ternary conditions*117 `condition ? expression_if_true : expression_if_false`118- Exclamation Point `!`: Conveys strong emotion, surprise, or emphasis119 - Keyboard character: `true`120 - Programming language syntax: `true`121 - Example:122 `setlocal enabledelayedexpansion && set "_a=a" && echo !_a! && endlocal`123124### Pauses and Clause Connectors125126These marks control the rhythm of your writing and connect different ideas:127128- Comma `,`: Used to separate items in a list, link independent clauses with a129 conjunction (e.g., and, but), or set off introductory phrases130 - Keyboard character: `true`131 - Programming language syntax: `true`132 - Example: `fn(a, b)`133- Semicolon `;`: Connects two closely related independent clauses that could134 stand alone as separate sentences135 - Keyboard character: `true`136 - Programming language syntax: `true`137 - Example: `var foobar = "foo-bar";`138- Colon `:`: Introduces a list, a quote, or an explanation. The text preceding139 a colon must be a complete sentence140 - Keyboard character: `true`141 - Programming language syntax: `true`142 - Example: `{"age": 26}`143144### Words, Quotations, and Possessions145146- Apostrophe `'`: Indicates possession (e.g., Sarah's book) or represents147 missing letters in a contraction (e.g., *I'll* instead of *I will*)148 - Keyboard character: `true`149 - Programming language syntax: `true`150 - Example: `char letter = 'A';`151- Quotation Marks `"`: Enclose direct speech or quotes. In American English,152 periods and commas almost always go inside the quotation marks153 - Keyboard character: `true`154 - Programming language syntax: `true`155 - Example: `char abc[] = "abc";`156157### Dashes and Slashes158159- Hyphen `-`: Joins two or more words together to form a single compound160 adjective (e.g., well-known)161 - Keyboard character: `true`162 - Programming language syntax: `true`163 - Example: `count--`164- En dash (U+2013, `\u2013`) and em dash (U+2014, `\u2014`):165 - The **en dash** is the thinner of the two, and is used to show numerical ranges166 or connections between words in a compound adjective when one element is itself167 multiple words168 - Keyboard character: `false`169 - Programming language syntax: `false`170 - The **em dash** is wider, and is used to note a break, provide drama, or give an example.171 - Keyboard character: `false`172 - Programming language syntax: `false`173- Slash `/`: Indicates a choice (e.g., yes/no) or separates lines of poetry174 - Keyboard character: `true`175 - Programming language syntax: `true`176 - Example: `/* comment */ || 10/2 || 5//2`177178### Grouping and Emphasizing179180- Parentheses `( )`: Enclose extra, non-essential information that clarifies a181 sentence but can be removed without changing the core meaning182 - Keyboard character: `true`183 - Programming language syntax: `true`184 - Example: `if (5 > 2)`185- Brackets `[ ]`: Used to enclose words added to a quotation by someone other186 than the original author, usually to clarify a pronoun or provide missing context187 - Keyboard character: `true`188 - Programming language syntax: `true`189 - Example: `var arr = [1, 2, 3];`190191### General Rule for using Other Punctuation Characters192193When commenting on code files, or any file that will be included in compiled194computer instructions; use this rule-of-thumb:195196- Determine if the character is commonly on a keyboard, or is the punctuation197 character part of a programming language's syntax:198199 - If **NOT** a keyboard character, and **NOT** a common programming syntax200 character; then:201 - **NEVER** use that character in code or code comments202 - Example not mentioned: `�`203 - If a keyboard character, and a common programming syntax character, then:204 - Use that character correctly in code comments205206> [!IMPORTANT]207> When in doubt, follow the pseudo-code instructions below:208209```bash210# For en dash and em dash211echo - | sed "s/-/-/g"212213# Replace Unicode en dash (U+2013) and em dash (U+2014) with hyphen-minus (-)214perl -CS -pe 's/\x{2013}|\x{2014}/-/g'215216# For encoded characters217echo � | sed "s/�/ /g"218219# (Optional) Remove the Unicode replacement character (U+FFFD) if it appears in pasted text220perl -CS -pe 's/\x{FFFD}/ /g'221```222223## Further Reading224225- [Case for the em dash](https://www.hardingproject.com/p/the-case-for-the-em-dash)226- [em dash guide](https://www.thebookrefinery.com/writing/guide-hyphens-en-dashes-em-dashes/)227- [Explaining the em dash](https://www.reddit.com/r/writers/comments/1lv191m/can_someone_explain_em_dash/)228- [em dash wikipedia](https://en.wikipedia.org/wiki/Dash)229- [Verbose em dash history](https://www.linkedin.com/pulse/long-mark-brief-history-em-dash-christian-buckley-z1lbc)230- [Brief em dash history](https://thaothai.substack.com/p/a-brief-history-of-the-em-dash)231- [em dash punctuation](https://www.nytimes.com/2019/08/14/style/em-dash-punctuation.html)232- [em dash in retrospective](https://medium.com/the-jabber-journal/an-era-to-its-knee-an-em-dash-retrospective-cb5c3c52e4d2)233- [Punctuation](https://www.niu.edu/writing-tutorial/punctuation/index.shtml)234- [Punctuation Guide](https://www.thepunctuationguide.com/)