shmuz2:
Angel_Ka
Всё технически можно сделать, но ничего пока не обещаю.
Считывание имён файлов из файла - это на самом деле очень быстрая процедура. Большая часть упомянутых вами 110 секунд тратятся на поиск и исключение дубликатов (которых, как правило, нет - но время тратится), а также на проверку существования файлов на диске (несуществующие на панель не попадают).
Но чтобы вы не огорчались, в качестве "презента" привожу здесь макрос для формирования бранч-файла, который делает это быстрее плагина. (Я надеялся, что вы сами его сделаете или Alexyz21, но вижу, что этого не происходит. Естественно, вы можете этот макрос доработать под свои нужды.
Код:
Angel_Ka
Всё технически можно сделать, но ничего пока не обещаю.
Считывание имён файлов из файла - это на самом деле очень быстрая процедура. Большая часть упомянутых вами 110 секунд тратятся на поиск и исключение дубликатов (которых, как правило, нет - но время тратится), а также на проверку существования файлов на диске (несуществующие на панель не попадают).
Но чтобы вы не огорчались, в качестве "презента" привожу здесь макрос для формирования бранч-файла, который делает это быстрее плагина. (Я надеялся, что вы сами его сделаете или Alexyz21, но вижу, что этого не происходит. Естественно, вы можете этот макрос доработать под свои нужды.
Код:
local function search() local t=Far.UpTime local scr = far.SaveScreen() far.Message("Wait...", "", "") local fp = assert(io.open(APanel.Path.."\\filelist.txt", "w")) far.RecursiveSearch(APanel.Path, "*", function(item,fullpath) fp:write(fullpath,"\n") end, "FRS_RECUR") fp:close() far.RestoreScreen(src) panel.UpdatePanel(nil,1,true) panel.RedrawPanel(nil,1) far.Show(Far.UpTime-t) end Macro { description="Make file list"; area="Shell"; key="CtrlShiftF1"; action=search; } |