emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master ee715b9: Fix current-iso639-language on MS-Windows


From: Eli Zaretskii
Subject: [Emacs-diffs] master ee715b9: Fix current-iso639-language on MS-Windows
Date: Mon, 15 Jun 2015 17:12:10 +0000

branch: master
commit ee715b9f6d9fccf4415a21a756058a60c924bc27
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Fix current-iso639-language on MS-Windows
    
    * lisp/international/mule-cmds.el (set-locale-environment):
    Downcase the locale name before interning it.  This is so the
    'current-iso639-language' on MS-Windows matches the ':lang'
    property of font-spec objects.
---
 lisp/international/mule-cmds.el |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index 7643668..e56fceb 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -2603,7 +2603,18 @@ See also `locale-charset-language-names', 
`locale-language-names',
        (setq system-time-locale locale))
 
       (if (string-match "^[a-z][a-z]" locale)
-         (setq current-iso639-language (intern (match-string 0 locale)))))
+          ;; The value of 'current-iso639-language' is matched against
+          ;; the ':lang' property of font-spec objects when selecting
+          ;; and prioritizing available fonts for displaying
+          ;; characters; see fontset.c.
+         (setq current-iso639-language
+                ;; The call to 'downcase' is for w32, where the
+                ;; MS-Windows locale names are in caps, as in "ENU",
+                ;; the equivalent of the Posix "en_US".  Since the
+                ;; match mentioned above uses memq, and ':lang'
+                ;; properties have lower-case values, the letter-case
+                ;; must match exactly.
+                (intern (downcase (match-string 0 locale))))))
 
     (setq woman-locale
           (or system-messages-locale



reply via email to

[Prev in Thread] Current Thread [Next in Thread]