WindowsのPhpStormのTerminalでGit Bashを設定して、利用していたのですが、Terminal内のSymfonyのコマンドの実行結果で色付けして表示されるべき部分がANSIのカラーコードのまま表示されてしまうという問題に遭遇したので、解決法のメモです。
元の設定
Settings > Tools > Terminal内のShell pathのところに単純にGit Bashのパス"C:\Program Files\Git\bin\sh.exe"
と入力していました。
この設定でターミナルからSymfonyのコマンドを実行すると、出力結果は下記のようになり、色付けが正しくされていませんでした。
$ symfony
?[30;43mWARNING?[39;49m A new version is available (?[32m4.25.4?[39m, currently running ?[32mv4.25.2?[39m).
?[32mConsider upgrading soon using:?[39m symfony self:update
?[32mSymfony CLI?[39m version ?[33mv4.25.2?[39m (c) 2017-2021 Symfony SAS
Symfony CLI helps developers manage projects, from local code to remote infrastructure
解決法
色々格闘していたろころ、下記の記事を見つけてようやく解決しました。
https://stackoverflow.com/questions/39172301/ansi-color-codes-in-phpstorm-console
- ANSICONというプログラムをダウンロードして、適当な場所に配置。 https://github.com/adoxa/ansicon/releases
- Settings > Tools > Terminal内のShell pathのところに
"C:\program1\ansi189-bin\x64\ansicon.exe" -p "C:\Program Files\Git\bin\sh.exe"
と入力。(C:\program1\ansi189-bin\x64\ansicon.exe
の部分は各自ANSICONのパスを設定)。
これだけです!Symfonyの出力結果は無事下記のように正しく色付けされました!
余談
筆者のPhpStorm上でのTerminal設定の変遷です。
- cmd: デフォルト。さすがに使いにくい。
- powershell: 慣れていれば問題ないですが、やはりbashが使いたくなる。
- Git Bash: やっぱり使いやすい!
「windows bash」で検索するとWSL上のUbuntuを使えばbashを使えるという情報ばかり出てきますが、Git for Windowsをインストールすれば付属してくるGit Bashも便利だと思います。
コメント