前提条件
PowerShellから下のようにgit diffを実行する。
PS C:\git\checkstyle> Get-ChildItem -Recurse | Where-Object { $_.Name -like "messages_ja.properties" } | ForEach-Object { $_.FullName.substring(29) } | ForEach-Object { Write-Output "`n`n$_"; git diff checkstyle-4.4 master -- $_ }
問題
日本語が<E3>
とか<82>
とか<83>
とかを含む表示に化けてしまう。
src\main\resources\com\puppycrawl\tools\checkstyle\messages_ja.properties diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties index 0b9999401..10b36a18c 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties @@ -14,5 +14,5 @@ PackageObjectFactory.ambiguousModuleNameExceptionMessage=<E8><A8><AD><E5><AE><9A><E3><81><AB><E3><81> <AF> ''{0}''<E3><81><8C> PackageObjectFactory.unableToInstantiateExceptionMessage=''{0}'' <E3><82><AF><E3><83><A9><E3><82><B9><E3><82><92><E3>
対策
以下を実行する。
Set-Item env:LANG -Value ja_JP.UTF-8
以下のように、表示が文字化けしなくなる。
src\main\resources\com\puppycrawl\tools\checkstyle\messages_ja.properties diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties index 0b9999401..10b36a18c 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/messages_ja.properties @@ -14,5 +14,5 @@ PackageObjectFactory.ambiguousModuleNameExceptionMessage=設定には ''{0}''が PackageObjectFactory.unableToInstantiateExceptionMessage=''{0}'' クラスをインスタンス化\