From 18 Jan, 2021 0:00 UTC: All services will be temporary unavailable for maintenance

[Freewnn-users 324] romkan ファンクションの仕方 (Using romkan functions)

Back to archive index
Alex Taylor alex****@altsa*****
2019年 3月 25日 (月) 03:02:12 JST


皆さん、こんにちは。

(可笑しい日本語のこと、大変失礼します。)

私は今、Wnn の romkan 
というファンクションを使ってみます。だいたいローマ字からひらがなに変換できます。しかし、他の入力モード(全角、半角のカタカナなど)を使うことがわかりません。 f-_-;

下記のコードで変換のことをしています。
(フル・ソース:http://altsan.org/programming/test_romkan.tar.gz)

========================================================================
     rc = romkan_init( rk_file, 0x08, 0, *next_char, *byte_count );
     // ...
     i = 0;
     do {
         ltr = romkan_getc();
         if ( ltr && is_HON( ltr )) {
             if ( i > (len - 1)) {
                 len += 16;
                 output_str = (char *) realloc( output_str, len );
             }
             output_str[i++] = (char)(ltr & 0xFF);
             if ( verbose ) printf("value: %X\n", ltr );
         }

     } while (( verbose || ltr ) && ( ltr != LTREOF ));

     printf("Converted %d bytes: %s\n", i, output_str );
========================================================================

例えば input_str というのは "Watashinonamaehanakanodesu." の場合、 結果は

Converted 28 bytes: わたしのなまえはなかのです。

ということですが、何方様がどうやってカタカナに変換できるのをわかりますか。

romkan の設定ファイル (rk/mode など)にインクルードされた 2A_CTRL 
というファイルには

(unless esc)'\x81'	(switch katakana)
(unless esc)'\x82'	(switch zenkaku)
(unless esc)'\x83'	(switch romkan)

が入っています。そのように '\x81' (またはオクタルで '\201')を input_str 
に入れるとカタカナモードに変わると思いましたが、そのことではなさそうです。 ;_;

例えば上記の string に名を「テーラ」にしたいから、
"Watashinonamaeha\201te-ra-\201desu."
を使ってみましたが、まだ全て平仮名になりました。
Converted 28 bytes: わたしのなまえはてーらーです。

しかし、 '\x83' (オクタル '\203')を入れると、ローマ字仮名変換が 2A_CTRL 
に書いてあること通りオフになります。
"Watashinonamaeha\203te-ra-\203desu." -->
Converted 28 bytes: わたしのなまえはte-ra-です。

慌てています。(-_-)

何方が、カタカナに入力できることをしっていますか?

どうもありがとうございます。

-- 
Alex Taylor <alex****@altsa*****>
http://www.altsan.org



freewnn-users メーリングリストの案内
Back to archive index