*** empty log message ***
[m17n/m17n-lib-cs.git] / MInputMethod.cs
index a6c8552..ee54f6d 100644 (file)
@@ -506,6 +506,7 @@ namespace M17N.Input
        if (description == null)
          description = "No description";
        keys = new List<KeySeq> ();
+       Console.WriteLine ("cmd:" + p);
        for (p = p.next; ! p.IsEmpty; p = p.next)
          {
            if (p.IsMText)
@@ -517,7 +518,7 @@ namespace M17N.Input
 
       public Command (XmlNode node)
       {
-       name = node.Attributes["id"].Value;
+       name = node.Attributes[0].Value;
        keys = new List<KeySeq> ();
        for (node = node.FirstChild; node != null; node = node.NextSibling)
          {
@@ -794,7 +795,7 @@ namespace M17N.Input
     }
 
     // Instance members
-    internal Xex.Domain domain;
+    internal Xex.Domain domain = new Xex.Domain (im_domain, null);
 
     private LoadStatus load_status = LoadStatus.None;
     private MDatabase.Tag tag;
@@ -910,6 +911,7 @@ namespace M17N.Input
       mdb = MDatabase.Find (tag);
       if (mdb == null)
        return false;
+      mdb.name_table = Xex.Symbol.Table;
       try {
        MSymbol format = mdb.Format;
 
@@ -931,10 +933,10 @@ namespace M17N.Input
 
     private bool load_body ()
     {
-      domain = new Xex.Domain (im_domain, null);
       mdb = MDatabase.Find (tag);
       if (mdb == null)
        return false;
+      mdb.name_table = Xex.Symbol.Table;
       try {
        object obj = mdb.Load ();
        if (obj is MPlist)
@@ -1363,9 +1365,7 @@ namespace M17N.Input
          Xex.Variable vari = get_global_var (name);
          if (vari != null)
            domain.Defvar (vari);
-         else
-           domain.Defvar (node_list[i]);
-
+         domain.Defvar (node_list[i]);
          var_names[i] = name;
        }
     }