Next: , Previous: Text Representations, Up: Non-ASCII Characters   [Contents][Index]


32.2 ¥Æ¥­¥¹¥Èɽ¸½¤ÎÊÑ´¹

Emacs¤Ï¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥Þ¥ë¥Á¥Ð¥¤¥È¤ËÊÑ´¹¤Ç¤­¤Þ¤¹¡£ ¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥æ¥Ë¥Ð¥¤¥È¤Ë¤âÊÑ´¹¤Ç¤­¤Þ¤¹¤¬¡¢ ¤³¤ÎÊÑ´¹¤Ç¤Ï¾ðÊ󤬷çÍ¤Þ¤¹¡£ ¥Ð¥Ã¥Õ¥¡¤Ë¥Æ¥­¥¹¥È¤òÁÞÆþ¤¹¤ë¤È¤­¡¢¤¢¤ë¤¤¤Ï¡¢ Ê£¿ô¤Îʸ»úÎ󤫤é1¤Ä¤Îʸ»úÎó¤Ë¥Æ¥­¥¹¥È¤ò¼ý¤á¤ë¤È¤­¤Ë¡¢ °ìÈ̤ˤ³¤ì¤é¤ÎÊÑ´¹¤¬¹Ô¤ï¤ì¤Þ¤¹¡£ ʸ»úÎó¤ÎÆâÍÆ¤ò¤É¤Á¤é¤«¤Îɽ¸½¤ËÌÀ¼¨Åª¤Ë¤âÊÑ´¹¤Ç¤­¤Þ¤¹¡£

Emacs¤Ï¡¢Ê¸»úÎó¤òºîÀ®¤¹¤ë¤È¤­¤Ë¤Ï¤½¤ÎÆâÍÆ¤Ë´ð¤Å¤¤¤Æ ʸ»úÎó¤Îɽ¸½¤òÁª¤Ó¤Þ¤¹¡£ °ìȨ̀¤Ï¡¢¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¾¤Î¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ËÁÈ¤ßÆþ¤ì¤ë¤È¤­¤Ë¤Ï ¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ËÊÑ´¹¤·¤Þ¤¹¡£ ¥Þ¥ë¥Á¥Ð¥¤¥Èɽ¸½¤Î¤Û¤¦¤¬ÈÆÍѤǤ¢¤ê¡¢ ¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤Î¤É¤ó¤Êʸ»ú¤Ç¤âÊÝ»ý¤Ç¤­¤ë¤«¤é¤Ç¤¹¡£

¥Ð¥Ã¥Õ¥¡¤Ë¥Æ¥­¥¹¥È¤òÁÞÆþ¤¹¤ë¤È¤­¤Ë¤Ï¡¢Emacs¤Ï¡¢ Åö³º¥Ð¥Ã¥Õ¥¡¤Îenable-multibyte-characters¤Î»ØÄê¤Ë½¾¤Ã¤¿ ¥Ð¥Ã¥Õ¥¡¤Îɽ¸½¤Ë¥Æ¥­¥¹¥È¤òÊÑ´¹¤·¤Þ¤¹¡£ ÆÃ¤Ë¡¢¥æ¥Ë¥Ð¥¤¥È¥Ð¥Ã¥Õ¥¡¤Ë¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥È¤òÁÞÆþ¤¹¤ë¤È¤­¤Ë¤Ï¡¢ ¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥ÈÆâ¤Î¤¹¤Ù¤Æ¤Îʸ»ú¤ò°ìÈ̤ˤÏÊݸ¤Ç¤­¤Ê¤¯¤Æ¤â¡¢ Emacs¤Ï¥Æ¥­¥¹¥È¤ò¥æ¥Ë¥Ð¥¤¥È¤ËÊÑ´¹¤·¤Þ¤¹¡£ ¼«Á³¤ÊÂåÂØ°Æ¤Ï¥Ð¥Ã¥Õ¥¡ÆâÍÆ¤ò¥Þ¥ë¥Á¥Ð¥¤¥È¤ËÊÑ´¹¤¹¤ë¤³¤È¤Ç¤¹¤¬¡¢ ¤³¤ì¤Ï¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó¡£ ¥Ð¥Ã¥Õ¥¡¤Îɽ¸½¤Ï¥æ¡¼¥¶¡¼¤¬ÁªÂò¤·¤¿¤â¤Î¤Ç¤¢¤ê¼«Æ°Åª¤Ë¤Ï̵»ë¤Ç¤­¤Ê¤¤¤«¤é¤Ç¤¹¡£

¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ËÊÑ´¹¤·¤Æ¤â ASCIIʸ»ú¤Ï̵Êѹ¹¤Ç¤¢¤ê¡¢128¤«¤é159¤âƱÍͤǤ¹¡£ 160¤«¤é255¤ÎÈóASCII¤Ë¤Ä¤¤¤Æ¤Ï¡¢ ³ÆÊ¸»ú¤Ënonascii-insert-offset¤ÎÃͤò²Ã»»¤¹¤ë¤³¤È¤ÇÊÑ´¹¤·¤Þ¤¹¡£ ¤³¤ÎÊÑ¿ô¤ËÀßÄꤹ¤ë¤È¡¢¥æ¥Ë¥Ð¥¤¥Èʸ»ú¤¬¤É¤Îʸ»ú½¸¹ç¤ËÂбþ¤¹¤ë¤«¤ò»ØÄê¤Ç¤­¤Þ¤¹ ¡Êsee Character Sets¡Ë¡£ ¤¿¤È¤¨¤Ð¡¢nonascii-insert-offset¤¬ (- (make-char 'latin-iso8859-1) 128)¤Î2048¤Ç¤¢¤ë¤È¡¢ ÈóASCII¤Î¥æ¥Ë¥Ð¥¤¥È¤ÏLatin 1¤ËÂбþ¤·¤Þ¤¹¡£ (- (make-char 'greek-iso8859-7) 128)¤Î2688¤Ç¤¢¤ë¤È¡¢ ¥®¥ê¥·¥ãʸ»ú¤ËÂбþ¤·¤Þ¤¹¡£

¥Þ¥ë¥Á¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥æ¥Ë¥Ð¥¤¥È¤ËÊÑ´¹¤¹¤ë¤Î¤Ï´Êñ¤Ç¡¢ ³ÆÊ¸»ú¥³¡¼¥É¤È255¤ÎÏÀÍýÀѤò¤È¤ê¤Þ¤¹¡£ nonascii-insert-offset¤Ë ʸ»ú½¸¹ç¤Î»Ï¤Þ¤ê¤ËÂбþ¤¹¤ë¹çÍýŪ¤ÊÃͤ¬ÀßÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢ ¤³¤ÎÊÑ´¹¤ÏµÕÊÑ´¹¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥Þ¥ë¥Á¥Ð¥¤¥È¤ËÊÑ´¹¤·¡¢ ¤½¤ì¤ò¥æ¥Ë¥Ð¥¤¥È¤ËÌ᤹¤È¤â¤È¤Î¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£

Variable: nonascii-insert-offset

¤³¤ÎÊÑ¿ô¤Ï¡¢¥æ¥Ë¥Ð¥¤¥È¥Æ¥­¥¹¥È¤ò¥Þ¥ë¥Á¥Ð¥¤¥È¤ËÊÑ´¹¤¹¤ë¤È¤­¤Ë ÈóASCIIʸ»ú¤Ë²Ã»»¤¹¤ëÃͤò»ØÄꤹ¤ë¡£ ¤³¤ì¤Ï¡¢128¤«¤é255¤Î¥æ¥Ë¥Ð¥¤¥È¤ÎÈóASCII¤ÎÈϰϤÎʸ»ú¤òÁÞÆþ¤¹¤ë self-insert-command¤Ë¤âŬÍѤµ¤ì¤ë¡£ ¤·¤«¤·¡¢´Ø¿ôinsert-char¤Ï¤³¤ÎÊÑ´¹¤ò¹Ô¤ï¤Ê¤¤¡£

ʸ»ú½¸¹çcs¤òÁªÂò¤¹¤ëÀµ¤·¤¤Ãͤϡ¢ (- (make-char cs) 128)¤Ç¤¢¤ë¡£ nonascii-insert-offset¤ÎÃͤ¬0¤Ç¤¢¤ë¤È¡¢ ¼ÂºÝ¤ÎÊÑ´¹¤Ë¤Ï0¤Ç¤Ï¤Ê¤¯Latin 1ʸ»ú½¸¹ç¤ËÂФ¹¤ëÃͤò»È¤¦¡£

Variable: nonascii-translation-table

¤³¤ÎÊÑ¿ô¤Ï¡¢nonascii-insert-offset¤Î¤è¤ê°ìÈÌŪ¤ÊÂåÂØ¤òÄ󶡤¹¤ë¡£ 128¤«¤é255¤ÎÈϰϤγƥ³¡¼¥É¤ò¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ËÊÑ´¹¤¹¤ëÊýË¡¤ò ÆÈΩ¤·¤Æ»ØÄꤹ¤ë¤¿¤á¤Ë»È¤¨¤ë¡£ ¤½¤ÎÃͤϥ٥¯¥È¥ë¤«nil¤Ç¤¢¤ë¤³¤È¡£ ¤³¤ì¤¬nil°Ê³°¤Ç¤¢¤ë¤È¡¢nonascii-insert-offset¤ËÍ¥À褹¤ë¡£

Function: string-make-unibyte string

¤³¤Î´Ø¿ô¤Ï¡¢string¤Î¥Æ¥­¥¹¥È¤¬¤¹¤Ç¤Ë¥æ¥Ë¥Ð¥¤¥È¤Ç¤Ê¤±¤ì¤Ð ¥æ¥Ë¥Ð¥¤¥Èɽ¸½¤ËÊÑ´¹¤·¤Æ¤«¤é·ë²Ì¤òÊÖ¤¹¡£ string¤¬¥æ¥Ë¥Ð¥¤¥È¤Ç¤¢¤ì¤Ð̵Êѹ¹¤ÇÊÖ¤¹¡£

Function: string-make-multibyte string

¤³¤Î´Ø¿ô¤Ï¡¢string¤Î¥Æ¥­¥¹¥È¤¬¤¹¤Ç¤Ë¥Þ¥ë¥Á¥Ð¥¤¥È¤Ç¤Ê¤±¤ì¤Ð ¥Þ¥ë¥Á¥Ð¥¤¥Èɽ¸½¤ËÊÑ´¹¤·¤Æ¤«¤é·ë²Ì¤òÊÖ¤¹¡£ string¤¬¥Þ¥ë¥Á¥Ð¥¤¥È¤Ç¤¢¤ì¤Ð̵Êѹ¹¤ÇÊÖ¤¹¡£