LuaFAR Search
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
Latest post of the previous page:
DrKnS, сделайте любой рабочий интерфейс, например по образцу PCRE или Oniguruma.И, кстати, никто не в претензии, что это ещё не сделано.
LuaFAR Search
DrKnS,
Как оказалось, я в претензии
Я так понимаю я не могу надписать скрипт lua на замену текста с помощью регулярных выражений и скормить его FAR?
Пример скрипта - выше. Куча файлов (выгрузка из старой базы) в которых надо поменять местами нужные поля и вырезать не нужное.
Как оказалось, я в претензии

Я так понимаю я не могу надписать скрипт lua на замену текста с помощью регулярных выражений и скормить его FAR?
Пример скрипта - выше. Куча файлов (выгрузка из старой базы) в которых надо поменять местами нужные поля и вырезать не нужное.
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
Странный вывод. Именованные группы пока не поддерживаются, но ведь порядковые никто не отменял.
Переписать ваше выражение с использованием порядковых групп занимает не более двух минут:
Ищем
((?:(?:^\w[^\d]+_)+)|(?:^\w[^\d]+))(?:\.|_)(\d{2}\.\d{2}\.\d{2})\.(\S+)
Меняем на
$1 - $3 - $2
LuaFAR Search
Добрый день! Подскажите, пожалуйста, как обратиться к элементам замены после девятого? Пробовал {$10}, ${10}, не работает ни с одной из библиотек.
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
$A ... $Z
В справке плагина есть страница "Синтаксис образца замены", там это указано.
- John Doe
- Бюрократ
- Posts: 13553
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 67 times
- Been thanked: 390 times
- Contact:
LuaFAR Search
Понадобилось использовать плагин в скрипте, просмотрел справку, нашёл как добавлять скрипты в меню плагина, но не нашёл упоминания о возможности использования через Plugin.[Sync]Call.
Не реализовано?
Не реализовано?
https://t.me/FarManager — Telegram чат
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
Определённые возможности использования есть, видимо забыл добавить в справку.
- Наберите с комстроки
lfs:
, там есть примеры синтаксиса. - Кое-что можно посмотреть в файле macros\lfsearch.lua в дистрибутиве плагина.
Если есть сценарий, который невозможно решить имеющимися средствами - опишите его.
- John Doe
- Бюрократ
- Posts: 13553
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 67 times
- Been thanked: 390 times
- Contact:
LuaFAR Search
Похоже что всё можно решить командой
Смущает только то что все значения при этом надо будет лепить в текст code.
В идеале хотелось бы что-то типа
Но похоже такого не предусмотрено.
В macros\lfsearch.lua всё понятно, но "test:search" там нет (пробовал но безуспешно).
code
.Смущает только то что все значения при этом надо будет лепить в текст code.
В идеале хотелось бы что-то типа
Code: Select all
Plugin.SyncCall("8E11EA75-0303-4374-AC60-D1E38F865449","editor","test:search",Data)
В macros\lfsearch.lua всё понятно, но "test:search" там нет (пробовал но безуспешно).
https://t.me/FarManager — Telegram чат
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
Там есть возможность передачи аргументов (типа string, number, boolean, nil). Напимер:
Code: Select all
local code = [[
local msg, title = ...
far.Message(msg, title)
]]
Plugin.SyncCall("8e11ea75-0303-4374-ac60-d1e38f865449", "code", code, "Hello", "goodbye")
"test:search" это внутренняя команда плагина. Её использование можно посмотреть в файле test_lfsearch.lua из дистрибутива.
- John Doe
- Бюрократ
- Posts: 13553
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 67 times
- Been thanked: 390 times
- Contact:
LuaFAR Search
Есть
togglehighlight
но нет возможности безусловно выключить раскраску.https://t.me/FarManager — Telegram чат
- John Doe
- Бюрократ
- Posts: 13553
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 67 times
- Been thanked: 390 times
- Contact:
LuaFAR Search
Имелась ввиду описанная в справке
Но она не подошла, поскольку мне требуется не только "искать", но и переходить к найденному, и выделяя при этом все вхождения.Следующие операции не выводят диалогов и заключительного сообщения:
Code: Select all
"test:search" : операция поиска
Т.е. всё то что происходит из диалога, но без него.
https://t.me/FarManager — Telegram чат
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
- У меня переходит к найденному.
- Для подсветки всех вхождений по test:search не хватает предопределённого поля в таблице параметров. Когда была добавлена эта опция в диалоге, она не была добавлена в API. Надо будет добавить (насчёт когда - пока не знаю).
- John Doe
- Бюрократ
- Posts: 13553
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 67 times
- Been thanked: 390 times
- Contact:
LuaFAR Search
Спасибо, нашёл ошибку у себя.
Насчёт highlight - это может быть как параметр поиска, так и глобальная настройка.
И пожелание насчёт ещё одной опции: запоминать поиск так, чтобы вызываемые следом
Насчёт highlight - это может быть как параметр поиска, так и глобальная настройка.
И пожелание насчёт ещё одной опции: запоминать поиск так, чтобы вызываемые следом
repeat
и repeat_rev
использовали те же параметры.
Last edited by John Doe on Fri 30 Jul, 2021 12:26, edited 1 time in total.
https://t.me/FarManager — Telegram чат
-
- Posts: 6718
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 34 times
- Been thanked: 503 times
LuaFAR Search
Если речь об интерактивном режиме, то значение запоминается из диалога, и действует, пока его не сбросишь, т.е. является глобальной настройкой.
Если речь о режиме скрипта, то там у всех опущенных параметров есть умолчательные значения, у булевых это false. Нет смысла усложнять и вводить для этого настройку, если уж пишется скрипт, то придётся явно добавить bHighlight=true.
Или я вас неправильно понял?