Windowsに令和のレジストリィを追加するPowerShell

昨日、次の元号の令和が公開されたこともあってか、 Windows 10 April 2018 Updateで追加された和暦のレジストリィの話 - 木俣ロバート久の覚書 - Hatena Blog へのアクセスが増えているようですので、令和のレジストリィを追加するPowerShellスクリプトを書いてみました

https://gist.github.com/rh-KIMATA/896b67928942566a9569bfa0c2ab0e18

# Get
Get-Item -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras';

# Add
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras' -Name '2019 05 01' -Value '令和_令_Reiwa_R';

# Edit
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras' -Name '2019 05 01' -Value '令和_令_Reiwa_R';

# Remove
Remove-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras' -Name '2019 05 01';


# Display
[CultureInfo] $culture = [CultureInfo]::New("ja-JP");
[Globalization.JapaneseCalendar] $culture.DateTimeFormat.Calendar = [System.Globalization.JapaneseCalendar]::new();
([Datetime]'2019/5/1').ToString('ggy年', $culture);

なお、2019-05-01までにWindows Updateで同等のレジストリィの更新が配布されると思いますので、 事前の試験をするなどの理由がない限り、不要な問題を起こさないようこのレジストリィ追加はお勧めしません

また、テスト等でレジストリィを追加した場合も Windows Updateの前には今回追加した値を削除して状態を元に戻しておくことをお勧めします


ちなみに、本日時点 (システム時刻も同じ) の自分のWindows 10端末では令和のレジストリィを追加したうえで以降の日付を和暦に変換すると令和の元号で表示がなされますが、厳密には現時点では改元はなされておりませんので、以降の日付も平成表記になるのが正しい動きになります