X-Git-Url: http://git.chise.org/gitweb/?p=m17n%2Fm17n-test.git;a=blobdiff_plain;f=key-aliases.c;fp=key-aliases.c;h=bf76f291b61a8364a9a78c33a54b84ceed67df22;hp=0000000000000000000000000000000000000000;hb=2a663196e7aface7bb4e021c038588ce49f72ae5;hpb=cd803399122dd9368b95036960dd3b130381db4e diff --git a/key-aliases.c b/key-aliases.c new file mode 100644 index 0000000..bf76f29 --- /dev/null +++ b/key-aliases.c @@ -0,0 +1,71 @@ +#include +#include +#include + +int +main (int argc, char **argv) +{ + MInputMethod *im; + MInputContext *ic; + unsigned char buf[6]; + int i; + MSymbol prop, alias, sym; + + M17N_INIT (); + im = minput_open_im (Mt, msymbol ("test"), NULL); + if (im) + { + ic = minput_create_ic (im, NULL); + if (ic) + { + buf[0] = 0xd1; + buf[1] = 0; + minput_filter (ic, msymbol (buf), NULL); + minput_destroy_ic (ic); + } + minput_close_im (im); + } + prop = msymbol (" key-alias"); + buf[1] = 0; + for (i = 0; i < 256; i++) + { + buf[0] = i; + sym = msymbol ((char *) buf); + alias = msymbol_get (sym, prop); + if (alias) + { + printf ("%02X:", i); + while (alias && alias != sym) + { + printf (" %s", msymbol_name (alias)); + alias = msymbol_get (alias, prop); + } + printf ("\n"); + } + } + buf[0] = 'C', buf[1] = '-', buf[2] = 'M', buf[3] = '-', buf[5] = '\0'; + for (i = ' '; i <= '~'; i++) + { + if (i == '@') + { + i = '_'; + continue; + } + if (i == 'a') + { + i = 'z'; + continue; + } + buf[4] = i; + sym = msymbol (buf); + alias = msymbol_get (sym, prop); + printf ("%s:", buf); + while (alias && alias != sym) + { + printf (" %s", msymbol_name (alias)); + alias = msymbol_get (alias, prop); + } + printf ("\n"); + } + exit (0); +}