ほのぼのとまったりアプリ開発日誌

ほのぼのがまったりとデスクトップアプリを作る開発日誌

VSCode向け拡張機能を更新しました。

年が明けて寒中見舞いの時期になりました。とっても寒い風が来て凍えないように暖房器具や毛布に頑張ってもらっています。市販の餃子を水餃子にして、美味しく暖まっています。

toolset-hsp3

バージョン0.6.2を公開しました。

このバージョンから、動作環境にWSL2が追加されました。これでLinux環境でも複数のOpenHSP環境を見つけて、VSCodeのタスク機能から簡単にhspcmpコマンド呼び出しを行えるようになります。

不具合対策も並行して行っています。コマンドインジェクション対策の他、ToolsetProviderのエラーに巻き込まれづらくなりました。エラーログの取り方も変更しています。

language-hsp3

バージョン1.1.1を公開しました。

バージョン1.1.0には、toolset-hsp3がインストールされていないとHSP Run programなどで実行に失敗する問題があり、これを修正しました。大変ご迷惑をおかけして申し訳ございません。

不具合をご報告していただき、誠にありがとうございました。

language-hsp3 v1.1から、toolset-hsp3とhspcの3つで連携をとり、自動で複数のHSP3開発環境を認識、使用者が選択できるようになり、選択された環境でhspcコマンドを実行できるようになりました。

language-hsp3.executorに不具合があるため、このような形で実装しました。

将来、language-hsp3.executorに含まれる環境切り替え機能は廃止予定です。大変恐縮ですが、何卒ご容赦願います。

機能の移行先としてVSCode本体に含まれるタスク機能をご使用いただきたく存じます。

指先が冷える寒い日は、生姜湯など温かい飲み物で体を温めます。

まだまだ流行風邪が続いています。帰宅後の手洗いうがいはしっかりと行って、風邪にかからず健やかに暮らせるよう心がけましょう。

vscode-language-hsp3 トラブルシューティング

vscode-language-hsp3 v1.1.0 の "# Execution command failed." トラブルシューティング

vscode-language-hsp3 v1.1.0 でRun HSP programを実行すると、出力ペインに"# Execution command failed."と表示される場合の解決方法を解説します。

ご不便をおかけして申し訳ありません。この記事が少しでもお役に立てれば幸いです。

スクリーンショットの出力ペインのメッセージは、外部プロセス(コンパイルツールなど)を実行できなかったことを示しています。

Run HSP program コマンドを実行後、出力ペインに"# Execution command failed."が表示されている様子。

考えられる原因は、コンパイルツールのファイルパス指定先を間違えているか、Executor機能を有効にして、その環境を設定していない、または、各種ツールのファイルパス指定先を間違えている恐れがあります。

一度、Executor機能をユーザー、ワークスペースの両方で無効化して、コンパイルツールのファイルパスが間違えていないかご確認ください。

確認する場所は下記の通りです。

  • VSCodeのユーザー設定、ワークスペース設定の両方で
    • "language-hsp3.compiler"のファイルパスに間違いが無いか確認する
    • "language-hsp3.executor.enable"を無効(false)に設定する

VSCodeの設定画面から"language-hsp3.compiler"などでファイルパスを設定する際に、パスに空白文字が含まれていても"文字で囲まないでください。("ne ko.exe"ne ko.exeに置き換え)

jsonファイルから設定する場合、\文字はエスケープしてください。(\\\に置き換え)

エクスプローラーでファイルパスを取得したいファイルを選択後、”パスのコピー”でクリップボードにパスをコピーできますが、"文字で囲まれているのに留意してください。

Executor機能をご使用になるには、"language-hsp3.executor.paths"に各種設定をして、最後にステータスバーから選択してからご使用ください。

ご使用中("language-hsp3.executor.enable"がtrue)に実行エラーが生じる場合、"language-hsp3.executor.paths"の環境設定とissue #16 をご確認ください。

github.com

hspc v3.4.0 をHSP3プログラミングコンテスト2022に応募、公開されました。

鮭が美味しい季節になりました。焼き鮭やムニエルで美味しくいただきました。

スーパーのプライベートブランドの冷凍餃子も水餃子にして食べています。コンソメの素を入れて少し煮詰めると、ご飯がいっぱい食べたくなる味になります。

hspc v3.4.0

hspc - SoupSeed

今年も無事応募することができました。今回の更新はマイナーアップデートになります。

  • HSP3開発環境の変更に対応しました。
  • --strmapオプションを使用すると、--compathオプションが機能しない不具合を修正しました。
  • --strmapオプション使用時にコンパイルエラーが生じた場合にhsc_compの終了コードを返していない不具合を修正しました。
  • lintコマンドの--sethspcoptオプションが機能していない不具合を修正しました。
  • helpコマンドの不具合を修正しました。

主に不具合の修正と、HSP3_ROOT環境変数、--hsp3rootオプションによるHSP3開発環境の切り替えに対応しました。

開発環境の切り替え機能

hsp36に置かれたhspc.exeが、HSP3_ROOTに設定されたhsp37betaを読み込んでいるのを--versionで確認している様子。

以前のhspcは、hspc.exeが置かれたディレクトリをHSP3開発環境として使用していました。今回から新たに任意(環境依存文字を含まない)のディレクトリを開発環境として使用できるようになりました。

PowerShellの場合、`$env:HSP3_ROOT = "C:\hsp37beta"`の後にhspcを呼べばその環境を使用する事ができます。

HSP3_ROOT環境変数、--hsp3rootオプションでディレクトリを絶対パスで指定することで、その環境を使用します。HSP3_ROOT環境変数には、Path環境変数のように、;文字区切りで複数のパスを指定することができます。その場合先頭から順に試して、hspcmp.dllの読み込みに成功した環境を使用します。

読み込みに失敗した場合、従来通りhspc.exe直下のディレクトリを使用します。

HSP3_ROOT環境変数の読み込みを無効化したい場合、HSPC_DISABLE_ENV_HSP3ROOT環境変数に"true"文字列を設定してください。

toolset-hsp3

github.com

dev1とdev2ブランチで実験段階のバージョンをリポジトリで公開しています。

dev1は、globと設定構成、公開メソッド、タスクランナーのブラインド化を試しました。tasks.jsonの構成を読み込むとenvの上書きが機能しない症状で妥協案を検討中。

dev2でwebpackをお試し、なぜかglobが機能せず挫折中です・・・

提案や修正などございましたら、イシューやプルリクエストを頂けるとありがたいです。

まだ残暑が残っています。水分不足に気をつけて日々を過ごします。喉が渇かないように気をつけましょう。