Language

The choice of languages is a feature that allows changing languages for people who are not familiar with English. The language menu is accessible via a button in the main menu to the left of the options button, and from the options menu.

Previously, language packs were needed in order to change the in game language. Language packs are obsolete, due to the official implementation of other languages.

Each language also has a font, although most languages share the same font.

Available languages
There are 116 languages, which are, in the order they appear in the menu:

Font
aA bB cC dD eE fF gG hH iI jJ kK lL mM nN oO pP qQ rR sS tT uU vV wW xX yY zZ 1 2 3 4 5 6 7 8 9 0 ! @ #  $  %  ^  &  *    _ - + = ~ [ ] { } | \ : ; " ', < > . ? /

Minecraft's default font is made up of a grid of dots. Each character supported by the font is between 1 and 6 dots wide, although most are 5. It has the 256 codepage 437 characters, with a difference in the first 32 characters. These first 256 characters are stored in  file, while the accented letters are stored in a file called. If a character is typed (e.g. in chat, on a sign, in a book, etc.) that isn't either in ascii.png nor accented.png, the font will change to Minecraft's "Unicode font" (stored in multiple files, from unicode_page_00.png to unicode_page_ff.png) that has thinner lines. The "Unicode font" supports the "BMP (Basic Multilingual Plane)" section of Unicode characters, from 0000 to FFFF (Decimal 65535), which is also limited, because it's only a part of Unicode characters, not all of them.

History
Here is a table that summarizes the modifications of languages through the updates:

Upcoming languages
Upcoming and still-in-progress translations are listed on the official Minecraft translation project page.

Removed languages
Austrian German was removed from Minecraft temporarily in version 12w01a because German was too similar to Austria German. However, it has been re-included to the game again in version 1.10.

Issues

 * In some languages, the text is too long and overflows the button it is written on.
 * Splash texts are not translated and therefore always show up in English regardless of language setting.
 * As of 1.6.1, you can use a custom (not just translated) splash text by using a resource pack.
 * Minecraft ' s language option is only for text display. In some languages (such as Chinese, Japanese and so on) players cannot input text in their languages. This is because Minecraft doesn't support the Input method of the language. Some users can still use Mods which support it.
 * Alternative language input was partially resolved in 15w34c and 17w43a when was fixed, but still is not functional for all systems.

Trivia

 * Minecraft is available in five constructed languages: Esperanto (devised as an international language now estimated to be spoken by between 100,000 and 2,000,000 people worldwide), Klingon (an alien language from Star Trek devised by linguist Marc Okrand), Quenya (one of the Elvish languages devised by J.R.R. Tolkien), Lojban (a language created by the Logical Language Group), and Anglish (A language based on modern English but with all non-Germanic lone words removed). It is also available in the joke "languages" of Pirate Speak (English written in the way a stereotypical pirate talks), LOLCAT (English written in the way a stereotypical Lolcat talks), upside down English, and Shakespearean English (English based on the literary style of William Shakespeare). Latin is not a constructed language, but it is almost unused in modern times, except in Vatican City for some documents.
 * It is possible to add a custom language pack by modifying the minecraft.jar file, or, as of 13w16a, copying it to the assets/lang folder. In 1.6.1, this functionality was added to resource packs.
 * Random text will only choose random characters with the same width as the original.
 * Certain letters with certain accents are supported by the font, but not all of them. GNU Unifont is used for many languages like Czech or Pirate.
 * The only 6-dot-wide characters are ®, ~, and @.