ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

バッチファイルでファイル一覧の文字列を作成する

あるフォルダに含まれるファイルを列挙した文字列を作成するバッチファイル

@echo off
@setlocal enabledelayedexpansion
set FILE_LIST=
for %%f in (.\test\*.txt) do (
    set FILE_LIST=!FILE_LIST!%%f 
)
echo %FILE_LIST%

set FILE_LIST=!FILE_LIST!%%fの最後には1文字スペースが入っている。
例えば、フォルダ test に aaa.txt, bbb.txt, ccc.png, ddd.txt が入っていたときに実行すると結果は次のようになる

.\test\aaa.txt .\test\bbb.txt .\test\ddd.txt

最初、文字列を追加するところを、

set FILE_LIST=%FILE_LIST%%%f

と書いていたのだが、これだと最後に実行されたものしか設定されない。これに対処するには、遅延環境変数を使わなければならない。
qiita.com
これを知らなくてけっこう苦労した。
というか、最初からPython使って書けばよかった。

デバッグ中にドラッグアンドドロップできない

ツールを開発中に、デバッグ実行し、そのウィンドウにファイルをドラッグアンドドロップしようとしたら出来なかった。
調べてみたら、Visual Studioを管理者権限で実行していると、通常の権限で起動されているエクスプローラーからファイルをドラッグアンドドロップ出来ないということらしい。
とりあえず、普通のユーザー権限でVisual Studioを起動して試してみたら、普通にドラッグアンドドロップできた。
これは知らないとはまりそう。

Internet Explorer サポート終了

www.itmedia.co.jp
Internet Explorer 11のサポートが終了した。
マイクロソフトのブラウザはEdgeとなったので、Internet Explorerはこれで終わり。
Google Chrome が出てからは、もうほとんど使うことのなかったIE
お疲れさまでした。

MacBook で Python

ちょっとCSVファイルを使った処理をしようと思って、Pythonを使おうとMacBookでターミナルを立ち上げて、Pythonを実行しようとした。
しかし、command not found になってしまった。
調べてみたら、OSのバージョンアップでPython2が削除されていたらしい。
なので、コマンドをPython3にしたら実行できた。
そういえば、ここのところ、ターミナルでPythonを実行することはしていなかったなと。
Visual Studio Codeではもちろん、普通に実行できた。

Visual Studio Code で Python が実行できない

Visual Studio CodePython のコードを書き、実行しようとしたら、

command 'python.execInTerminal' not found

というエラーが出て実行出来なかった。
結局、いろいろ調べて、最終的には Visual Studio Code をアンインストール、再インストールして動くようになった。どこか設定ファイルが壊れてしまっていたのかもしれない。
ただ、Windowsのコントロールパネルからアンインストールしただけでは、設定ファイルが残っているので、再インストールしても変わらなかった。
完全にアンインストールするには、

C:\Users\(ユーザー名)\AppData\Roaming\Code
C:\Users\(ユーザー名)\.vscode

に設定が残っているので、削除するなり、フォルダ名を変更する。
設定は消えてしまうが、以前「設定の同期」をオンにして、GitHubアカウントを使って同期できるようにしていたので、復旧させることが出来た。
「設定の同期」をオンにすると、「マージまたは置換」というダイアログが出るので、「ローカルを置換」を選んでサーバー側の設定を取り込んだ。

結局、原因はわからずじまいだったので、ちょっともやもやする感はある。

対数

logmi.jp
対数の考え方をわかりやすく解説してくれているページ。
ふわっとした知識しか無かったけど、なるほど、こう使うことが出来るのかと理解することができた。
学校教育でもこういった話を授業でも話せば、もっと数学嫌いな子を無くせるのにと思った。