Super Card を愛するすべての人に、このプログラムを捧げます。
DSLua を愛するすべての人に、このプログラムを捧げます。
自分の手でプログラミングする事を愉しむすべての人に、
このプログラムを捧げます。
これは、単漢字変換で日本語の一行入力を行うDSLuaプログラムです。
内容:
putfont.lua (scfont.fon も)
※メモリカートリッジなどのハードウェア拡張は必要ありません。
漢字を表示するモジュール をインストールします。
microSDカードの putfont.lua
と同じディレクトリに以下のファイルを置きます。
kinput.lua、
kbd_x64.raw、
kbd_x64.pal、
tankanji.dic
サンプルプログラム kinput_sample.lua
をDSLuaのファイラから指定して実行します。
なお kinput_sample.lua を kinput.lua と異なる場所に置いた場合は、
dofile('kinput.lua' )
の引数 を変更して下さい(フルパスにするなど)。
DSの画面に次のように表示されればOKです。
下画面のEnterをタッチペンで押すと終了します。
呼び出し方:
dofile('kinput.lua')
…
string1 = kinput(BGBot8Bit, palnum, string0)
引数:
BG8Bit |
8-Bit
Backgrounds のオブジェクト。 Screen.Load8BitBG() で生成しておき、Screen.Initialize() によって下画面として 初期化しておく事。 本モジュールでは下画面全域を使用し、終了時にクリアされる。 |
palnum | パレット番号
(Sprites and Backgrounds
で “palette number” と説明されている値)。 本モジュールはキーボードの表示にスプライトを使用しており、 スプライトの処理で使用するパレット番号を palnum で指定する。 palnum の指定値によって本モジュールの機能が変化する事は無い。 呼び出し元プログラムで他にスプライトを使用していなければ、palnum は 0 でよい。 |
string0 | 文字列入力部に表示する初期(デフォルト)文字列(UTF-8)。 不要であれば '' (空文字列) を指定すればよい。 |
返り値:
string1 | 入力された文字列(UTF-8)。 |
画面構成を以下に示します。
通常キー・特殊キー・変換候補 をタッチペンで押して文字を入力します。 入力された文字列は「文字列入力部」に表示されます。
特殊キーは、有効(操作可能)なキーは明るい黄色に、 無効なキーはグレーになります。
「美しい」と入力します。
全角モード ウ ツ ク シ イ の順に押します。
変換/次候補 を押します。
候補は、入力に一致する読みが長い漢字から並びます。
この例では、「うつく」と読む字 →「うつ」と読む字
→「う」と読む字、の順に並んでいます。
美 を押します。
候補が表示されている状態で更に 変換/次候補 を押すと次の候補が出ます。 BackSpace を押すと前の候補に戻ります。
もし候補が全く表示されない場合は、tankanji.dic が kinput.lua と同じディレクトリに置かれているか確認して下さい。
なお、読みに対応する候補が一つの場合は、 候補は表示されずにすぐに確定されます。
「⊥」と入力します。
全角モード 2 2 A 5 と押します。
変換/次候補 を押します。
16進4桁のUnicodeは対応する全角文字に変換されます。
半角42文字、全角21文字まで入力可能です。
単漢字変換辞書(tankanji.dic) には、 (1)常用漢字、(2)人名用漢字、(3)非漢字 の読みを収録しています。
(1)、(2) は、
「大修館書店
漢字文化資料館」内「漢字文化アーカイブ」に掲載されているテキストデータを使わせて頂きました。
なお1981年答申(初版)分であり、2010年改訂は反映していません。_o_
(3)については、字の選定は私の独断と偏見です。(^_^;)
また、すべての非漢字を収録しているわけでもありません。
読みで変換出来ない文字は、ご面倒でもUnicodeで入力して下さい。
PC上で動く tankanji.dic ↔ テキストファイル相互変換Perlスクリプト を御使用下さい。
070417版 | 初版 |
大修館書店 漢字文化資料館 ( 2014年時点 )