far.FileTimeResolution

Здесь обсуждается всё, что касается макросов.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

far.FileTimeResolution

Post by John Doe »

far.FileTimeResolution влияет на win.FileTimeToLocalFileTime,win.FileTimeToSystemTime,win.GetSystemTimeAsFileTime,win.SystemTimeToFileTime.
Но не влияет на win.GetFileTimes/win.SetFileTimes.
Почему так сделано?
https://t.me/FarManager — Telegram чат
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

John Doe wrote: Fri 31 Mar, 2023 22:08 Почему так сделано?
Детали принятия решения не помню, но там всегда полная 100-наносекундная резолюция.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe »

Столкнулся с этим, пытаясь использовать в win.SetFileTimes данные из tPluginPanelItem.
А почему не использовать 100-наносекундную резолюцию всегда и безусловно? Соображения совместимости?
https://t.me/FarManager — Telegram чат
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

John Doe wrote: Fri 31 Mar, 2023 22:31 Соображения совместимости?
Именно так.
Я устанавливаю высокую резолюцию только в плагине LF Search.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe »

Всё-таки у унификации есть преимущества.
Может быть рискнуть в очередной версии поменять умолчание с 1 на 2?
https://t.me/FarManager — Telegram чат
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

John Doe wrote: Fri 31 Mar, 2023 22:59 Может быть рискнуть в очередной версии поменять умолчание с 1 на 2?
  1. Просьба иметь в виду, что мой недавний коммит не означает возвращения к разработке для Фар3. Это просто мелкий патч, и не хотелось вас беспокоить в очередной раз.
  2. С практической точки зрения, резолющии 1 мсек (мне кажется) достаточно
  3. Ну поломаются макросы, начнётся шум.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe »

Shmuel wrote: Fri 31 Mar, 2023 23:07 Это просто мелкий патч, и не хотелось вас беспокоить в очередной раз.
Мы всегда рады вашим патчам, независимо от их размера.
Shmuel wrote: Fri 31 Mar, 2023 23:07 С практической точки зрения, резолющии 1 мсек (мне кажется) достаточно
Это так.
Мне не нравится другое: что в одном месте у нас одна резолюция, в другом - другая (но не всегда).
Shmuel wrote: Fri 31 Mar, 2023 23:07 Ну поломаются макросы, начнётся шум.
Мне почему-то кажется что ни один макрос не пострадает)
https://t.me/FarManager — Telegram чат
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

John Doe wrote: Fri 31 Mar, 2023 23:22 Мне не нравится другое: что в одном месте у нас одна резолюция, в другом - другая (но не всегда).
Безусловно, не всё сделано идеально, и безусловно, многое можно улучшить.
John Doe wrote: Fri 31 Mar, 2023 23:22 Мне почему-то кажется что ни один макрос не пострадает)
Для начала попробуйте на своих макросах. Поставьте в _macroinit.lua far.FileTimeResolution(2)
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

Shmuel wrote: Fri 31 Mar, 2023 23:28 Поставьте в _macroinit.lua far.FileTimeResolution(2)
Вот календарь от SUSim (не последняя версия, а та, с которой я начал свои изменения).
Clipboard01.png
Clipboard01.png (7.65 KiB) Viewed 1283 times

P.S. Почему я привёл не свой вариант календаря, а оригинальный - на моём этой проблемы нет, так как в нём вместо функций обработки времени из библиотеки win используются мои самопальные функции.
Last edited by Shmuel on Sat 01 Apr, 2023 13:54, edited 3 times in total.
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by SUSim »

И сейчас глюки...
Проверю ... но думаю не надо пока менять!
Last edited by SUSim on Sun 02 Apr, 2023 14:57, edited 1 time in total.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

SUSim, ваш календарь не виноват, это я просто продемонстрировал, что изменение умолчательной резолюции способно поломать макросы.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe »

Shmuel wrote: Sun 02 Apr, 2023 14:57 изменение умолчательной резолюции способно поломать макросы.
Очевидно способно, но таких макросов будет мало, и их легко один раз адаптировать, и навсегда забыть о том, что время в скриптах может требовать разной резолюции.

P.S.
Попутно возникло пожелание: научить функции LuaFAR принимать на вход 64-битные числа в формате ffi c-data.
В частности, заданные литералами наподобие 130732490890000000LL
https://t.me/FarManager — Telegram чат
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

LuaFAR — библиотека для создания плагинов на языке Lua

Post by Shmuel »

John Doe, не знаю, кому адресованы ваши пожелания, но если ко мне, то у меня всё свободное время уходит на свой фар для линукса. И очень не хватает такого пользователя / сотрудника, как вы.
User avatar
John Doe
Бюрократ
Posts: 13867
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

LuaFAR — библиотека для создания плагинов на языке Lua

Post by John Doe »

Shmuel wrote: Sun 02 Apr, 2023 17:08 то у меня всё свободное время уходит на свой фар для линукса.
При этом вы всё же иногда находите время присылать патчи и нам, за что вам огромное спасибо.
https://t.me/FarManager — Telegram чат
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Получение даты создания PE-файлов (*.EXE, *.DLL и др.)

Post by SUSim »

John Doe wrote: Fri 19 May, 2023 21:13 1000 не должно быть константой.
Возможно стоит предусмотреть возможность передачи параметром.
  • Учитывая возможности изменить с помощью far.FileTimeResolution разрешающую способность ряда функций апи плагинов, иногда требуется вычислять так:

    Code: Select all

    local resolution = far.FileTimeResolution()==1 and 1000 or bit64.new(10000000)
  • В случае же если значение предполагается использовать в контексте win.Get/SetFileTimes, требуется bit64.new(10000000) независимо от режима far.FileTimeResolution.
Документация:
hh mk:@MSITStore:%FARHOME%\Encyclopedia\luafar_manual.chm::/544.html
Обсуждение: viewtopic.php?p=174178#p174178
Спонтанно... охренеть!
я и так потратил время на то чтобы выяснить надо умножать или нет и в каких случаях....
кому нужно менять эту настройку, и нафик она вообще нужна???
лучше определиться как фар отдает это время или встроенную функцию перевода file-stamp-sys time
зачем приседания от пользователя.... Вы же сами писали пусть падает скрипт... те кто умолчания править могут и скрипты поправят...
SimSU ··· ·· -- ··· ··-
Post Reply

Return to “Обсуждение макросов”