[mew-dist 20151] environment variables for locale

Tatsuya Kinoshita tats at example.com
2002年 1月 24日 (木) 08:59:41 JST


Mew 1.95b49でGnuPGのために設けられた(setenv "LANGUAGE" "en")という
部分について。

もし支障がなければ、今後、関数mew-start-process-lang,
mew-call-process-langを別のコマンドでも使うことを考慮して、次の
ようにしてはどうでしょうか。

(1) "en"でなく、デフォルトのlocaleである"C"を使う。

コマンドによっては、"en" localeが使える状態になっていない場合、
警告メッセージが表示されることがあります。

(2) LC_ALLとLANGを設定する。

LANGUAGEだけだと日付の書式(LC_TIME)には効果がありません。また、
LANGUAGEはGNU独自の仕様なので対応していない場合もあります。
LC_*が参照されずにLANGの方が有効になる実装もあります。

いかがでしょうか。パッチを添付しておきます。

-- 
木下達也
-------------- next part --------------

 This patch is written by Tatsuya Kinoshita.  Copyright is disclaimed.

diff -ur mew.orig/mew-func.el mew/mew-func.el
--- mew.orig/mew-func.el	Mon Jan 21 21:51:12 2002
+++ mew/mew-func.el	Thu Jan 24 08:40:59 2002
@@ -917,12 +917,16 @@
 
 (defun mew-start-process-lang (name buffer program &rest program-args)
   (let ((process-environment (copy-sequence process-environment)))
-    (setenv "LANGUAGE" "en")
+    (setenv "LANGUAGE" "C")
+    (setenv "LC_ALL" "C")
+    (setenv "LANG" "C")
     (apply (function start-process) name buffer program program-args)))
 
 (defun mew-call-process-lang (prog &optional infile buffer display &rest args)
   (let ((process-environment (copy-sequence process-environment)))
-    (setenv "LANGUAGE" "en")
+    (setenv "LANGUAGE" "C")
+    (setenv "LC_ALL" "C")
+    (setenv "LANG" "C")
     (apply (function call-process) prog infile buffer display args)))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


Mew-dist メーリングリストの案内