Calendar by dimfish

Здесь выкладываются готовые к использованию макросы и скрипты.
Post Reply
User avatar
dimfish
Posts: 179
Joined: Fri 29 Apr, 2016 13:18
Location: Saint-Petersburg
Has thanked: 1 time
Been thanked: 36 times

Calendar by dimfish

Post by dimfish »

Latest post of the previous page:

buniak_a_h wrote:Уже нужна кнопка "Настроить" с возможностью настройки цветов, начала недели и языка даты
Фига - да тут неделю кодить :shock: один только язык даты чего стоит...
FAR manager — Начальник далеко
User avatar
dimfish
Posts: 179
Joined: Fri 29 Apr, 2016 13:18
Location: Saint-Petersburg
Has thanked: 1 time
Been thanked: 36 times

Calendar by dimfish

Post by dimfish »

кстати язык даты я думаю надо делать через переменные - например вместо %m будет ${mru}
FAR manager — Начальник далеко
User avatar
buniak_a_h
Posts: 4259
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 644 times
Contact:

Calendar by dimfish

Post by buniak_a_h »

dimfish wrote:кстати язык даты я думаю надо делать через переменные - например вместо %m будет ${mru}
Думал над этим. Многобуквенные мне не нравятся. Варианты: вместо %b использовать %б; %m -> %м и т.п. . Другой - перед форматом даты указать настройку типа {$Russian}. Ну и соответствующий файл (возможно, там же, где date.lua) - date.Russian.lua в котором содержится sl_months на соответствующем языке (можно много локализаций)
Программировать просто. Знай, жми себе на кнопочки... © Владелец IT-компании
User avatar
dimfish
Posts: 179
Joined: Fri 29 Apr, 2016 13:18
Location: Saint-Petersburg
Has thanked: 1 time
Been thanked: 36 times

Calendar by dimfish

Post by dimfish »

buniak_a_h wrote:вместо %b использовать %б; %m -> %м
Вот это хитрый ход - мне нравится
FAR manager — Начальник далеко
User avatar
HaRT
Moderator
Posts: 10854
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Calendar by dimfish

Post by HaRT »

dimfish wrote: Вот это хитрый ход - мне нравится
Такой подход сразу создаёт проблемы для локализации на языки, не отличающиеся алфавитом. Алфавитов мало, букв в них мало, языков много. В частности, 8 из 10 языков, для которых локализован сам Фар, используют латиницу.
Думаю, есть смысл всё же язык даты либо прописать в коде, либо запилить отдельный выпадающий список (например, между полем формата и полем даты).
Или кому-то реально надо сразу (в одну вставку) компоненты даты на разных языках? Сомневаюсь.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
buniak_a_h
Posts: 4259
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 644 times
Contact:

Calendar by dimfish

Post by buniak_a_h »

HaRT wrote:
dimfish wrote: Вот это хитрый ход - мне нравится
Такой подход сразу создаёт проблемы для локализации на языки, не отличающиеся алфавитом.
Именно поэтому я и придумал указывать язык перед форматом. Аналогично форматам ${iso}. Чтоб подключить любой язык.
Программировать просто. Знай, жми себе на кнопочки... © Владелец IT-компании
User avatar
dimfish
Posts: 179
Joined: Fri 29 Apr, 2016 13:18
Location: Saint-Petersburg
Has thanked: 1 time
Been thanked: 36 times

Calendar by dimfish

Post by dimfish »

Короче это всё проблемы стороннего модуля luadate - каждый может его форкнуть...
Делать отдельный диалог с настройками цветов слишком муторно. Вполне достаточно в начале файла перечисление цветов как сейчас.
А выбор первого дня - это удобно, наглядно места мало занимает - зачем его убирать?
FAR manager — Начальник далеко
User avatar
HaRT
Moderator
Posts: 10854
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Calendar by dimfish

Post by HaRT »

Предлагаю .
15:00 MSK
Попытался — получилось .
Надо мне (или кому ещё) собраться с духом и записать багрепорт…
20:05 MSK
Пока ограничился обсуждением: http://forum.farmanager.com/viewtopic.p ... 33#p137933
Last edited by HaRT on Thu 01 Jan, 1970 01:00, edited 0 times in total.
Reason: Добавлен абзац про реализацию разделителем; добавлена ссылка на обсуждение FAR API.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
HaRT
Moderator
Posts: 10854
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Calendar by dimfish

Post by HaRT »

dimfish wrote: Создал ветку для тестирования Color Test (Github)
На цвета посмотрю позже сегодня, в крайнем случае завтра.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
zg
zero-gravity
Posts: 6034
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Calendar by dimfish

Post by zg »

dimfish wrote:Делать отдельный диалог с настройками цветов слишком муторно.
можно простое меню со списком цветов.
User avatar
HaRT
Moderator
Posts: 10854
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Calendar by dimfish

Post by HaRT »

zg wrote: можно простое меню со списком цветов
А Фар не выставляет свой диалог выбора цвета для использования в плагинах? Было бы удобно… Вроде ж достаточно типовая потребность.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Shmuel
Posts: 6834
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Calendar by dimfish

Post by Shmuel »

HaRT wrote: А Фар не выставляет свой диалог выбора цвета для использования в плагинах?
far.ColorDialog.
User avatar
dimfish
Posts: 179
Joined: Fri 29 Apr, 2016 13:18
Location: Saint-Petersburg
Has thanked: 1 time
Been thanked: 36 times

Calendar by dimfish

Post by dimfish »

Такс я тут подумал и сделал по Ctrl+MouseClick - если кликнуть по отмеченной дате или Today - будет вызван диалог смены цвета...
FAR manager — Начальник далеко
User avatar
HaRT
Moderator
Posts: 10854
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Calendar by dimfish

Post by HaRT »

dimfish wrote: сделал по Ctrl+MouseClick
Хорошо бы ещё и безмышиный интерфейс…
Например, Ctrl-/Shift-/Space, когда фокус в календарике (т.е. на “dd”). Shift — для выделенной даты, Ctrl — для сегодняшней, CtrlShift — для сегодняшней выделенной. (Реализацию пока не смотрел, могу в мелочах быть неточен.)
21:45 MSK
К сожалению, текущая реализация не позволяет задать отдельные цвета для Выделенный+Сегодня.
Впрочем, независимо от этого я вернул себе обрамление сегодняшнего дня символами ‘‹›’ (невыделенный) и ‘{}’ (выделенный). Может вынести эти символы в настройки? Пусть каждый себе задаёт, что ему нравится.
Last edited by HaRT on Thu 01 Jan, 1970 01:00, edited 0 times in total.
Reason: Вычеркнуто неактуальное, добавлен абзац про обрамление символами.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
HaRT
Moderator
Posts: 10854
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Calendar by dimfish

Post by HaRT »

dimfish wrote:Такс я тут подумал и сделал по Ctrl+MouseClick - если кликнуть по отмеченной дате или Today - будет вызван диалог смены цвета...
В некоторых случаях при щелчке на сегодня ничего не происходит. Минимальный сценарий у меня такой (всё с клавиатуры): вызвать Calendar, нажать кнопку Сегодня, сместиться на день влево, попытаться открыть диалог цвета для Сегодня. Причина в том, что “date.diff(today, dt):spandays()” возвращает не 1, а чуть меньше (например, 0.993) — и сравнение даёт false. Исправление — например, округлять: “math.floor( date.diff(today, dt):spandays() + 0.5 )”.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
dimfish
Posts: 179
Joined: Fri 29 Apr, 2016 13:18
Location: Saint-Petersburg
Has thanked: 1 time
Been thanked: 36 times

Calendar by dimfish

Post by dimfish »

Надеюсь теперь кастомизация устроит всех ;)
- Добавил SelectedToday для выбора цвета
- Добавил Ctrl+Alt+MouseClick меню с выбором формата Today, Selected, SelectedToday
- Исправил вычисление Today по клику
FAR manager — Начальник далеко
Post Reply

Return to “Полезные макросы и скрипты”