emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/src/mac.c


From: YAMAMOTO Mitsuharu
Subject: [Emacs-diffs] Changes to emacs/src/mac.c
Date: Thu, 14 Apr 2005 05:25:01 -0400

Index: emacs/src/mac.c
diff -c emacs/src/mac.c:1.31 emacs/src/mac.c:1.32
*** emacs/src/mac.c:1.31        Wed Apr  6 02:23:37 2005
--- emacs/src/mac.c     Thu Apr 14 09:25:01 2005
***************
*** 49,54 ****
--- 49,55 ----
  #include <Events.h>
  #include <Processes.h>
  #include <EPPC.h>
+ #include <MacLocales.h>
  #endif        /* not HAVE_CARBON */
  
  #include <utime.h>
***************
*** 67,72 ****
--- 68,79 ----
  
  Lisp_Object QCLIPBOARD;
  
+ /* The system script code. */
+ static int mac_system_script_code;
+ 
+ /* The system locale identifier string.  */
+ static Lisp_Object Vmac_system_locale;
+ 
  /* An instance of the AppleScript component.  */
  static ComponentInstance as_scripting_component;
  /* The single script context used for all script executions.  */
***************
*** 4167,4172 ****
--- 4174,4202 ----
  }
  #endif /* MAC_OSX */
  
+ 
+ static Lisp_Object
+ mac_get_system_locale ()
+ {
+   OSErr err;
+   LangCode lang;
+   RegionCode region;
+   LocaleRef locale;
+   Str255 str;
+ 
+   lang = GetScriptVariable (smSystemScript, smScriptLang);
+   region = GetScriptManagerVariable (smRegionCode);
+   err = LocaleRefFromLangOrRegionCode (lang, region, &locale);
+   if (err == noErr)
+     err = LocaleRefGetPartString (locale, kLocaleAllPartsMask,
+                                 sizeof (str), str);
+   if (err == noErr)
+     return build_string (str);
+   else
+     return Qnil;
+ }
+ 
+ 
  void
  syms_of_mac ()
  {
***************
*** 4197,4202 ****
--- 4227,4242 ----
    defsubr (&Sdo_applescript);
    defsubr (&Smac_file_name_to_posix);
    defsubr (&Sposix_file_name_to_mac);
+ 
+   DEFVAR_INT ("mac-system-script-code", &mac_system_script_code,
+     doc: /* The system script code.  */);
+   mac_system_script_code = (ScriptCode) GetScriptManagerVariable 
(smSysScript);
+ 
+   DEFVAR_LISP ("mac-system-locale", &Vmac_system_locale,
+     doc: /* The system locale identifier string.
+ This is not a POSIX locale ID, but an ICU locale ID.  So encoding
+ information is not included.  */);
+   Vmac_system_locale = mac_get_system_locale ();
  }
  
  /* arch-tag: 29d30c1f-0c6b-4f88-8a6d-0558d7f9dbff




reply via email to

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