読者です 読者をやめる 読者になる 読者になる

😃 mattintosh note 📝

Hello Raspberry Pi!

シェルスクリプトから Wine にレジストリを登録する

Mac OS 環境でシェルスクリプトから Wine 環境に日本語を含むレジストリデータを登録する。レジストリデータに日本語が含まれる場合、文字コードを CP932 にしておかないとエラーになる。そこで、標準出力したものを iconv で CP932 に変換して wine regedit - で読み込ませる。

#!/bin/bash

export LANG=ja_JP.UTF-8

cat <<'__REGEDIT4__' | iconv -f UTF-8 -t CP932 | wine regedit -
[HKEY_CURRENT_USER\Software\Wine\Drivers]
"Graphics"="mac,x11"
"Ime"="osxime,mac,x11"

[HKEY_CURRENT_USER\Software\Wine\Fonts\Replacements]
"MS Mincho"="MS Gothic"
"MS PMincho"="MS PGothic"
"MS Serif"="MS Gothic"
"MS 明朝"="MS Gothic"
"MS P明朝"="MS PGothic"
__REGEDIT4__

printf や echo でもシングルクオートを使わない場合、バックスラッシュは \\ にしておく。日本語が含まれない場合は iconv を通さずにそのまま送る。