Main Page

Explain xkcd: It's 'cause you're dumb.
Revision as of 12:24, 18 December 2013 by Davidy22 (Talk | contribs)

Jump to: navigation, search

Welcome to the explain xkcd wiki!
We have an explanation for all 1 xkcd comics, and only 12 (1%) are incomplete. Help us finish them!

Latest comic

Go to this comic explanation

Full-Width Justification
Gonna start bugging the Unicode consortium to add snake segment characters that can be combined into an arbitrary-length non-breaking snake.
Title text: Gonna start bugging the Unicode consortium to add snake segment characters that can be combined into an arbitrary-length non-breaking snake.


Ambox notice.png This explanation may be incomplete or incorrect: hasty & impatient placeholder. Still an early draft; needs citations, fact-checking, and it also needs the Wikipedia links to be fixed.

The comic refers to an irritating problem in laying out text to fit from edge to edge, the problem of justification. Sometimes, as before a long word like "deindustrialization," there's no universal good way to make the typography work. It is a difficult problem to make text look good and be easily legible especially in a narrow space, with the biggest issue being how to handle words that are too long to fit nicely.

The comic shows several solutions to this problem, some realistic and others less so, but each unsatisfying. "Giving up" is ugly, leaving a line break which doesn't fit with the rest;spacing looks pretty confusing as people may think it is an acronym. Hyphenating is confusing in English because its spelling requires full-word recognition ("deindus-" looks like an independent, unfamiliar word, pronounced "dayn-duss"); stretching is unnatural, probably hard to code or render, unfamiliar and quite ugly; adding "filler" words, a radical solution, makes the writing worse (in the case of the example, making the tone too informal); and adding a meaningless snake image, just long enough to fill the extra space, is a novel (and quite bizarre) solution which probably wouldn't actually be used by a serious typographer.[citation needed]

Another approach is treat justification as part of a global typesetting strategy which allows words to move between lines even where this is not locally optimal. This approach is used by TeX.

The title text suggests that in order to facilitate this last method of "solving" the problem, the Unicode Consortium, the organization in charge of the common text standard Unicode, should add "snake-building characters" (similar in concept to the existing Box Drawing block), to allow variable-length snake images to be used as filling. Currently, there are two Unicode snakes, xF40D (🐍) and x1DC2 (᷂). The latter is a [Phoenician] diacritical mark. It's not clear what the justification is for the first one.

The use of the phrase "non-breaking" in the title text is a play on non-breaking space and implies that an automatic line break could not be inserted after a snake segment; the whole snake would shift down if it were too wide to fit on a given line. This suggestion would likely be rejected; the Unicode consortium is very specific about which characters are added[citation needed], and always require a good reason[citation needed] before adding a character or set of characters to the standard. Strange decisions by the consortium have previously been referenced in 1253: Exoplanet Names, 1513: Code Quality, and 1525: Emojic 8 Ball.

Note that in Arabic, it is common to stretch the lines connecting letters as a relatively elegant and satisfying resolution to this problem. This trick is called "kashida" (كشيدة). There does in fact exist a Unicode character, U+0640: (ـ), to help with this: using it to extend "كشيدة" would result in something like "كشـــــــــــيدة" (which, incidentally, looks a lot like a snake).


[Caption above the panels:]
Strategies for full-width justification
[Below the caption is a column with six boxes, each showing a different "strategy" for justification which is annotated beside it. Here the anotation is written at the top and the text below. The top and bottom of the text is cut of in the middle, but as it can be "read" this is written anyway. Only for hyphenation does an extra word appear at the end. In the last with snakes, a snake is drawn to cover the entire space from the end of between to the right border.]
Giving up
their famous paper
on the relationship
and the growth of
Letter spacing
their famous paper
on the relationship
b  e   t   w   e  e   n
and the growth of
their famous paper
on the relationship
between deindus-
trialization and the
growth of ecological
their famous paper
on the relationship
and the growth of
their famous paper
on the relationship
between crap like
and the growth of
their famous paper
on the relationship
between [a snake filling the gap]
and the growth of


  • The full text (with alternate changes) reads:
...their famous paper on the relationship between [crap like]/[ 🐍 ] deindustrialization and the growth of [ecological]...

Is this out of date? Clicking here will fix that.

New here?

Last 7 days (Top 10)

Lots of people contribute to make this wiki a success. Many of the recent contributors, listed above, have just joined. You can do it too! Create your account here.

You can read a brief introduction about this wiki at explain xkcd. Feel free to sign up for an account and contribute to the wiki! We need explanations for comics, characters, themes, memes and everything in between. If it is referenced in an xkcd web comic, it should be here.

  • List of all comics contains a table of most recent xkcd comics and links to the rest, and the corresponding explanations. There are incomplete explanations listed here. Feel free to help out by expanding them!
  • We sell advertising space to pay for our server costs. To learn more, go here.


Don't be a jerk. There are a lot of comics that don't have set in stone explanations; feel free to put multiple interpretations in the wiki page for each comic.

If you want to talk about a specific comic, use its discussion page.

Please only submit material directly related to —and helping everyone better understand— xkcd... and of course only submit material that can legally be posted (and freely edited). Off-topic or other inappropriate content is subject to removal or modification at admin discretion, and users who repeatedly post such content will be blocked.

If you need assistance from an admin, post a message to the Admin requests board.

Personal tools


It seems you are using noscript, which is stopping our project wonderful ads from working. Explain xkcd uses ads to pay for bandwidth, and we manually approve all our advertisers, and our ads are restricted to unobtrusive images and slow animated GIFs. If you found this site helpful, please consider whitelisting us.

Want to advertise with us, or donate to us with Paypal?