03.02.12-04.11.07

METALで日本語を利用する

このページについて

METAL バージョン1.7.3を使用しています。
METALはデフォルト状態では日本語をうまく扱えません。しかしMETALで日本語のプログラムを作るのが全く不可能か?というとそうではなく、手順を知っていればあっさり解決できる場合が多いです。これをTipsとしてまとめてみました。

外部エディタを使おう

Metalにはソースコードを編集するためのエディタが用意されています。FileメニューのNewを選ぶとuntitledというウインドウが出てくるのがそれです。このウインドウにプログラムを書き、Toolbarウインドウの⇨を押して実行。これがMetalでプログラミングをするときの基本的な流れになります。
しかし、Metalのエディタ上で日本語を使うといくつかの問題が生じます。

インラインではありませんが日本語の入力は可能です。しかし僕の環境ではいくら操作をしてもMetalでことえりが反応してくれない時があります。

保存したソースをMetalで開くと日本語部分が文字化けします。


プログラム中に日本語を使う場合は一旦 他のテキストエディタでプログラムを編集してから、Metalの File -> Open で開くことになります。僕は外部エディタにmi (http://www.mimikaki.net/) を使っています。

mi用Metalモード(作りかけ)

mimetalmode.lzh

文字表示−printではなくtextを

アルファベットを表示

    cls
    print "Hello Metal"

実行すると Hello Metal と表示されます。

    cls
    text 0,10,"Hello Metal"

実行すると Hello Metal と表示されます。

日本語を表示

    cls
    print "こんにちは Metal"

実行すると日本語部分が文字化けして表示されます。

    cls
    textfont "Osaka"
    text 0,10,"こんにちは Metal"

実行すると こんにちは Metal と表示されます。

print命令と言えばBASICでは馴染み深い命令です。しかしMETALの場合、print命令で表示される文字フォントはMonacoに固定されています。これは英文フォントなので日本語の表示は不可能です。
text命令も文字を表示する命令です。文字列を表示する座標を指定することができます。text命令の前にtextfont命令を置くことで、表示フォントを指定することができます。これによって日本語を表示することが可能です。ここでは Osaka を指定しています。

文字判定−ShiftJISの扱い方


文字入力

japanese_sjis.txt
ShiftJISコードをINPUT文で直接入力することで漢字を入力するサンプルです。例えば93FA、967B、8CEAと順に入力すれば"日本語"とconsoleに表示されます。このままではとても日本語入力には使えないので、例えば家庭用ゲームでの名前入力のようなインターフェースを設ける必要があるでしょう。