Page 25 of 28
LuaFAR Search
Posted: Fri 13 Nov, 2009 07:29
by Shmuel
Здесь можно обсуждать плагин
LuaFAR Search. (
Анонс).
LuaFAR Search
Posted: Fri 30 Jul, 2021 22:29
by Shmuel
Latest post of the previous page:
John Doe wrote: ↑Fri 30 Jul, 2021 12:24
Насчёт highlight - это может быть как параметр поиска, так и глобальная настройка.
Если речь об интерактивном режиме, то значение запоминается из диалога, и действует, пока его не сбросишь, т.е. является глобальной настройкой.
Если речь о режиме скрипта, то там у всех опущенных параметров есть умолчательные значения, у булевых это false. Нет смысла усложнять и вводить для этого настройку, если уж пишется скрипт, то придётся явно добавить bHighlight=true.
Или я вас неправильно понял?
LuaFAR Search
Posted: Sat 31 Jul, 2021 11:30
by John Doe
Shmuel wrote: ↑Fri 30 Jul, 2021 22:29
Или я вас неправильно понял?
Всё правильно поняли.
Shmuel wrote: ↑Fri 30 Jul, 2021 22:29
Если речь о режиме скрипта, то там у всех опущенных параметров есть умолчательные значения, у булевых это false.
А могли бы быть не false, а настраиваемые пользователем. Смысл в этом определённый есть - возможность (оперативно) управлять значениями не трогая текст скрипта.
Shmuel wrote: ↑Fri 30 Jul, 2021 22:29
Нет смысла усложнять и вводить для этого настройку
Новых настроек вводить не придётся, если как умолчательные использовать значения из диалога.
LuaFAR Search
Posted: Sat 31 Jul, 2021 15:20
by Shmuel
John Doe wrote: ↑Sat 31 Jul, 2021 11:30
А могли бы быть не false, а настраиваемые пользователем. Смысл в этом определённый есть - возможность (оперативно) управлять значениями не трогая текст скрипта.
Это легко сделать в коде пользователя (например, используя метатаблицу).
John Doe wrote: ↑Sat 31 Jul, 2021 11:30
Новых настроек вводить не придётся, если как умолчательные использовать значения из диалога.
Уважаю ваше мнение, но с ним не согласен. Использовать значения из диалога в API как умолчательные - это как использовать текущее расположение звёзд на небе, убивает детерминизм API напрочь.
LuaFAR Search
Posted: Sat 31 Jul, 2021 16:09
by John Doe
Shmuel wrote: ↑Sat 31 Jul, 2021 15:20
Это легко сделать в коде пользователя (например, используя метатаблицу).
Имелось ввиду в диалоге. Который тоже можно нарисовать собственный, понимаю.
Shmuel wrote: ↑Sat 31 Jul, 2021 15:20
убивает детерминизм API напрочь.
Почему же напрочь, явно указанные значения обеспечат детерминизм там где он требуется.
Другое дело, что опускать значения false на практике тоже удобно, поэтому согласен, что не стоит такое делать со всеми параметрами.
Пожалуй, я бы ограничился только теми что влияют на отображение, но не результат поиска.
Впрочем, таких мало. По типу "Выделять ли найденное", "раскрашивать ли все вхождения", "устанавливать курсор в начало или конец"..
P.S.
На самом деле буду признателен за параметр bHighlight в любой форме.
LuaFAR Search
Posted: Thu 05 Aug, 2021 20:14
by Shmuel
John Doe wrote: ↑Sat 31 Jul, 2021 16:09
P.S. На самом деле буду признателен за параметр bHighlight в любой форме.
Если бы вы это написали новым сообщением, то увидел бы в тот же день, а так только сейчас, и то случайно.
bHighlight был на днях добавлен. Выложу сегодня-завтра.
LuaFAR Search
Posted: Fri 06 Aug, 2021 13:57
by John Doe
Спасибо!
Не предусмотрена ли в Makefile возможность собрать скрипт не компилируя dll?
LuaFAR Search
Posted: Fri 06 Aug, 2021 14:08
by Shmuel
John Doe wrote: ↑Fri 06 Aug, 2021 13:57
Не предусмотрена ли в Makefile возможность собрать скрипт не компилируя dll?
- Поскольку это отдельный плагин, то DLL так или иначе нужна.
- Если вы имеете в виду старый трюк с переименованием luamacro.dll, то это должно работать, и в этом случае вообще не надо ничего собирать.
- У Makefile есть переключатель EMBED. Если его не задать, то соберётся DLL маленького размера, не включающая в себя Lua-файлы плагина. А чтобы их включить, надо задать с комстроки мейка EMBED=1.
P.S. Пункт 2 зачеркнул. Этот трюк не пройдёт, потому что исходники плагина включают в себя кроме Lua-файлов также один Си-файл.
LuaFAR Search
Posted: Fri 06 Aug, 2021 17:17
by John Doe
Shmuel wrote: ↑Fri 06 Aug, 2021 14:08
Поскольку это отдельный плагин, то DLL так или иначе нужна.
Цель - использовать имеющуюся длл, но с обновлёнными скриптами.
Мне казалось что даже с EMBED внешний скрипт имеет приоритет.
Но чтобы проверить - надо это скрипт иметь, как я думал надо собрать из нескольких файлов в один.
LuaFAR Search
Posted: Fri 06 Aug, 2021 17:34
by Shmuel
John Doe wrote: ↑Fri 06 Aug, 2021 17:17
Мне казалось что даже с EMBED внешний скрипт имеет приоритет.
Может быть. Когда-то я рассматривал этот сценарий, но это было очень давно.
Могу для вас собрать обе DLL без ключа EMBED.
Добавлено:
У меня ощущение, что вы неточно понимаете связь между Lua-файлами в данном плагине.
Все они, за исключением _globalinfo.lua и lfsearch.lua - модули, и могут работать без объединения в общий скрипт.
На моей рабочей системе так оно и есть, и используется DLL, собранная без ключа EMBED и пересобираемая весьма редко, только в случае изменения в Си-файле плагина.
LuaFAR Search
Posted: Sat 07 Aug, 2021 08:25
by John Doe
Shmuel wrote: ↑Fri 06 Aug, 2021 17:34
У меня ощущение, что вы неточно понимаете связь между Lua-файлами в данном плагине.
Так и есть, почему-то думал что надо скрипты объединить.
Плюс, обработать *.templ и *.mcr.
Shmuel wrote: ↑Fri 06 Aug, 2021 17:34обе DLL
А о какой второй dll речь?
LuaFAR Search
Posted: Sat 07 Aug, 2021 08:53
by Shmuel
- Да, Makefile может генерировать явно указанные ему "таргеты", среди которых есть
lng
и help
(по умолчанию генерируется всё).
- "Обе DLL" - имелось в виду для x86 и x64.
LuaFAR Search
Posted: Sat 07 Aug, 2021 09:42
by John Doe
Обнаружил нежелательный эффект: при поиске сбрасывается заголовок редактора.
Например, установим editor.SetTitle(nil,"123")
, и следом поищем (любую) строку.
После успешного поиска в заголовке снова имя файла.
После неуспешного во время отображения сообщения - found:0
, после закрытия снова имя файла.
LuaFAR Search
Posted: Sat 07 Aug, 2021 09:54
by Shmuel
Спасибо за репорт. Это из тех багов, которые легко починить.
LuaFAR Search
Posted: Sat 07 Aug, 2021 17:20
by Shmuel
John Doe wrote: ↑Sat 07 Aug, 2021 16:46
EditFind выводит предупреждение о том что поиск начнётся с начала, и это удобно
А lfsearch в этой ситуации к сожалению не даёт обратной связи: в интерфейсе диалога такая опция предусмотрена, а в скриптовом режиме - нет.
Попробуйте задать bWrapAround=2 (в текущей реализации важно не значение а тип=="number").
LuaFAR Search
Posted: Sat 07 Aug, 2021 17:26
by John Doe
Shmuel wrote: ↑Sat 07 Aug, 2021 17:20
Попробуйте задать bWrapAround=2 (в текущей реализации важно не значение а тип=="number").
Да, спасибо, уже дошёл экспериментальным путём.
LuaFAR Search
Posted: Fri 22 Oct, 2021 16:45
by Shmuel
John Doe wrote: ↑Sat 07 Aug, 2021 09:42
Обнаружил нежелательный эффект: при поиске сбрасывается заголовок редактора.
Например, установим
editor.SetTitle(nil,"123")
, и следом поищем (любую) строку.
После успешного поиска в заголовке снова имя файла.
После неуспешного во время отображения сообщения -
found:0
, после закрытия снова имя файла.
Ещё в августе по свежим следам "починил" этот нежелательный эффект, а сегодня обнаружил, что эта починка вызывает другой, не менее нежелательный: при сохранении файла с новым именем по ShiftF2 заголовок не меняется на новое имя файла. Видимо буду починку откатывать.