emacs-bug-tracker
[Top][All Lists]
Advanced

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

bug#39248: closed (format-time-string ignores user's preferred locale)


From: GNU bug Tracking System
Subject: bug#39248: closed (format-time-string ignores user's preferred locale)
Date: Sun, 26 Jan 2020 08:36:01 +0000

Your message dated Sun, 26 Jan 2020 00:35:31 -0800
with message-id <address@hidden>
and subject line Re: bug#39248: format-time-string ignores user's preferred 
locale
has caused the debbugs.gnu.org bug report #39248,
regarding format-time-string ignores user's preferred locale
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden.)


-- 
39248: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39248
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: format-time-string ignores user's preferred locale Date: Thu, 23 Jan 2020 13:48:16 +1000 User-agent: mu4e 1.2.0; emacs 27.0.60
Calling function (format-time-string "%x") will output incorrect time
string, ignoring user's preferred locale.

* Steps to reproduce:

1. ensure locale is correct with M-x getenv RET LANG RET
    -> en_AU.UTF-8
2. M-: (format-time-string "%x") RET
    -> "01/23/20"
3. repeat for env LC_TIME

* Expected results:

The format for %x as per the docs:
    %x is the locale’s "preferred" date format.

en_AU locale's "preferred" date format should be DD/MM/YYYY:
"23/01/2020"

i.e. the same as output from shell:
    $ locale
    LANG="en_AU.UTF-8"
    LC_COLLATE="en_AU.UTF-8"
    LC_CTYPE="en_AU.UTF-8"
    LC_MESSAGES="en_AU.UTF-8"
    LC_MONETARY="en_AU.UTF-8"
    LC_NUMERIC="en_AU.UTF-8"
    LC_TIME="en_AU.UTF-8"
    LC_ALL=
    $ date +%x
    23/01/2020

* Actual results:

"01/23/20"

GNU Emacs 27.0.60 (build 1, x86_64-apple-darwin19.2.0, NS appkit-1894.20
Version 10.15.2 (Build 19C57)) of 2020-01-18



--- End Message ---
--- Begin Message --- Subject: Re: bug#39248: format-time-string ignores user's preferred locale Date: Sun, 26 Jan 2020 00:35:31 -0800 User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1
On 1/25/20 3:18 AM, Alan Third wrote:
On Thu, Jan 23, 2020 at 11:35:20PM -0800, Paul Eggert wrote:
  #ifdef HAVE_NS
    ns_pool = ns_alloc_autorelease_pool ();
-#ifdef NS_IMPL_GNUSTEP
-  /* GNUstep stupidly resets our locale settings after we made them.  */
-  fixup_locale ();
-#endif

Hi Paul, this LGTM, but I’m just curious if you’re sure we don’t need
that code above any more?

Although I don't use GNUstep and haven't tested the code, as I recall GNUstep initializes itself on its first call (which is why the fixup_locale call was there, as ns_alloc_autorelease_pool was the first call to GNUstep), and if so then we don't need fixup_locale there anymore since we now call fixup_locale earlier, just after calling ns_init_locale which calls NSLocale currentlocale should cause GNUstep to initialize itself.

If I'm wrong feel free to put that code back in, but in the meantime I installed the patch as-is, as Paul R. reports that it works for him.


--- End Message ---

reply via email to

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