web-dev-qa-db-ja.com

Unicode以外のWineアプリケーションのコードページ/ロケール(Linuxシステムロケールとは異なる)を強制するにはどうすればよいですか?

システムに英語のロケールを使用することを好みますが、Unicodeに対応していない古いロシア語とチェコ語のアプリケーションを使用する必要があります。 Windowsでは、このようなアプリケーションのロケールを別のコントロールパネルの場所に設定できました。 Linux/Wineでこれを構成するにはどうすればよいですか?

4
Ivan

アイデアは、このアプリケーションに対してのみLANGを設定することです。

コマンドラインからアプリケーションを起動する場合は、〜/ .bashrcにalias yourapp="export LANG=ru_RU.utf8 /usr/bin/yourapp"のように記述します。

GUIボタンを使用してアプリケーションを起動する場合は、対応するデスクトップファイルを編集できます。つまり、テキストエディタで〜/ .gnome2/panel2.d/default/launchers/yourapp.desktopを開き、行Exec=/usr/bin/yourapp %Fを次のように変更します。 Exec=sh -c "LANG=ru_RU.utf8 /usr/bin/foo %F"

2
fschmitt

LANG変数を設定してみましたか?チェコ語の設定はわかりません。ロシア語はru_RU.utf8少なくともそれが私が使うものです。

現在のロケール設定を確認してください。

% locale
LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=

ロケールが正しくインストールされている場合、LANGを設定すると他のすべての変数が設定されます。ただし、これがWINEと連携して機能することを保証することはできません。

0
polemon