LnkView — LNK-file Viewer

Здесь можно обсудить ваш любимый плагин.
User avatar
HaRT
Moderator
Posts: 9530
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 109 times
Been thanked: 229 times

Post by HaRT »

Latest post of the previous page:

John Doe wrote:Разве плагин может вернуть таблицу
Если правда, что плагин может вернуть только массив, то вроде ж это может быть массив таблиц (см. третий кусок кода в вопросе и пояснение перед ним).
Фар есть инструмент, а не нянька. © 2009 DrKnS
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

HaRT wrote:
John Doe wrote:Разве плагин может вернуть таблицу
Если правда, что плагин может вернуть только массив, то вроде ж это может быть массив таблиц (см. третий кусок кода в вопросе и пояснение перед ним).
Тут основной вопрос - это удобство пользования результатами работы плагина в макросе.
Нам бы консультацию крутого эксперта по макросам получить...
Может shmuel что-нибудь посоветует?
Shmuel
Posts: 6166
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 329 times

LNK-file viewer

Post by Shmuel »

stasf wrote: Тут основной вопрос - это удобство пользования результатами работы плагина в макросе.
Как вы уже отметили выше, передачу таблицы можно реализовать передачей двух массивов: ключей и значений. А вот нужно ли это делать - другой вопрос.

Я бы мог добавить поддержку передачи таблиц, просто до сих пор такой потребности не возникало. Мне кажется, можно было бы обойтись и без таблицы, просто фиксированной последовательностью передаваемых значений. Если кто сильно хочет передачу таблиц - виш на мантис, но быстрой реакции не обещаю, есть другие дела.
User avatar
HaRT
Moderator
Posts: 9530
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 109 times
Been thanked: 229 times

LNK-file viewer

Post by HaRT »

Shmuel wrote: Я бы мог добавить поддержку передачи таблиц, просто до сих пор такой потребности не возникало.
Правильно ли я понимаю, что и массив таблиц сейчас из плагина не передать?
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

Post by John Doe »

HaRT wrote:
John Doe wrote:Разве плагин может вернуть таблицу
Если правда, что плагин может вернуть только массив, то вроде ж это может быть массив таблиц (см. третий кусок кода в вопросе и пояснение перед ним).
Так прямо не получится передать lua-объект через Far API.
Можно реализовать только обходным путём.
Shmuel wrote:Мне кажется, можно было бы обойтись и без таблицы, просто фиксированной последовательностью передаваемых значений.
По крайней мере для обсуждаемого случая этого кажется достаточно.
Shmuel
Posts: 6166
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 329 times

LNK-file viewer

Post by Shmuel »

HaRT wrote: Правильно ли я понимаю, что и массив таблиц сейчас из плагина не передать?
Если одну таблицу нельзя передать, то ясно, что и массив таблиц нельзя. Это если говорить о прямом API. А передать по заранее обговорённой конвенции можно что угодно и сейчас, в том числе и массив таблиц.
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

HaRT wrote: Правильно ли я понимаю, что и массив таблиц сейчас из плагина не передать?
Ну да, исходя из содержания FarMacroValue похоже, что только массив массивов можно...
Только как этим на стороне макроса пользоваться?
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

John Doe wrote:
Shmuel wrote:Мне кажется, можно было бы обойтись и без таблицы, просто фиксированной последовательностью передаваемых значений.
По крайней мере для обсуждаемого случая этого кажется достаточно.
Честно говоря, фиксированный список приведет к сужению возможностей...
Ведь потребности у всех разные. Для кого-то пути к таргету достаточно (хотя, правильно извлечь его, учитывая многообразие внутреннего содержания LNK-файла - отдельная тема), а для кого-то (кто занимается forensics examinations) может понадобиться извлечь поле
/XtraData/Tracker Data/Target DROIDs/Birth ObjectID/TimeStamp

Так что, хотелось бы сделать простой, удобный и универсальный механизм доступа к данным...

С учетом обсуждения у кого-то конкретные возражения против первоначального варианта
stasf wrote: local LnkFlags {, var} = Plugin.SyncCall ( LnkViewGUID, LnkFileName {, LnkDataField} )
с учетом возможностей
stasf wrote: local Flags, TargetPath, TargetParams = Plugin.SyncCall(LnkViewGUID, LnkFileName, "@TargetPath", "@TargetParams")
и
stasf wrote: local Flags, LnkFields = Plugin.SyncCall(LnkViewGUID, LnkFileName, "/")
имеются?
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

Shmuel wrote:Если одну таблицу нельзя передать, то ясно, что и массив таблиц нельзя.
И ведь вот это:
stasf wrote:

Code: Select all

Plugin.Call(LnkViewGUID)
будет открывать панель LNK-viewer'а на текущем файле в активной панели (если он подходящего формата).
тоже, наверное, не получится?
Панельные методы-то вызывать, похоже, некому :-(
Shmuel
Posts: 6166
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 329 times

LNK-file viewer

Post by Shmuel »

stasf wrote: Панельные методы-то вызывать, похоже, некому
Если это вопрос ко мне, то я его не понял.
Но саму идею считаю неправильной, то-есть считаю, что плагин должен получать имя файла всегда, а что ему передать, макрос сам разберётся.
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

Shmuel wrote:
stasf wrote: Панельные методы-то вызывать, похоже, некому
Если это вопрос ко мне, то я его не понял.
Ну, я имел в виду, что после возврата из OpenW c OPEN_FROMMACRO Far в любом случае не будет вызывать никаких там GetFindDataW и пр...
Shmuel wrote:Но саму идею считаю неправильной, то-есть считаю, что плагин должен получать имя файла всегда, а что ему передать, макрос сам разберётся.
Да - согласен - Вы разрешили мои сомнения - спасибо.
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

SUSim wrote: Если Вы реализуете возможность отдавать в макрос, хотя бы, рабочую папку и объект запуска, то многое другое уже можно будет развить макросами!!!
Реализовано в версии плагина 1.2.0
stasf
Posts: 111
Joined: Wed 10 Dec, 2014 22:53
Has thanked: 2 times
Been thanked: 1 time

LNK-file viewer

Post by stasf »

SUSim wrote: ( - ссылку на класс в реестре и из неё, всё таки, вытащить закупаемый файл)
А вот про это не могли бы Вы поподробнее объяснить, что имеется в виду ?
Я сейчас как раз размышляю над тем, как бы усилить алгоритм извлечения имени таргет-файла...
User avatar
Wave
Posts: 1772
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 4 times
Been thanked: 16 times

LNK-file viewer

Post by Wave »

Не совсем понял, можно ли как-то и как именно получить путь, на который ссылается ярлык, с тем чтобы перейти по этому пути? В смысле, запустить на каком-нить Far.lnk и перейти на %FARHOME%\Far.exe
Пользуюсь ФАРом больше 20 лет © собирательный.
User avatar
John Doe
Бюрократ
Posts: 12872
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 293 times

LNK-file viewer

Post by John Doe »

Справка для кого писана?
virjokk
Posts: 2
Joined: Mon 04 Oct, 2010 19:20

LNK-file viewer

Post by virjokk »

Планируется ли возможность настройки шаблона имени создаваемой ссылки в директории ссылок?
Post Reply

Return to “Обсуждение плагинов”