On 20/06/2026 1:26 pm, Daniel Fleischer wrote:
,----
| LC_ALL=he_IL emacs -Q -L ~/.emacs.d/elpa/org-9.8.6/ -l "org"
`----
[...]
LANG doesn't have any effect as far as I can see, only LC_ALL.
[...]
Emacs 30.2, org 9.8.6. Mac OS 26.5.1.

If LANG has no effect then perhaps you have LC_ALL or LC_TIME set explicitly. At least on Linux one may check output of

    locale

    LANG=en_GB.UTF-8
    LANGUAGE=en_US:en
    LC_CTYPE="en_GB.UTF-8"
    LC_NUMERIC="en_GB.UTF-8"
    LC_TIME="en_GB.UTF-8"
    LC_COLLATE="en_GB.UTF-8"
    LC_MONETARY="en_GB.UTF-8"
    LC_MESSAGES="en_GB.UTF-8"
    LC_PAPER="en_GB.UTF-8"
    LC_NAME="en_GB.UTF-8"
    LC_ADDRESS="en_GB.UTF-8"
    LC_TELEPHONE="en_GB.UTF-8"
    LC_MEASUREMENT="en_GB.UTF-8"
    LC_IDENTIFICATION="en_GB.UTF-8"
    LC_ALL=

paying attention to quotes, values without them are set explicitly.

For those who are trying to reproduce, check that specific locale is generated, it should present in output of

    locale -a

Otherwise you may get an error message (it seems, e.g. GNU date(1) silently ignores unavailable locales though).

I am unsure if overriding `org-timestamp-formats' defconst to strip "%a" would not have side effects, see comments added in

Jens Schmidt. Re: [PATCH] Re: Better support optional weekday in Org mode timestamps. Sat, 26 Apr 2025 21:58:07 +0200.
<https://list.orgmode.org/[email protected]>

I do not think, Org parser can be reliably modified to allow spaces and other characters in weekdays. There is risk of false positives for part of text with literal square brackets.

Another command that might be useful for debugging (it lists weekdays)

    locale -k LC_TIME
    abday="Sun;Mon;Tue;Wed;Thu;Fri;Sat"
    day="Sunday;Monday;Tuesday;Wednesday;Thursday;Friday;Saturday"
    abmon="Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec"
mon="January;February;March;April;May;June;July;August;September;October;November;December"
    am_pm="am;pm"
    d_t_fmt="%a %d %b %Y %T %Z"
    d_fmt="%d/%m/%y"
    t_fmt="%T"
    t_fmt_ampm="%l:%M:%S %P %Z"
    era=
    era_year=""
    era_d_fmt=""
    alt_digits=
    era_d_t_fmt=""
    era_t_fmt=""
    time-era-num-entries=0
    time-era-entries="S"
    week-ndays=7
    week-1stday=19971130
    week-1stweek=4
    first_weekday=2
    first_workday=2
    cal_direction=1
    timezone=""
    date_fmt="%a %e %b %H:%M:%S %Z %Y"
    time-codeset="UTF-8"
alt_mon="January;February;March;April;May;June;July;August;September;October;November;December"
    ab_alt_mon="Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec"

Out of curiosity, I have tried what weekdays are used by browsers. Almost certainly Firefox uses Unicode Common Locale Database:

| locale | weekday | 14 Jun 2026  | 15 Jun 2026  | 16 Jun 2026     | 17 Jun 
2026  | 18 Jun 2026  | 19 Jun 2026  | 20 Jun 2026  |
|--------+---------+--------------+--------------+-----------------+--------------+--------------+--------------+--------------|
| en-GB  | long    | Sunday       | Monday       | Tuesday         | Wednesday  
  | Thursday     | Friday       | Saturday     |
| en-GB  | short   | Sun          | Mon          | Tue             | Wed        
  | Thu          | Fri          | Sat          |
| en-GB  | narrow  | S            | M            | T               | W          
  | T            | F            | S            |
| he-IL  | long    | יום ראשון      | יום שני       | יום שלישי         | יום 
רביעי      | יום חמישי      | יום שישי       | יום שבת      |
| he-IL  | short   | יום א׳        | יום ב׳        | יום ג׳           | יום ד׳  
      | יום ה׳        | יום ו׳         | שבת         |
| he-IL  | narrow  | א׳           | ב׳           | ג׳              | ד׳         
  | ה׳           | ו׳           | ש׳           |
| az-IR  | long    | bazar        | bazar ertəsi | çərşənbə axşamı | çərşənbə   
  | cümə axşamı  | cümə         | şənbə        |
| az-IR  | short   | B.           | B.E.         | Ç.A.            | Ç.         
  | C.A.         | C.           | Ş.           |
| az-IR  | narrow  | 7            | 1            | 2               | 3          
  | 4            | 5            | 6            |
| sm-WS  | long    | Sunday       | Monday       | Tuesday         | Wednesday  
  | Thursday     | Friday       | Saturday     |
| sm-WS  | short   | Sun          | Mon          | Tue             | Wed        
  | Thu          | Fri          | Sat          |
| sm-WS  | narrow  | S            | M            | T               | W          
  | T            | F            | S            |
| tok    | long    | suno esun #7 | suno esun #1 | suno esun #2    | suno esun 
#3 | suno esun #4 | suno esun #5 | suno esun #6 |
| tok    | short   | suno esun #7 | suno esun #1 | suno esun #2    | suno esun 
#3 | suno esun #4 | suno esun #5 | suno esun #6 |
| tok    | narrow  | S            | M            | T               | W          
  | T            | F            | S            |

I took locales from Morgan's message. Certainly, there are short names with spaces. Perhaps definition for sm-WS is not available.

var days = [14, 15, 16, 17, 18, 19, 20].map(d => {
  ts = new Date(2026, 6-1, d);
  return [
    new Intl.DateTimeFormat(
      "en-GB", {dateStyle: "medium"}).format(ts),
    ts]});
function wdnames(days, locale, weekday) {
  const fmt = new Intl.DateTimeFormat(locale, { weekday });
  return Object.fromEntries(
    days.map(([col, d]) => [ col, fmt.format(d) ]));
}
console.table(
  ["en-GB", "he-IL", "az-IR", "sm-WS", "tok"]
  .map(locale =>
       ["long", "short", "narrow"]
       .map(weekday => ({locale, weekday})))
  .flat().map(
    l => ({ ...l, ...wdnames(days, l.locale, l.weekday)})))

See <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat>

You may try to evaluate in browser console

  new Intl.DateTimeFormat("he-IL", { weekday: "short"}).format(new Date)

Reply via email to