Re: LANG, LC_ALL... in fdo and wm.jl



Patch: (lang-order/(s/boundp/variable-customized-p)

By the way: find-lang-string does not work on my system (LANG =
de_DE.UTF8 -> should result in de, but menu-entries are en, I know I can
set it manually, but out-of-the-box would be better)

diff --git a/lisp/sawfish/wm.jl b/lisp/sawfish/wm.jl
index b549a54..f52abc9 100644
--- a/lisp/sawfish/wm.jl
+++ b/lisp/sawfish/wm.jl
@@ -40,8 +40,8 @@
 ;; load i18n support when necessary
 
 (unless batch-mode
-  (let ((lang (or (getenv "LANGUAGE") (getenv "LC_ALL")
-		  (getenv "LC_MESSAGES") (getenv "LANG")))
+  (let ((lang (or (getenv "LANG") (getenv "LANGUAGE")
+		  (getenv "LC_MESSAGES") (getenv "LC_ALL")))
 	(disable-nls (get-command-line-option "--disable-nls")))
 
     (when (and lang (not disable-nls) (not (string= lang "C")))
diff --git a/lisp/sawfish/wm/ext/fdo-menu.jl
b/lisp/sawfish/wm/ext/fdo-menu.jl
index 67c3187..74f1d68 100644
--- a/lisp/sawfish/wm/ext/fdo-menu.jl
+++ b/lisp/sawfish/wm/ext/fdo-menu.jl
@@ -116,33 +116,35 @@ Make sure the mk-saw-menu.jl is in your load path
 		       (flatten (cdr input))))))
 
     (defun find-lang-string ()
-      (if (getenv "LANG")
-	  (if (> (length (getenv "LANG")) 2)
-	      (substring (getenv "LANG") 0 5)
-	    (substring (getenv "LANG") 0 2))
-	'()))
+      (unless batch-mode
+       (let ((language (or (getenv "LANG") (getenv "LANGUAGE")
+                           (getenv "LC_MESSAGE") (getenv "LC_ALL"))))
+	 (if (> (length language) 2)
+	       (substring language 0 5)
+	    (substring language 0 2))
+	'())))
 
     ;; Variables that can be set in .sawfish[/]rc    
-    (if (not (boundp 'desktop-directory))
+    (unless (variable-customized-p 'desktop-directory)
 	(defvar desktop-directory '("/usr/share/applications")))
 
-    (if (not (boundp 'my-lang-string))
+    (unless (variable-customized-p 'my-lang-string)
 	(defvar my-lang-string (find-lang-string)))
     
     (if my-lang-string
 	(define name-string "Name[")
       (defvar name-string "Name="))
     
-    (if (not (boundp 'ignore-no-display))
+    (unless (variable-customized-p 'ignore-no-display)
 	(defvar ignore-no-display '()))
     
-    (if (not (boundp 'want-alphabetize))
+    (unless (variable-customized-p 'want-alphabetize)
 	(defvar want-alphabetize 't))
     
-    (if (not (boundp 'my-term-string))
+    (unless (variable-customized-p 'my-term-string)
 	(defvar my-term-string "xterm -e "))
     
-    (if (not (boundp 'use-fdo-menu))
+    (unless (variable-customized-p 'use-fdo-menu)
 	(defvar use-fdo-menu 't))
     
     ;; The Master Category List
@@ -339,4 +341,4 @@ Make sure the mk-saw-menu.jl is in your load path
 	  (setq apps-menu (fix-cats menu-cat-alist)))))
 	
     (define-command 'update-saw-menu update-saw-menu)
-))
\ No newline at end of file
+))

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]