Панель для результатов поиска файлов

Здесь выкладываются готовые к использованию макросы и скрипты.
Post Reply
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Панель для результатов поиска файлов

Post by IgorZ »

Описание:
Скрипт является панельным модулем, предназначенным заменять временную панель при выводе результатов поиска файлов. Основные отличия:
  • форма вывода информации приближёна к формату результатов поиска в диалоге поиска Far;
  • функциональность скрипта, в отличие от стандартной временной панели, ограничена реальными файлами;
  • работа с файлами внутри архивов.


Требуемая версия Far 3.0.5182+.

Замечание: скрипт передаёт список содержимого плагину "Временная панель" через файл. Сборки плагина 107-109 при заполнении Временной панели содержимым из файла для каждого элемента заполняют APanel.UNCPath полным именем (включая абсолютный путь) файла-списка. Если это может сломать работу Ваших скриптов, используйте сборку Временной панели 106 от более ранней версии Far, а лучше перейдите на Far 3.0.5641+, содержащий Временную панель сборки 110+ с устранённой вышеописанной особенностью.



Attachments
TmpPanel.1.3.5.7z
(14.48 KiB) Downloaded 169 times
Last edited by IgorZ on Thu 12 May, 2022 11:40, edited 23 times in total.
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

Latest post of the previous page:

Подтверждаю.
У меня такой полный текст ошибки при попытке нажатия кнопочки "Панель":
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Панель для результатов поиска файлов

Post by citRiks »

skipik wrote: Fri 10 Jan, 2020 20:20 У меня такой полный текст ошибки
За счёт чего у Вас более полная информация в тексте красного сообщения?
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

citRiks, честно - не знаю. У меня сборка на основе Victor_VG, с небольшими правками под себя.
LAT
Posts: 343
Joined: Thu 21 Jan, 2010 20:00
Has thanked: 22 times
Been thanked: 39 times

Панель для результатов поиска файлов

Post by LAT »

citRiks wrote: Fri 10 Jan, 2020 20:35 За счёт чего у Вас более полная информация в тексте красного сообщения?
Похоже на StackTracePlus.lua.
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

LAT, да, вы правы, это оно помогает выводить инфу.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Панель для результатов поиска файлов

Post by citRiks »

LAT wrote: Fri 10 Jan, 2020 23:25 Похоже на StackTracePlus.lua
skipik wrote: Sat 11 Jan, 2020 08:19 LAT, да, вы правы, это оно помогает выводить инфу
Подтверждаю. После установки этого модуля содержнание красного сообщения стало .
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Панель для результатов поиска файлов

Post by IgorZ »

citRiks wrote: Sat 11 Jan, 2020 08:39
LAT wrote: Fri 10 Jan, 2020 23:25 Похоже на StackTracePlus.lua
skipik wrote: Sat 11 Jan, 2020 08:19 LAT, да, вы правы, это оно помогает выводить инфу
Подтверждаю. После установки этого модуля содержнание красного сообщения стало .
Повторить не удалось. Попробуйте заменить строки 395-402:

Code: Select all

    DRes[#DRes+1] = GetArcInfo(dir..n) or { -- запишем информацию о файле в список, взяв, если получится, из архива, иначе из строки (нет времени)
      HostFile = dir:match("(.-\\.*)%:"), -- хост-файл
      LastWriteTime = win.SystemTimeToFileTime(FT)-win.FileTimeToLocalFileTime(0), -- дата последнего изменения
      FileSize = tonumber(s), -- размер
      FileName = dir..n, -- имя файла
      AlternateFileName = dir..n, -- альтернативное имя файла пусть совпадает с основным
      FileAttributes = a:lower(), -- атрибуты в нижнем регистре
    }
на

Code: Select all

    local ft1,ft2 = win.SystemTimeToFileTime(FT),win.FileTimeToLocalFileTime(0)
    DRes[#DRes+1] = GetArcInfo(dir..n) or { -- запишем информацию о файле в список, взяв, если получится, из архива, иначе из строки (нет времени)
      HostFile = dir:match("(.-\\.*)%:"), -- хост-файл
      LastWriteTime = ft1-ft2 --win.SystemTimeToFileTime(FT)-win.FileTimeToLocalFileTime(0), -- дата последнего изменения
      FileSize = tonumber(s), -- размер
      FileName = dir..n, -- имя файла
      AlternateFileName = dir..n, -- альтернативное имя файла пусть совпадает с основным
      FileAttributes = a:lower(), -- атрибуты в нижнем регистре
    }
и, если ошибка будет повторяться, снова выложить сообщение об ошибке (использовать StackTracePlus обязательно).
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

IgorZ, теперь такая ошибка:

Last edited by skipik on Wed 12 Feb, 2020 11:53, edited 1 time in total.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Панель для результатов поиска файлов

Post by John Doe »

skipik, что если полностью убрать все остальные скрипты.
https://t.me/FarManager — Telegram чат
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

John Doe, https://www.dropbox.com/s/fu7tvt73ardyj ... 12.7z?dl=1
Вот нулёвый фар, только с TmpPanel + StackTracePlus, на котором повторяется.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Панель для результатов поиска файлов

Post by John Doe »

skipik wrote: Wed 12 Feb, 2020 12:04 StackTracePlus
Без него проблема не воспроизводится?
https://t.me/FarManager — Telegram чат
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

John Doe, воспроизводится, я добавил его по просьбе IgorZ, чтобы лог более полный был.
IgorZ
Posts: 790
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 15 times
Been thanked: 93 times

Панель для результатов поиска файлов

Post by IgorZ »

skipik wrote: Wed 12 Feb, 2020 11:49 IgorZ, теперь такая ошибка:

Моя вина. Пропустил запятую. Строка 398 (с патчем) должна выглядеть так (запятая после ft2):

Code: Select all

      LastWriteTime = ft1-ft2, --win.SystemTimeToFileTime(FT)-win.FileTimeToLocalFileTime(0), -- дата последнего изменения
skipik
Posts: 318
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 67 times
Been thanked: 29 times

Панель для результатов поиска файлов

Post by skipik »

IgorZ, теперь так:



Это на полностью свежем фаре, с одним макросом.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

Панель для результатов поиска файлов

Post by citRiks »

Спросил я совета у старца XeRoX'a об этой незадаче, и вот он так говорит:
Перво-наперво, нужно прочитать "Отче Наш" со смиренным сердцем
И придет разумение, что в UTF8 дьявол прячется окаянный.
Второй дьявол прячется в РегЕкспе, к православной кириллице негодном.
Третий же дьявол в цифирях года сидит,
оные по еретической задумке 4-значные должны быть.

И увещеваю народ православный мануалы от лукаваго и не читать!
Ибо пустое это, лишь молитва спасает
Last edited by citRiks on Thu 13 Feb, 2020 23:05, edited 1 time in total.
LAT
Posts: 343
Joined: Thu 21 Jan, 2010 20:00
Has thanked: 22 times
Been thanked: 39 times

Панель для результатов поиска файлов

Post by LAT »

citRiks wrote: Thu 13 Feb, 2020 23:02 Спросил я совета у старца XeRoX'a об этой незадаче, и вот он так говорит:
Перво-наперво, нужно прочитать "Отче Наш" со смиренным сердцем
И придет разумение, что в UTF8 дьявол прячется окаянный.
Второй дьявол прячется в РегЕкспе, к православной кириллице негодном.
Третий же дьявол в цифирях года сидит,
оные по еретической задумке 4-значные должны быть.

И увещеваю народ православный мануалы от лукаваго и не читать!
Ибо пустое это, лишь молитва спасает
Паче чаяния, старец ваш в грехе погряз. Ибо UTF8 есмь универсальная кодировка, Богу угодная, а РегЕкспы Божественным Промыслом предвселися, и не висети от святого Кирилла письмен. Иже цифери года и лукавы, то весьма не понеже враг рода человеческого лютует, а поелику грех первородный довлеет над человеками. И негоже взор свой вменяти на ереси и нерадити Писанием.
Last edited by LAT on Fri 14 Feb, 2020 00:41, edited 2 times in total.
Post Reply

Return to “Полезные макросы и скрипты”