web-dev-qa-db-ja.com

Mac OSXでのlpstatとローカリゼーション

ローカライズされたMacOS X(バージョン10.6)で「lpstat」ユーティリティに英語で出力メッセージを表示させるにはどうすればよいですか?

例:

lpstat -v

オランダ語の番組:

apparaat voor Samsung_SCX_4300_Series: usb://.....

Regexp( "device for"プレフィックス)を使用してアプリケーションによる出力を解析できるようにするには、メッセージを英語で表示するように強制する必要があります。

device for Samsung_SCX_4300_Series: usb://

「LANG = en_US.UTF-8」プレフィックス、「LC_MESSAGES = C」プレフィックスなどを付けて実行してみましたが、Macでは効果がないようです。英語は、2番目の位置のシステム環境設定の下にリストされています。

1
dimitri

Appleは、出荷されているバージョン [〜#〜] cups [〜#〜] のロケール検出にいくつかの変更を加えました。

アップルが修正したバージョンのcups/language.c(具体的には 10.6.8のlanguage.c )、SOFTWARE(任意の値、空の文字列も含む)も設定している限り、LANGを好みの言語に設定することで言語をオーバーライドできるはずであることがわかりました。

ソフトウェアと言語の両方が設定されていない場合は、デフォルトで、システム環境設定

次のシェルコマンドは、デフォルト/英語のメッセージを生成するはずです。

SOFTWARE= LANG=C lpstat -v

シェルを介してlpstatを呼び出さない場合は、それに応じて環境を調整します(たとえば、system(3)などを介さない場合)。

3
Chris Johnsen