*** empty log message ***
[m17n/m17n-db.git] / FORMATS / IM.ja.txt
index f35f4f4..00d102a 100644 (file)
@@ -24,10 +24,12 @@ m17n 
 
 @verbatim
 INPUT-METHOD ::=
-    IM-DECLARATION ? DESCRIPTION ? VARIABLE-LIST ? COMMAND-LIST ?
-    TITLE MAP-LIST MACRO-LIST ? MODULE-LIST ? STATE-LIST
+    IM-DECLARATION ? DESCRIPTION ? TITLE ?
+     VARIABLE-LIST ? COMMAND-LIST ?  MODULE-LIST ?
+     MACRO-LIST ? MAP-LIST ? STATE-LIST ?
 
-IM-DECLARATION ::= '(' 'input-method' LANGUAGE NAME [ '(version' VERSION ')'] ')'
+IM-DECLARATION ::= '(' 'input-method' LANGUAGE NAME EXTRA-ID ? VERSION ? ')'
+VERSION ::= '(' 'version' VERSION-NUMBER ')'
 DESCRIPTION ::= '(' 'description' [ MTEXT-OR-GETTEXT | nil] ')'
 VARIABLE-LIST ::= '(' 'variable' VARIABLE-DECLARATION * ')'
 COMMAND-LIST ::= '(' 'command' COMMAND-DECLARATION * ')'
@@ -44,7 +46,9 @@ MTEXT-OR-GETTEXT ::=
 
 LANGUAGE ::= SYMBOL
 NAME ::= SYMBOL
+EXTRA-ID ::= SYMBOL
 VERSION ::= MTEXT
+IM-DESCRIPTION ::= MTEXT
 VAR-NAME ::= SYMBOL
 VAR-DESCRIPTION ::= MTEXT
 VALUE ::= MTEXT | SYMBOL | INTEGER
@@ -58,6 +62,12 @@ TITLE-TEXT ::= MTEXT
 
 @c IM-DECLARATION ¤Ï¤³¤ÎÆþÎϥ᥽¥Ã¥É¤Î¸À¸ì¤È̾Á°¤ò»ØÄꤹ¤ë¡£
 
+@c LANGUAGE ¤¬ @c t ¤Î¾ì¹ç¡¢¤³¤ÎÆþÎϥ᥽¥Ã¥É¤ÏÊ£¿ô¤Î¸À¸ì¤ÇÍøÍѤµ¤ì¤ë¡£
+
+@c NAME ¤¬ @c nil ¤Î¾ì¹ç¡¢¤³¤ÎÆþÎϥ᥽¥Ã¥É¤ÏñÆȤÇÍѤ¤¤é¤ì¤ë¤â¤Î¤Ç¤Ï¤Ê
+¤¯¡¢Â¾¤ÎÆþÎϥ᥽¥Ã¥É¤«¤éÍøÍѤ¹¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£¤³¤Î¾ì¹ç¡¢ÆþÎÏ¥á
+¥½¥Ã¥É¤òÆÃÄꤹ¤ë¤¿¤á¤Ë @c EXTRA-ID ¤¬É¬ÍפǤ¢¤ë¡£
+
 @c VERSION ¤Ï¤³¤ÎÆþÎϥ᥽¥Ã¥É¤¬É¬ÍפȤ¹¤ë m17n ¥é¥¤¥Ö¥é¥ê¤ÎºÇ¾®¥Ð¡¼¥¸¥ç
 ¥ó¤ò»ØÄꤹ¤ë¡£¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï "XX.YY.ZZ" ¤Ç¤¢¤ê¡¢XX ¤Ï¥á¥¸¥ã¡¼¥Ð¡¼¥¸¥ç
 ¥ó¡¢ YY ¤Ï¥Þ¥¤¥Ê¡¼¥Ð¡¼¥¸¥ç¥ó¡¢ZZ ¤Ï¥Ñ¥Ã¥Á¥ì¥Ù¥ë¤òɽ¤¹¡£
@@ -66,19 +76,67 @@ TITLE-TEXT ::= MTEXT
 ¤ë¡£¤â¤·¤³¤ì¤¬£²ÈÖÌܤηÁ¼°¤ò¼è¤Ã¤Æ¤¤¤ì¤Ð¡¢ @c MTEXT ¤Ï¸½ºß¤Î¥í¥±¡¼¥ë¤Ë
 ½¾¤Ã¤Æ "gettext" ¤Ë¤è¤Ã¤ÆËÝÌõ¤µ¤ì¤ë¡ÊËÝÌõʸ¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡Ë¡£
 
+@c TITLE-TEXT ¤Ï¤³¤ÎÆþÎϥ᥽¥Ã¥É¤¬Í­¸ú¤Ê»þ¡¢¥¹¥¯¥ê¡¼¥ó¾å¤Ëɽ¼¨¤µ¤ì¤ë¥Æ
+¥­¥¹¥È¤Ç¤¢¤ë¡£
+
+"global.mim" ¤È¤¤¤¦ÆÃÊ̤ʥե¡¥¤¥ë¤¬¤¢¤ê¡¢¶¦Ä̤¹¤ëÊÑ¿ô¤ä¥³¥Þ¥ó¥É¤¬ÄêµÁ¤µ
+¤ì¤Æ¤¤¤ë¡£ÆþÎϥ᥽¥Ã¥É¥É¥é¥¤¥Ð¤ÏËè²ó¤³¤Î¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¡¢Â¾¤ÎÆþÎÏ¥á
+¥½¥Ã¥É¤Ï¤³¤³¤ÇÄêµÁ¤µ¤ì¤¿ÊÑ¿ô¤ä¥³¥Þ¥ó¥É¤ò·Ñ¾µ¤Ç¤­¤ë¡£
+
 @c VARIABLE-DECLARATION ¤Ï¤³¤ÎÆþÎϥ᥽¥Ã¥É¤Ç»ÈÍѤµ¤ì¤ëÊÑ¿ô¤òÀë¸À¤¹¤ë¡£
 ÊÑ¿ô¤ò¥Ç¥Õ¥©¥ë¥ÈÃͤ˽é´ü²½¤·¤¿¤ê¡¢¥æ¡¼¥¶¤¬¥«¥¹¥¿¥Þ¥¤¥º¤·¤¿¤ê¤¹¤ë¾ì¹ç¤Ë
-¤Ï¡¢¤³¤³¤ÇÀë¸À¤µ¤ì¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤Ï¡¢¤³¤³¤ÇÀë¸À¤µ¤ì¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£¤³¤ÎÀë¸À¤ÏÆóÄ̤ê¤ËÍøÍѤµ¤ì¤ë¡£°ì¤Ä
+¤á¤Ï¿·¤·¤¤ÊÑ¿ô¤òƳÆþ¤¹¤ë¤¿¤á¤Ç¤¢¤ê¡¢¤³¤Î¾ì¹ç @c VALUE ¤Ï¾Êά¤Ç¤­¤Ê¤¤¡£
+¤â¤¦°ì¤Ä¤Ï "global.mim" ¤ÇÀë¸À¤µ¤ì¤¿ÊÑ¿ô¤ò·Ñ¾µ¤·¡¢°ã¤Ã¤¿¥Ç¥Õ¥©¥ë¥ÈÃͤò
+»ØÄꤷ¤¿¤ê¡¢¤³¤ÎÆþÎϥ᥽¥Ã¥ÉÍѤ˥«¥¹¥¿¥Þ¥¤¥º²Äǽ¤Ë¤·¤¿¤ê¤¹¤ë¤¿¤á¤Ç¤¢¤ë¡£
+¤³¤Î¾ì¹ç¤Ë¤Ï @c VALUE ¤Ï¾Êά¤Ç¤­¤ë¡£
 
 @c COMMAND-DECLARATION ¤Ï¤³¤ÎÆþÎϥ᥽¥Ã¥É¤Ç»ÈÍѤµ¤ì¤ë¥³¥Þ¥ó¥É¤òÀë¸À¤¹¤ë¡£
 ¥³¥Þ¥ó¥É¤ò¥Ç¥Õ¥©¥ë¥È¥­¡¼¥·¡¼¥±¥ó¥¹¤Ë³ä¤êÅö¤Æ¤¿¤ê¡¢¥æ¡¼¥¶¤¬¥«¥¹¥¿¥Þ¥¤¥º
-¤·¤¿¤ê¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤³¤ÇÀë¸À¤µ¤ì¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤·¤¿¤ê¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤³¤ÇÀë¸À¤µ¤ì¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£@c
+VARIABLE-DECLARATION Æ±ÍÍ¡¢¤³¤ÎÀë¸À¤ÏÆóÄ̤ê¤ËÍøÍѤµ¤ì¤ë¡£°ì¤Ä¤á¤Ï¿·¤·¤¤
+¥³¥Þ¥ó¥É¤òƳÆþ¤¹¤ë¤¿¤á¤Ç¤¢¤ê¡¢¤³¤Î¾ì¹ç @c KEYSEQ ¤Ï¾Êά¤Ç¤­¤Ê¤¤¡£¤â¤¦°ì
+¤Ä¤Ï "global.mim" ¤ÇÀë¸À¤µ¤ì¤¿¥³¥Þ¥ó¥É¤ò·Ñ¾µ¤·¡¢°ã¤Ã¤¿¥­¡¼¥Ð¥¤¥ó¥Ç¥£¥ó
+¥°¤ò»ØÄꤷ¤¿¤ê¡¢¤³¤ÎÆþÎϥ᥽¥Ã¥ÉÍѤ˥«¥¹¥¿¥Þ¥¤¥º²Äǽ¤Ë¤·¤¿¤ê¤¹¤ë¤¿¤á¤Ç
+¤¢¤ë¡£¤³¤Î¾ì¹ç¤Ë¤Ï @c KEYSEQ ¤Ï¾Êά¤Ç¤­¤ë¡£
 
-@c TITLE-TEXT ¤Ï¤³¤ÎÆþÎϥ᥽¥Ã¥É¤¬Í­¸ú¤Ê»þ¡¢¥¹¥¯¥ê¡¼¥ó¾å¤Ëɽ¼¨¤µ¤ì¤ë¥Æ
-¥­¥¹¥È¤Ç¤¢¤ë¡£
+@verbatim
+MODULE-LIST ::= '(' 'module' MODULE * ')'
 
-@verbatim 
-MAP-LIST ::= '(' 'map' MAP * ')'
+MODULE ::= '(' MODULE-NAME FUNCTION * ')'
+
+MODULE-NAME ::= SYMBOL
+
+FUNCTION ::= SYMBOL
+@endverbatim
+
+³Æ @c MODULE ¤Ï³°Éô¥â¥¸¥å¡¼¥ë (ưŪ¥é¥¤¥Ö¥é¥ê) ¤Î̾Á°¤È¤½¤Î¥â¥¸¥å¡¼¥ë¤¬
+¸ø³«¤·¤Æ¤¤¤ë´Ø¿ô̾¤òÀë¸À¤¹¤ë¡£@c FUNCTION ¤¬ "init" ¤È¤¤¤¦Ì¾Á°¤Ç¤¢¤ì¤Ð¡¢
+¤³¤ÎÆþÎϥ᥽¥Ã¥ÉÍѤÎÆþÎÏ¥³¥ó¥Æ¥¯¥¹¥È¤¬À¸À®¤µ¤ì¤ëºÝ¤Ë¡¢¥Ç¥Õ¥©¥ë¥È¤Î°ú¿ô
+(@c CALL ¤ÎÀỲ¾È) ¤Î¤ß¤È¤È¤â¤Ë¸Æ¤Ð¤ì¤ë¡£ @c FUNCTION ¤¬ "fini" ¤È¤¤¤¦
+̾Á°¤ò»ý¤Æ¤Ð, ÆþÎÏ¥³¥ó¥Æ¥¯¥¹¥È¤¬Ç˲õ¤µ¤ì¤ëºÝ¤Ë¡¢¥Ç¥Õ¥©¥ë¥È¤Î°ú¿ô¤Î¤ß¤È
+¤È¤â¤Ë¸Æ¤Ð¤ì¤ë¡£
+
+@verbatim
+MACRO-LIST ::=  MACRO-INCLUSION ? '(' 'macro' MACRO * ')' MACRO-INCLUSION ?
+
+MACRO ::= '(' MACRO-NAME MACRO-ACTION * ')'
+
+MACRO-NAME ::= SYMBOL
+
+MACRO-ACTION ::= ACTION
+
+TAGS ::= `(` LANGUAGE NAME EXTRA-ID ? `)`
+
+MACRO-INCLUSION ::= '(' 'include' TAGS 'macro' MACRO-NAME ? ')'
+
+@endverbatim
+
+@c MACRO-INCLUSION ¤Ï¡¢@c TAGS ¤Ç»ØÄꤵ¤ì¤ë¾¤ÎÆþÎϥ᥽¥Ã¥É¤«¤é¥Þ¥¯¥í¤ò
+Æɤ߹þ¤à¡£@c MACRO-NAME ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢Á´¤Æ¤Î¥Þ¥¯¥í¤òÆɤࡣ
+
+@verbatim
+MAP-LIST ::= MAP-INCLUSION ? '(' 'map' MAP * ')' MAP-INCLUSION ?
 
 MAP ::= '(' MAP-NAME RULE * ')'
 
@@ -87,8 +145,14 @@ MAP-NAME ::= SYMBOL
 RULE ::= '(' KEYSEQ MAP-ACTION * ')'
 
 KEYSEQ ::= MTEXT | '(' [ SYMBOL | INTEGER ] * ')'
+
+MAP-INCLUSION ::= '(' 'include' TAGS 'map' MAP-NAME ? ')'
+
 @endverbatim
 
+ÆþÎϥ᥽¥Ã¥É¤¬¤½¤ìñÂΤÇÍøÍѤµ¤ì¤ë¤³¤È¤¬¤Ê¤¯¾ï¤Ë¾¤ÎÆþÎϥ᥽¥Ã¥É¤ËÆÉ
+¤ß¹þ¤Þ¤ì¤ÆÍѤ¤¤é¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢@c MAP-LIST ¤Ï¾Êά¤Ç¤­¤ë¡£
+
 @c MAP-NAME ÄêµÁÃæ¤Î @c SYMBOL ¤Ï¡¢ @c t ¤¢¤ë¤¤¤Ï @c nil ¤Ç¤¢¤Ã¤Æ¤Ï¤Ê
 ¤é¤Ê¤¤¡£
 
@@ -110,12 +174,17 @@ MTEXT 
 
 @c KEYSEQ ÄêµÁÃæ¤Î @c INTEGER ¤Ï¡¢Í­¸ú¤Êʸ»ú¥³¡¼¥É¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
 
+@c MAP-INCLUSION ¤Ï¡¢@c TAGS ¤Ç»ØÄꤵ¤ì¤ë¾¤ÎÆþÎϥ᥽¥Ã¥É¤«¤é¥Þ¥Ã¥×¤òÆÉ
+¤ß¹þ¤à¡£@c MAP-NAME ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢Á´¤Æ¤Î¥Þ¥Ã¥×¤òÆɤࡣ
+
 @verbatim
 MAP-ACTION ::= ACTION
 
 ACTION ::= INSERT | DELETE | SELECT | MOVE | MARK
-           | SHOW | HIDE | PUSHBACK | POP | UNDO | UNHANDLE | SHIFT | CALL
+           | SHOW | HIDE | PUSHBACK | POP | UNDO 
+          | COMMIT | UNHANDLE | SHIFT | CALL
           | SET | IF | COND | '(' MACRO-NAME ')'
+
 PREDEFINED-SYMBOL ::=
     '@0' | '@1' | '@2' | '@3' | '@4'
     | '@5' | '@6' | '@7' | '@8' | '@9'
@@ -123,34 +192,9 @@ PREDEFINED-SYMBOL ::=
     | '@@'
     | '@-0' | '@-N' | '@+N'
 @endverbatim
-@verbatim
-MACRO-LIST ::= '(' 'macro' MACRO * ')'
-
-MACRO ::= '(' MACRO-NAME MACRO-ACTION * ')'
-
-MACRO-NAME ::= SYMBOL
-
-MACRO-ACTION ::= ACTION
-@endverbatim
-@verbatim
-MODULE-LIST ::= '(' 'module' MODULE * ')'
-
-MODULE ::= '(' MODULE-NAME FUNCTION * ')'
-
-MODULE-NAME ::= SYMBOL
-
-FUNCTION ::= SYMBOL
-@endverbatim
-
-³Æ @c MODULE ¤Ï³°Éô¥â¥¸¥å¡¼¥ë (ưŪ¥é¥¤¥Ö¥é¥ê) ¤Î̾Á°¤È¤½¤Î¥â¥¸¥å¡¼¥ë¤¬
-¸ø³«¤·¤Æ¤¤¤ë´Ø¿ô̾¤òÀë¸À¤¹¤ë¡£@c FUNCTION ¤¬ "init" ¤È¤¤¤¦Ì¾Á°¤Ç¤¢¤ì¤Ð¡¢
-¤³¤ÎÆþÎϥ᥽¥Ã¥ÉÍѤÎÆþÎÏ¥³¥ó¥Æ¥¯¥¹¥È¤¬À¸À®¤µ¤ì¤ëºÝ¤Ë¡¢¥Ç¥Õ¥©¥ë¥È¤Î°ú¿ô
-(@c CALL ¤ÎÀỲ¾È) ¤Î¤ß¤È¤È¤â¤Ë¸Æ¤Ð¤ì¤ë¡£ @c FUNCTION ¤¬ "fini" ¤È¤¤¤¦
-̾Á°¤ò»ý¤Æ¤Ð, ÆþÎÏ¥³¥ó¥Æ¥¯¥¹¥È¤¬Ç˲õ¤µ¤ì¤ëºÝ¤Ë¡¢¥Ç¥Õ¥©¥ë¥È¤Î°ú¿ô¤Î¤ß¤È
-¤È¤â¤Ë¸Æ¤Ð¤ì¤ë¡£
 
 @verbatim
-STATE-LIST ::= '(' 'state' STATE * ')'
+STATE-LIST ::= STATE-INCUSION ? '(' 'state' STATE * ')'  STATE-INCUSION ?
 
 STATE ::= '(' STATE-NAME [ STATE-TITLE-TEXT ] BRANCH * ')'
 
@@ -161,9 +205,18 @@ STATE-TITLE-TEXT ::= MTEXT
 BRANCH ::= '(' MAP-NAME BRANCH-ACTION * ')'
           | '(' nil BRANCH-ACTION * ')'
           | '(' t BRANCH-ACTION * ')'
+
+STATE-INCLUSION ::= '(' 'include' TAGS 'state' STATE-NAME ? ')'
 @endverbatim
 
-@c STATE-TITLE-TEXT ¤Ï¡¢¤â¤·»ØÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢¥¤¥ó¥×¥Ã¥È¥á¥½¥Ã¥É¤¬¤³¤Î
+ÆþÎϥ᥽¥Ã¥É¤¬¤½¤ìñÂΤÇÍøÍѤµ¤ì¤ë¤³¤È¤¬¤Ê¤¯¾ï¤Ë¾¤ÎÆþÎϥ᥽¥Ã¥É¤ËÆÉ
+¤ß¹þ¤Þ¤ì¤ÆÍѤ¤¤é¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢@c STATE-LIST ¤Ï¾Êά¤Ç¤­¤ë¡£
+
+@c STATE-INCLUSION ¤Ï¡¢@c TAGS ¤Ç»ØÄꤵ¤ì¤ë¾¤ÎÆþÎϥ᥽¥Ã¥É¤«¤é¥¹¥Æ¡¼¥È
+¤òÆɤ߹þ¤à¡£@c STATE--NAME ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢¤¹¤Ù¤Æ¤Î¥¹¥Æ¡¼¥È¤òÆÉ
+¤à¡£
+
+@c STATE-TITLE-TEXT ¤Ï¡¢¤â¤·»ØÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢ÆþÎϥ᥽¥Ã¥É¤¬¤³¤Î
 ¾õÂ֤ˤ¢¤ë»þ¥¹¥¯¥ê¡¼¥ó¾å¤Ëɽ¼¨¤µ¤ì¤ë¥Æ¥­¥¹¥È¤Ç¤¢¤ë¡£¾Êά¤µ¤ì¤¿¾ì¹ç¤Ë¤Ï
 @c TITLE-TEXT ¤¬ÍѤ¤¤é¤ì¤ë¡£
 
@@ -174,6 +227,9 @@ BRANCH ::= '(' MAP-NAME BRANCH-ACTION * ')'
 @c BRANCH ¤ÎÂèÆó¤Î·Á¼°¤Ç¤Ï¡¢¤½¤Î»þÅÀ¤Î¾õÂ֤Τ¤¤º¤ì¤Î @c BRANCH ¤Ë¤â¹çÃ×
 ¤·¤Ê¤¤¥­¡¼Î󤬥¿¥¤¥×¤µ¤ì¤ì¤Ð¡¢@c BRANCH-ACTION¤¬¼Â¹Ô¤µ¤ì¤ë¡£
 
+@c nil ¤Ç»Ï¤Þ¤ë @c BRANCH ¤¬¤Ê¤¯¡¢ÆþÎϤµ¤ì¤¿¥­¡¼Î󤬤½¤Î»þÅÀ¤Ç¤Î¤¤¤º¤ì¤Î
+@c BRANCH ¤Ë¤â¹çÃפ·¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ÆþÎϥ᥽¥Ã¥É¤Ï½é´ü¾õÂÖ¤ËÁ«°Ü¤¹¤ë¡£
+
 @c BRANCH ¤ÎÂè»°¤Î·Á¼°¤Ç¤Ï¡¢¤½¤Î¾õÂ֤˰ÜÆ°¤·¤¿»þÅÀ¤Ç @c BRANCH-ACTION
 ¤¬¼Â¹Ô¤µ¤ì¤ë¡£¤â¤·½é´ü¾õÂ֤Ǥ¢¤ì¤Ð¡¢ÆþÎϥ᥽¥Ã¥É¤ÎÆþÎÏ¥³¥ó¥Æ¥¯¥¹¥È¤òÀ¸
 À®¤·¤¿»þÅÀ¤Ç @c BRANCH-ACTION ¤ò¼Â¹Ô¤¹¤ë¡£
@@ -323,6 +379,7 @@ DELETE ::= '(' 'delete' SYMBOL ')'
 @verbatim
 SELECT ::= '(' 'select' PREDEFINED-SYMBOL ')'
            | '(' 'select' INTEGER ')'
+          | '(' 'select' SYMBOL ')'
 @endverbatim
 
 ¤³¤Î¥¢¥¯¥·¥ç¥ó¤Ï¤Þ¤º¡¢¸½ºß¤Î°ÌÃ֤ξÁ°¤Îʸ»ú¤¬¡¢¸õÊä¥ê¥¹¥È¤¬Éղ䵤ì¤Æ
@@ -335,6 +392,9 @@ SELECT ::= '(' 'select' PREDEFINED-SYMBOL ')'
 ÂèÆó¤Î·Á¼°¤Ç¤Ï @c INTEGER ¤Ï¸õÊ䥤¥ó¥Ç¥Ã¥¯¥¹¤Ç¤¢¤ê¡¢¸õÊä¥ê¥¹¥ÈÃæ¤Î¿·¤·
 ¤¤¸õÊä¤ò»ØÄꤹ¤ë¡£
 
+Âè»°¤Î·Á¼°¤Ç¤Ï @c SYMBOL ¤ÏÀ°¿ô¤ÎÃͤò»ý¤¿¤Ê¤±¤ì¤Ð¤Ê¤é¤º¡¢¤½¤ÎÃͤ¬¸õÊ䥤
+¥ó¥Ç¥Ã¥¯¥¹¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤ë¡£
+
 @verbatim
 SHOW ::= '(show)'
 @endverbatim
@@ -398,6 +458,12 @@ UNDO :: = '(' 'undo' [ INTEGER | SYMBOL ] ')'
 ¾åµ­¤ÎÀµ¿ôÃÍ°ú¿ô¤Î¾ì¹ç¤ÈƱÍͤ˼è¤ê°·¤ï¤ì¤ë¡£
 
 @verbatim
+COMMIT :: = '(commit)'
+@endverbatim
+
+¤³¤Î¥¢¥¯¥·¥ç¥ó¤Ï¸½ºß¤Î preediting ¥Æ¥­¥¹¥È¤ò¥³¥ß¥Ã¥È¤¹¤ë¡£
+
+@verbatim
 UNHANDLE :: = '(unhandle)'
 @endverbatim
 
@@ -408,8 +474,10 @@ UNHANDLE :: = '(unhandle)'
 SHIFT :: = '(' 'shift' STATE-NAME ')'
 @endverbatim
 
-¤³¤Î¥¢¥¯¥·¥ç¥ó¤Ï¸½ºß¤Î¾õÂÖ¤ò @c STATE-NAME ¤Ë°ÜÆ°¤µ¤»¤ë¡£ @c
-STATE-NAME ¤Ï @c STATE-LIST ¤Ë¸½¤ï¤ì¤ë¤â¤Î¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+@c STATE-NAME ¤¬ @c t ¤Ê¤é¤Ð¡¢¤³¤Î¥¢¥¯¥·¥ç¥ó¤Ï¸½ºß¤Î¾õÂÖ¤ò°ì¤ÄÁ°¤Î¾õÂÖ
+¤ËÁ«°Ü¤µ¤»¤ë¡£¤½¤¦¤Ç¤Ê¤±¤ì¤Ð @c STATE-NAME ¤Çɽ¤µ¤ì¤ë¾õÂÖ¤ËÁ«°Ü¤µ¤»¤ë¡£
+¸å¼Ô¤Î¾ì¹ç¤Ë¤Ï¡¢@c STATE-NAME ¤Ï @c STATE-LIST ¤Ë¸½¤ï¤ì¤ë¤â¤Î¤Ç¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£
 
 @verbatim
 CALL ::= '(' 'call' MODULE-NAME FUNCTION ARG * ')'
@@ -459,7 +527,7 @@ OPERAND ::= '+' | '-' | '*' | '/' | '|' | '&' | '!'
 ¤Î¤Ë¤¹¤ë¡£
 
 @verbatim
-IF ::= '(' CONDITION ACTION-LIST1 ACTION-LIST2 ')'
+IF ::= '(' CONDITION ACTION-LIST1 ACTION-LIST2 ? ')'
 
 CONDITION ::= [ '=' | '<' | '>' | '<=' | '>=' ] EXPRESSION1 EXPRESSION2
 
@@ -480,8 +548,6 @@ COND ::= '(' 'cond' [ '(' EXPRESSION ACTION * ') ] * ')'
 ¤³¤Î¥¢¥¯¥·¥ç¥ó¤ÏÂбþ¤¹¤ë @c EXPRESSION ¤¬ 0 ¤Ç¤Ê¤¤Ãͤò¤È¤ëºÇ½é¤Î¥¢¥¯¥·¥ç
 ¥ó @c ACTION ¤ò¼Â¹Ô¤¹¤ë¡£
 
-@ifnot FOR-MAN
-
 @section im-seealso SEE ALSO
 
 @ref mim-list "Input Methods provided by the m17n database",