OpenCore prev-kbd:langの導出方法 (ロシア語→日本語)
おひさしぶりです。
OpenCoreにおけるconfig.plistの[ prev-kbd:lang] の記述内容について、調査したことを簡単に整理します。
Configuration.pdfによれば、ascii文字列で "lang-COUNTRY:keyboad" のフォーマットが指定されています。
"keyboard"に指定する内容は、
> https://raw.githubusercontent.com/acidanthera/OpenCorePkg/master/Utilities/AppleKeyboardLayouts/AppleKeyboardLayouts.txt
に記載されている数字になります。
Sample.plistは、ru-RU:252 を前提としており、
ASCII文字列をBase64エンコードした、
cnUtUlU6MjUy
となっており、
PlistEDPlusやProperTreeなどのPropertyListエディタの表示はASCII文字をHex変換した、
72752D52553A323532
となっています。
cliコマンドでも、以下のようにすることで取得できます。
% echo "ru-RU:252" | tr -d '\n'| base64
cnUtUnU6MjUy
% echo -n "ru-RU:252" |xxd -p -u
72752D52553A323532
日本語(US配列)の場合は、
% echo ja-JP:0 |tr -d '\n'|base64
amEtSlA6MA==
% echo -n "ja-JP:0" |xxd -p -u
6A612D4A503A3
となります。
以下の記事では、
> https://bootmacos.com/archives/8895
656E2D55533A30 を指定するように記載されていますが、この値は以下のコマンドの出力結果になります。
% echo -n "en-US:0" |xxd -p -u
656E2D55533A30