Updated LCD Language (markdown)

Scott Lahteine 2017-05-08 11:58:07 -05:00
parent ffd76119ab
commit b5a833fee8

@ -60,7 +60,7 @@ tr|Turkish
uk|Ukrainian
## The Problem
All these languages, except English, normally use extended symbol sets, not contained in US-ASCII. Even the English translation uses some Symbols not in US-ASCII. ( '`\002`' for Thermometer, `STR_h3` for '³') And worse, in the code itself symbols are used, not taking into account the display they're written on. [(This is true only for Displays with Japanese charset)](https://github.com/MarlinFirmware/Marlin/blob/Development/Marlin/ultralcd_implementation_hitachi_HD44780.h#L218) On Western displays you'll see a '`~`' while on Cyrillic an "arrow coming from top - pointing to left," which is quite the opposite of what the programmer wanted.) The Germans want to use "`ÄäÖöÜüß`", the Finnish at least "`äö`". Other European languages want to see their accents on their letters too. For other scripts like Cyrillic, Japanese, Greek, Hebrew, ... you have to find totally different symbol sets.
All these languages, except English, normally use extended symbol sets, not contained in US-ASCII. Even the English translation uses some Symbols not in US-ASCII. ( '`\002`' for Thermometer, `STR_h3` for '³') And worse, in the code itself symbols are used, not taking into account the display they're written on. [(This may still be true only for Displays with Japanese charset)](https://github.com/MarlinFirmware/Marlin/blob/Development/Marlin/ultralcd_implementation_hitachi_HD44780.h) On Western displays you'll see a '`~`' while on Cyrillic an "arrow coming from top - pointing to left," which is quite the opposite of what the programmer wanted.) The Germans want to use "`ÄäÖöÜüß`", the Finnish at least "`äö`". Other European languages want to see their accents on their letters too. For other scripts like Cyrillic, Japanese, Greek, Hebrew, ... you have to find totally different symbol sets.
Until now the problems were ignored widely. The German translation used UTF-8 'ä' and 'ö' and did not care about showing garbage on ALL displays. Russian translators knew their system only works on Cyrillic displays and relied on special LCD routines (`LiquidCrystalRus.cpp`) to handle UTF-8 - but forgot to implement a proper `strlen()`.
@ -141,7 +141,7 @@ On the 16x2 displays the strings are cut at the end to fit on the display. So it
You'll find all translatable strings in `language_en.h`. Strings in `language.h` are for serial output, so don't require any translation. Core error strings must always be in English to satisfy host protocols.
For information about fonts see [`buildroot/share/fonts/README.md` file](/MarlinFirmware/Marlin/tree/1.1.x/buildroot/share/fonts).
For information about fonts see [`buildroot/share/fonts/README.md` file](/MarlinFirmware/Marlin/tree/1.1.x/buildroot/share/fonts#readme).
## User Instructions