*** empty log message ***
[m17n/m17n-test.git] / key-aliases.c
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <m17n.h>
4
5 int
6 main (int argc, char **argv)
7 {
8   MInputMethod *im;
9   MInputContext *ic;
10   unsigned char buf[6];
11   int i;
12   MSymbol prop, alias, sym;
13
14   M17N_INIT ();
15   im = minput_open_im (Mt, msymbol ("test"), NULL);
16   if (im)
17     {
18       ic = minput_create_ic (im, NULL);
19       if (ic)
20         {
21           buf[0] = 0xd1;
22           buf[1] = 0;
23           minput_filter (ic, msymbol (buf), NULL);
24           minput_destroy_ic (ic);
25         }
26       minput_close_im (im);
27     }
28   prop = msymbol ("  key-alias");
29   buf[1] = 0;
30   for (i = 0; i < 256; i++)
31     {
32       buf[0] = i;
33       sym = msymbol ((char *) buf);
34       alias = msymbol_get (sym, prop);
35       if (alias)
36         {
37           printf ("%02X:", i);
38           while (alias && alias != sym)
39             {
40               printf (" %s", msymbol_name (alias));
41               alias = msymbol_get (alias, prop);
42             }
43           printf ("\n");
44         }
45     }
46   buf[0] = 'C', buf[1] = '-', buf[2] = 'M', buf[3] = '-', buf[5] = '\0';
47   for (i = ' '; i <= '~'; i++)
48     {
49       if (i == '@')
50         {
51           i = '_';
52           continue;
53         }
54       if (i == 'a')
55         {
56           i = 'z';
57           continue;
58         }
59       buf[4] = i;
60       sym = msymbol (buf);
61       alias = msymbol_get (sym, prop);
62       printf ("%s:", buf);
63       while (alias && alias != sym)
64         {
65           printf (" %s", msymbol_name (alias));
66           alias = msymbol_get (alias, prop);
67         }
68       printf ("\n");
69     }
70   exit (0);
71 }