今日やること
前回、画面描写がきちんとされない現象にぶつかりました。
フルスクリーンモードがきちんと動かないなどから環境の問題の可能性があるため、RaspberryでもFuzeBasicの環境を入れて同じコードを試したかったのですが、手元に新しいSDカードがなくて諦めました。
描写問題に真面目に対応するために Games Worksheet
を進めても良かったのですが、ここで一旦寄り道して環境整備をすすめます。
そもそも前回プログラムが長くなりすぎて、FuzeBasicのエディタ(FuzeEditor)だと辛くなりつつあったんですよね。
なので、ホストのMac側でソースコードを編集して、Ubuntuで実行する流れにしてみます。
fuze basicの実行がコマンドラインからできればよかったのですが、できなさそう😭
👆FuzeEditorを介さずに実行できました👍🏻
- Macでファイル編集して
- FuzeBasicでソースファイルをロードして実行
のサイクルが可能か試してみました。
-> 今回の整備の結果、こうなりました
- VSCでファイル編集
- Ubuntu側でコマンドラインから直接実行
快適になりました🎉
アンカー
前の記事)FUZE BASICを触ってみる3(ゲームの入り口)
まずは、Vagrantのファイル共有について
と言ってもやることは簡単。vagrantfileを書き換えました。ホストの toybox
を /home/vagrant/Desktop/fuze-basic/toybox
に割当ました。
VisualSourceCodeでソースを編集して、Ubuntuで実行してみる
よっしゃと思ったのもつかの間。VSCで開こうとすると「このファイルはバイナリかサポートされてないテキストエンコード…云々」。
え?と思ってMIMEタイプを調べてみるとなんと charset=binary
$ file --mime toybox/1.fuze
toybox/1.fuze: text/plain; charset=binary
たしかに強引に開くとファイルの最後になんかある。ソースコードの部分は読めているので文字とバイト列が混在しているからバイナリと判定したと思われます。
まぁでも思考停止して、まずは普通にVSCでコード書いて動かしてみて動かなかったら謎の4文字をバイナリで追記すればじゃん、と思ったのですが結論として実行自体は問題なかったです。
確認したところ、FuzeEditorで保存するときに追加されるみたいでした。
気持ち悪いのでエディタ使わないで直接実行する方法を探してみた
「fuze commandline execute」とかで検索してみてもぜんぜん見つからないんですよね…ということはできないのかな。エディタ使いたくないなぁ…思ってコマンドがちゃがちゃ試していたら…
vagrant@vagrant:~/Desktop/fuze-basic/toybox$ fuze --help
?
Usage: fuze [-f] [-d] [-H] [-m mode] [-x xSize] [-y ySize] [-z bpp] [-l] [-D] <filename>
vagrant@vagrant:~/Desktop/fuze-bas
--help
って解釈できなかったんだな…って、おぉぉ?… filename
がある ❗️❗️❗️
おもむろに実行すると…
おお、実行できた!そして、謎のバイト列もつかない!
今後はこれで開発することにします🤓
所感
- コマンドラインから直接実行できるので、VSCでソース修正 -> Ubuntuで実行のサイクルが確立できた!
- 気持ち悪いバイト列ともオサラバ🙋🏻♂️
-
-x, -y, -mode
以外のオプションがなんなのか。調べたけど見つからない。キニシナイ! - VSCのシンタックスハイライトが欲しい。。。