summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2012-04-06 20:21:29 +0200
committerJens Arnold <amiconn@rockbox.org>2012-05-19 01:42:53 +0200
commit2d9c0bab540274e99480d965f38f266d20097976 (patch)
treee004fcdc65cd091521ca12575b82e672cc5908e3 /apps
parent4a6b875eda8fe7827b8a55e42e48184a6588ee4c (diff)
downloadrockbox-2d9c0bab540274e99480d965f38f266d20097976.tar.gz
rockbox-2d9c0bab540274e99480d965f38f266d20097976.zip
Add support for cp1252 (Western European) codepage.
In Europe Windows defaults to its own codepage cp1252 (also known as "WinLatin" or "Windows-1252"). cp1252 adds some characters to ISO-8859-1. Some mp3 tagging software on Windows uses cp1252 instead of ISO-8859-1. This violates the ID3 specification, which requires tags to be ISO-8859-1 or Unicode. However, similar violations are made for other codepages and supported by Rockbox using the "Default Codepage" setting. Add support for cp1252 to enable people using such broken tools to override the correct decoding to get their tags displayed properly. Change-Id: I9f2ec478afe2503e99ee8e6609416c92b0f453e0 Reviewed-on: http://gerrit.rockbox.org/209 Reviewed-by: Jens Arnold <amiconn@rockbox.org> Tested-by: Jens Arnold <amiconn@rockbox.org>
Diffstat (limited to 'apps')
-rw-r--r--apps/lang/english.lang14
-rw-r--r--apps/settings_list.c9
2 files changed, 20 insertions, 3 deletions
diff --git a/apps/lang/english.lang b/apps/lang/english.lang
index cd575e9cfa..a70bb8b923 100644
--- a/apps/lang/english.lang
+++ b/apps/lang/english.lang
@@ -13038,3 +13038,17 @@
13038 *: "Start Sleep Timer" 13038 *: "Start Sleep Timer"
13039 </voice> 13039 </voice>
13040</phrase> 13040</phrase>
13041<phrase>
13042 id: LANG_CODEPAGE_WESTERN_EUROPEAN
13043 desc: in codepage setting menu
13044 user: core
13045 <source>
13046 *: "Western European (CP1252)"
13047 </source>
13048 <dest>
13049 *: "Western European (CP1252)"
13050 </dest>
13051 <voice>
13052 *: "Western European"
13053 </voice>
13054</phrase>
diff --git a/apps/settings_list.c b/apps/settings_list.c
index c925b3273e..64bbe07ba4 100644
--- a/apps/settings_list.c
+++ b/apps/settings_list.c
@@ -1531,25 +1531,28 @@ const struct settings_list settings[] = {
1531#ifdef HAVE_LCD_BITMAP 1531#ifdef HAVE_LCD_BITMAP
1532 /* The order must match with that in unicode.c */ 1532 /* The order must match with that in unicode.c */
1533 "iso8859-1,iso8859-7,iso8859-8,cp1251,iso8859-11,cp1256," 1533 "iso8859-1,iso8859-7,iso8859-8,cp1251,iso8859-11,cp1256,"
1534 "iso8859-9,iso8859-2,cp1250,sjis,gb2312,ksx1001,big5,utf-8", 1534 "iso8859-9,iso8859-2,cp1250,cp1252,sjis,gb2312,ksx1001,big5,utf-8",
1535 set_codepage, 14, 1535 set_codepage, 14,
1536 ID2P(LANG_CODEPAGE_LATIN1), ID2P(LANG_CODEPAGE_GREEK), 1536 ID2P(LANG_CODEPAGE_LATIN1),
1537 ID2P(LANG_CODEPAGE_GREEK),
1537 ID2P(LANG_CODEPAGE_HEBREW), ID2P(LANG_CODEPAGE_CYRILLIC), 1538 ID2P(LANG_CODEPAGE_HEBREW), ID2P(LANG_CODEPAGE_CYRILLIC),
1538 ID2P(LANG_CODEPAGE_THAI), ID2P(LANG_CODEPAGE_ARABIC), 1539 ID2P(LANG_CODEPAGE_THAI), ID2P(LANG_CODEPAGE_ARABIC),
1539 ID2P(LANG_CODEPAGE_TURKISH), 1540 ID2P(LANG_CODEPAGE_TURKISH),
1540 ID2P(LANG_CODEPAGE_LATIN_EXTENDED), 1541 ID2P(LANG_CODEPAGE_LATIN_EXTENDED),
1541 ID2P(LANG_CODEPAGE_CENTRAL_EUROPEAN), 1542 ID2P(LANG_CODEPAGE_CENTRAL_EUROPEAN),
1543 ID2P(LANG_CODEPAGE_WESTERN_EUROPEAN),
1542 ID2P(LANG_CODEPAGE_JAPANESE), 1544 ID2P(LANG_CODEPAGE_JAPANESE),
1543 ID2P(LANG_CODEPAGE_SIMPLIFIED), ID2P(LANG_CODEPAGE_KOREAN), 1545 ID2P(LANG_CODEPAGE_SIMPLIFIED), ID2P(LANG_CODEPAGE_KOREAN),
1544 ID2P(LANG_CODEPAGE_TRADITIONAL), ID2P(LANG_CODEPAGE_UTF8)), 1546 ID2P(LANG_CODEPAGE_TRADITIONAL), ID2P(LANG_CODEPAGE_UTF8)),
1545#else /* !HAVE_LCD_BITMAP */ 1547#else /* !HAVE_LCD_BITMAP */
1546 /* The order must match with that in unicode.c */ 1548 /* The order must match with that in unicode.c */
1547 "iso8859-1,iso8859-7,cp1251,iso8859-9,iso8859-2,cp1250,utf-8", 1549 "iso8859-1,iso8859-7,cp1251,iso8859-9,iso8859-2,cp1250,cp1252,utf-8",
1548 set_codepage, 7, 1550 set_codepage, 7,
1549 ID2P(LANG_CODEPAGE_LATIN1), ID2P(LANG_CODEPAGE_GREEK), 1551 ID2P(LANG_CODEPAGE_LATIN1), ID2P(LANG_CODEPAGE_GREEK),
1550 ID2P(LANG_CODEPAGE_CYRILLIC), ID2P(LANG_CODEPAGE_TURKISH), 1552 ID2P(LANG_CODEPAGE_CYRILLIC), ID2P(LANG_CODEPAGE_TURKISH),
1551 ID2P(LANG_CODEPAGE_LATIN_EXTENDED), 1553 ID2P(LANG_CODEPAGE_LATIN_EXTENDED),
1552 ID2P(LANG_CODEPAGE_CENTRAL_EUROPEAN), 1554 ID2P(LANG_CODEPAGE_CENTRAL_EUROPEAN),
1555 ID2P(LANG_CODEPAGE_WESTERN_EUROPEAN),
1553 ID2P(LANG_CODEPAGE_UTF8)), 1556 ID2P(LANG_CODEPAGE_UTF8)),
1554#endif 1557#endif
1555 OFFON_SETTING(0, warnon_erase_dynplaylist, LANG_WARN_ERASEDYNPLAYLIST_MENU, 1558 OFFON_SETTING(0, warnon_erase_dynplaylist, LANG_WARN_ERASEDYNPLAYLIST_MENU,