Решено: Неделя начинается с воскресенья (Как сменить календарик не меняя локали?)

Настройка графического интерфейса, Иксов, десктопов, оконных менеджеров и иксовых терминалов

Модератор: Модераторы разделов

Аватара пользователя
dimakey
Сообщения: 37
ОС: debian squeeze/sid

Решено: Неделя начинается с воскресенья

Сообщение dimakey »

Ситуация такая - при клике на часах открывается календарик. Неделя в нем начинается с воскресенья, видимо потому, что локаль американский английский. Можно ли сделать так, чтобы неделя начиналась с понедельника не меняя локаль?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено: Неделя начинается с воскресенья

Сообщение sash-kan »

смотря что вы подразумеваете под «не меняя».
если не меняя ни названия, ни содержимого, то — никак.
если содержимое (с вашей точки зрения) поменять допустимо — то localedef вам в помощь. благо в /usr/share/i18n/locales/ — один сплошной plain-text.
если же допустима смена названия хотя бы для LC_TIME, то легко:

Код: Выделить всё

$ LC_TIME=ru_RU.utf8 cal
    Октябрь 2009
Пн Вт Ср Чт Пт Сб Вс
          1  2  3  4
 5  6  7  8  9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

$ LC_TIME=en_US.utf8 cal
    October 2009
Su Mo Tu We Th Fr Sa
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
iglezz
Сообщения: 43
ОС: Debian testing

Re: Решено: Неделя начинается с воскресенья

Сообщение iglezz »

dimakey
Можно при вызове явно задать понедельник первым днем недели:
cal -m

Код: Выделить всё

 $ cal -m
    October 2009
Mo Tu We Th Fr Sa Su
          1  2  3  4
 5  6  7  8  9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Спасибо сказали:
Аватара пользователя
dimakey
Сообщения: 37
ОС: debian squeeze/sid

Re: Решено: Неделя начинается с воскресенья

Сообщение dimakey »

Спасибо за подсказки. Решение такое:
открываем файл /usr/share/i18n/locales/en_US (или ту локаль, которую нужно менять)
находим строку:
first_weekday 1
и меняем ее на:
first_weekday 2
Затем выполняем в консоли dpkg-reconfigure locales и выбираем измененную локаль. При следующем логине неделя будет начинаться с понедельника.
Спасибо сказали:
iglezz
Сообщения: 43
ОС: Debian testing

Re: Решено: Неделя начинается с воскресенья

Сообщение iglezz »

Я тоже когда-то таким образом правил файлы. Но после обновления локалей придется опять править.
Поэтому привык набирать `cal -m`. (Хотя можно было это дело альясом прописать...)
Спасибо сказали:
Аватара пользователя
trancefer
Сообщения: 485
Статус: $>
ОС: Arch, Slackware, OpenBSD

Re: Решено: Неделя начинается с воскресенья

Сообщение trancefer »

Насколько знаю, в австралийской локали неделя начинается с понедельника.
Спасибо сказали: