LINUX.ORG.RU

Форкнул календарь galendae

 ,


0

1

После перехода на Hyprland и панель Waybar, столкнулся с тем, что нормального календаря для панели, который показывался бы по нажатию и исчезал по клику или потере фокуса - нет.

Самым подходящим из всех опробованных оказался простенький galendae. Но у него оказалось несколько фатальных недостатков и я решил допилить его своими силами.

Недостатки(по моему мнению): не на русском, в оригинале не было выхода по ПКМ(перенёс из китайского форка), не было подсветки выходных и праздничных дней.

Что я сделал на данный момент:

- Перенёс из китайского форка закрытие по ПКМ.

- Добавил чтение csv-файла с производственным календарём.

- Сделал подсветку выходных и праздничных дней, а также пометку к укороченным дням.

- Сделал руками csv-файл с производственным календарем на 2026й год, готовых в csv пока что нет ещё(а отпуска уже планировать пора).

Вот решил поделится, если кому-то будет интересно или полезно.

Скрин:

https://i.imgur.com/YtOdFjB.png

Гитхаб:

https://github.com/loki1368/galendae-ru

Интересные предложения по развитию - велкам. Правда сам пилить буду думаю только то, что мне будет самому интересно, но PR тоже приветствуются.

Если у кого-то есть интересные оформления для этого календаря, то тоже буду рад добавить в репу.

★★★★★

Последнее исправление: Loki13 (всего исправлений: 1)
Ответ на: комментарий от borisych

Все выходные дни праздничные, а если праздничный день не выходной, то и помечать его нечего! Наверное в том и смысл, просто праздничные дни например «День интернета» сегодня (очередной) не является выходным и не входит в список выделения на календаре, празников дофига, выходных праздников меньше, только они и помечаются.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от borisych

Понятия-то разные, а для практических нужд от календаря нужны вообще не они. Нужно различать рабочие и нерабочие дни. И вроде как по скринам здесь всё с этим нормально.

CrX ★★★★★
()
Ответ на: комментарий от borisych

выходные и праздничные дни - это таки разные понятия даже в английском (weekend vs holiday), а у вас они суть одно и то же

Также как и в производственном календаре любом показывается. Я ничего особо изобретать не стал. Единственно, что ещё подумываю, чтобы в соседних месяцах тоже показывать другим цветом не рабочие дни, но так как раз не делается нигде, где я картинки гуглил по слову «производственный календарь».

А так, какая разница, выходной или праздничный? Главное, что не рабочий. Так то и выходной может быть рабочим, если был перенос(1 ноября как пример).

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от LINUX-ORG-RU

праздничные дни например «День интернета»

Это я на развитие оставил. Точечки ставить около таких дней и тултип при наведении в котором выводить что за день.

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от Loki13

Так то и выходной может быть рабочим

Тогда он уже не выходной… По определению.

Но тут походу ещё большая путаница, между «выходной» и «weekend» ну или «последние два дня недели».

CrX ★★★★★
()
Ответ на: комментарий от CrX

Нужно различать рабочие и нерабочие дни.

Я начал этот форк после того как случайно чуть не забронировал баню на рабочий день, 1 ноября. Подумал, ну суббота же.

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от pekmop1024

А чего форк, а не ПР в апстрим?

Там последний коммит 7 лет назад, помер похоже апстрим. Ну и у меня слишком специфично русские изменения(я не изобретал механизм перевода, которого там нет, а поменял Saturday на Суббота прямо в коде) и они только для России актуальны.

Loki13 ★★★★★
() автор топика
Последнее исправление: Loki13 (всего исправлений: 1)
Ответ на: комментарий от yars068

Опять путаница… Речь шла про рабочую субботу, когда из-за праздника три выходных: воскресенье, понедельник и вторник (например, как будет 1 ноября). В такую субботу обычно работа не идёт по повышенному тарифу, ведь это именно что не выходной, а рабочий день.

CrX ★★★★★
()
Ответ на: комментарий от Loki13

Также как и в производственном календаре любом показывается. Я ничего особо изобретать не стал.

ну вот вам пример, где нерабочие праздничные явно отделены от выходных: https://www.banki.ru/news/daytheme/?id=11015508 (там тоже колхоз с 7 марта и 13-14 июня - здесь подсветка смахивает больше на long weekend) дело в том, что нерабочие праздничные дни - это то что определяется государством, т.е. дано нам свыше, а выходные - это уже свойство расписания конкретной организации или службы. На примере: если у предприятия 6-дневная рабочая неделя, то 3 января 2026 года все равно будет нерабочим днем, потому что так сказало государство.

borisych ★★★★★
()
Ответ на: комментарий от CrX

И вроде как по скринам здесь всё с этим нормально.

глядя на расписание с 5-дневной неделей нельзя сделать каких-либо выводов о расписаниях с 4-дневой и 6-дневной рабочей неделей, т.е. данных явно недостаточно.

borisych ★★★★★
()
Ответ на: комментарий от borisych

Зачем человеку, у которого 5-дневная неделя, делать какие-либо выводы о расписаниях с 4-дневной или 6-дневной, причём аж так часто, что оно аж на панели нужно?

CrX ★★★★★
()
Ответ на: комментарий от rtxtxtrx

А у нас праздные дни — дни для праздного времяпрепровождения. Однако дофига «праздников» при этом являются рабочими днями.

Может не будем в этимологию лезть, а на суть будем смотреть?

CrX ★★★★★
()
Ответ на: комментарий от Chiffchaff

А изобретать ничего и не нужно. Существует GNU gettext, которого достаточно для 90% ситуаций.

Для этого в коде нужно было бы поменять захардкоженный массив на что-то другое. Я же не говорю что это невозможно, но в моем варианте это избыточно. Хотя, если будет запрос, то может и сделаю.

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от borisych

Нууу, кстати, никто не мешает сгенерировать свой личный список выходных. Заменить файл(там просто csv формат) для всего года и пользоваться. Оно довольно гибко получилось.

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от pfg

отдельной csv оформляй.

Это надо сначала список таких дней с описаниями найти. А там можно формат уже придумать. Да, скорее csv. Если бы плюсы были, я бы думаю всё на JSON сделал. А на С парсить что-то сложнее csv, банально лень. Да и контейнеры изобретать придется(ага, очень мне тут std::map бы не помешал).

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от rtxtxtrx

Так ты мог добавить мультиязычность и реквест сделать, автор бы ее добавил и все.

Но мне кроме этого надо было добавить нерабочие дни наши, российские. Зачем они автору? И это не говоря о том, что автор 7 лет уже забил как, вряд ли он бросится принимать PR национальные.

У автора на гитхабе

0 contributions in the last year

А за прошлый год одна активность и та не в программировании.

Loki13 ★★★★★
() автор топика
Последнее исправление: Loki13 (всего исправлений: 1)