Работает ли функция Viewer() или Editor()
как создать модальный просмотрщик/редактор из области dialog/shell?
Если для диалога, всё просто и успешно выполняются:
far.DialogRun(dialog)
far.DialogFree(dialog)
то для far.Viewer или far.Editor - падают: attempt to call field 'Editor' (a nil value)
Задействование стандартных окон из скриптов
-
- Posts: 6938
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 42 times
- Been thanked: 555 times
Ликбез по Lua
В папке %FARHOME%\Encyclopedia есть документация, в данном случае luafar_manual.chm.
Там найдите функции viewer.Viewer и editor.Editor.
Ликбез по Lua
Shmuel,
Даже читать не пришлось, сразу вписал viewer.Viewer и заработало!
(это прямь сверх-неочевидные вещи, сколько копья сломаны с этой интернетной-справкой)
Спасибо!
Возможно ли вызвать диалог far.Guids.ViewerSearchId (это в просмотрщике F7-поиск) из любого места, например, Shell ?
Мне хотя бы самого диалога вызвать без выполнения поиска (искать ничего не нужно, нужно само окно "Поиск").
Думал через far.DialogRun(dialog), но в ней, вроде нет указателя на "far.Guids.ViewerSearchId"
Даже читать не пришлось, сразу вписал viewer.Viewer и заработало!
(это прямь сверх-неочевидные вещи, сколько копья сломаны с этой интернетной-справкой)
Спасибо!
Возможно ли вызвать диалог far.Guids.ViewerSearchId (это в просмотрщике F7-поиск) из любого места, например, Shell ?
Мне хотя бы самого диалога вызвать без выполнения поиска (искать ничего не нужно, нужно само окно "Поиск").
Думал через far.DialogRun(dialog), но в ней, вроде нет указателя на "far.Guids.ViewerSearchId"
-
- Posts: 6938
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 42 times
- Been thanked: 555 times
- buniak_a_h
- Posts: 4386
- Joined: Sat 20 Apr, 2013 00:17
- Location: Санкт-Петробад
- Has thanked: 235 times
- Been thanked: 657 times
- Contact:
Задействование стандартных окон из скриптов
А я представляю, извините…
В макросе очень часто хочется вызвать некие «стандартные» действия *диалог копирования с последующим копированием, например). Собственно, сам диалог легко намакросить. А вот последующие действия (копирование, реакция на "файл уже есть") - я до сих пор не знаю как. Причём, я почти уверен, что именно копирование в ФАРе оформлено отдельной процедурой; только интерфейс к ней не опубликован.
Про far.Guids.ViewerSearchId: я делал панельный модуль просмотра таблиц, доступных из _G. В этом модуле был поиск по Alt+F7. А окно демонстрации результатов пришлось делать самому, старался сделать "похожим" на far.Guids.ViewerSearchId. Насколько было бы проще, если бы этот диалог (с указанием back-функций для обработки F3,F4 и т.п.) был бы доступен для вызова как функция. Увы, мечты-мечты…
Last edited by buniak_a_h on Sun 03 Nov, 2024 19:32, edited 2 times in total.
- buniak_a_h
- Posts: 4386
- Joined: Sat 20 Apr, 2013 00:17
- Location: Санкт-Петробад
- Has thanked: 235 times
- Been thanked: 657 times
- Contact:
Задействование стандартных окон из скриптов
Рекомендую посмотреть состав глобальной таблицы _G (например, используя Lua Explorer Advanced. Там Вы увидите, что
Viewer
и Editor
-- таблицы. Ну а для удобства написания макросов рекомендую мои скрипты LuaComplete Tabbed и Active-Help. Первый позволяет выбрать из всех доступных функций нужную (чтобы не запоминать имена), а второй - получить справку по этой функции (из редактора, командной строки или из диалога, выводимого первым скриптом).