forked from len0rd/rockbox
codepages: Translate to linux codepage names for use on APPLICATION.
The iocharset mount option names the codepages slightly differently and must be translated properly. Change-Id: I147a256e3453136282244201c27225a30cdfdca0
This commit is contained in:
parent
facbaab195
commit
07f484824c
2 changed files with 32 additions and 0 deletions
|
@ -79,6 +79,35 @@ static const char * const name_codepages[NUM_CODEPAGES+1] =
|
||||||
"unknown"
|
"unknown"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#if defined(APPLICATION) && defined(__linux__)
|
||||||
|
static const char * const name_codepages_linux[NUM_CODEPAGES+1] =
|
||||||
|
{
|
||||||
|
"iso8859-1",
|
||||||
|
"iso8859-7",
|
||||||
|
"iso8859-8",
|
||||||
|
"cp1251",
|
||||||
|
"iso8859-11",
|
||||||
|
"cp1256",
|
||||||
|
"iso8859-9",
|
||||||
|
"iso8859-2",
|
||||||
|
"cp1250",
|
||||||
|
"iso8859-15" /* closest, linux doesnt have a codepage named cp1252 */
|
||||||
|
"cp932",
|
||||||
|
"cp936",
|
||||||
|
"cp949",
|
||||||
|
"cp950",
|
||||||
|
"utf8",
|
||||||
|
"cp437"
|
||||||
|
};
|
||||||
|
|
||||||
|
const char *get_current_codepage_name_linux(void)
|
||||||
|
{
|
||||||
|
if (default_codepage < 0 || default_codepage >= NUM_CODEPAGES)
|
||||||
|
return name_codepages_linux[NUM_CODEPAGES];
|
||||||
|
return name_codepages_linux[default_codepage];
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#else /* !HAVE_LCD_BITMAP, reduced support */
|
#else /* !HAVE_LCD_BITMAP, reduced support */
|
||||||
|
|
||||||
#define MAX_CP_TABLE_SIZE 768
|
#define MAX_CP_TABLE_SIZE 768
|
||||||
|
|
|
@ -80,4 +80,7 @@ const unsigned char* utf8decode(const unsigned char *utf8, unsigned short *ucs);
|
||||||
void set_codepage(int cp);
|
void set_codepage(int cp);
|
||||||
int utf8seek(const unsigned char* utf8, int offset);
|
int utf8seek(const unsigned char* utf8, int offset);
|
||||||
const char* get_codepage_name(int cp);
|
const char* get_codepage_name(int cp);
|
||||||
|
#if defined(APPLICATION) && defined(__linux__)
|
||||||
|
const char *get_current_codepage_name_linux(void);
|
||||||
|
#endif
|
||||||
#endif /* _RBUNICODE_H_ */
|
#endif /* _RBUNICODE_H_ */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue