mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-02 03:52:49 -05:00
First draft of Unicode support in pterm. It's pretty complete: it
does UTF-8 copy and paste (falling back to normal strings if necessary), it understands X font encodings and translates things accordingly so that if you have a Unicode font you can ask for virtually any single-byte encoding and get it (Mac-Roman pterm, anyone?), and so on. There's work left to be done (wide fonts for CJK spring to mind), but I reckon this is a pretty good start. [originally from svn r2395]
This commit is contained in:
29
charset/slookup.c
Normal file
29
charset/slookup.c
Normal file
@ -0,0 +1,29 @@
|
||||
/*
|
||||
* slookup.c - static lookup of character sets.
|
||||
*/
|
||||
|
||||
#include "charset.h"
|
||||
#include "internal.h"
|
||||
|
||||
#define ENUM_CHARSET(x) extern charset_spec const charset_##x;
|
||||
#include "enum.c"
|
||||
#undef ENUM_CHARSET
|
||||
|
||||
static charset_spec const *const cs_table[] = {
|
||||
|
||||
#define ENUM_CHARSET(x) &charset_##x,
|
||||
#include "enum.c"
|
||||
#undef ENUM_CHARSET
|
||||
|
||||
};
|
||||
|
||||
charset_spec const *charset_find_spec(int charset)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < (int)lenof(cs_table); i++)
|
||||
if (cs_table[i]->charset == charset)
|
||||
return cs_table[i];
|
||||
|
||||
return NULL;
|
||||
}
|
Reference in New Issue
Block a user