FavDoc

Название FavDoc
Имя файла (*.txt) FavDoc.txt
Описание Составляет список "избранных документов", позволяет их загружать в приложении по умолчанию
Автор Вахмурка
Параметры "%P%N"
Вызываемые плагины ini, win, vec, file
Иконка
Версия 1.0
Дата обновления 20.08.17
args Path

static Base = pprofolder ++ "scripts\ini\FavDoc.ini"
static Sec = "Documents"
local i, Item, Num, Mouse
static Quote = ?+"+
static Items
static D = "Doc"
static D1 = "Doc1"

if(ini.check_exists(Base, Sec, D1) != 1)
	Items = line(ini.enum_keys(Base, Sec), 0)

flag set 1

static v = vec.create(Items + 2)

if(not v) do
	messagebox("ok error", "Vector not created", "FavDoc plugin error #1")
	quit
endif

for(i = 1; i <= Items; i++)
	Item = ini.get(Base, Sec, D ++ i)
	v[i + 1] = Item
	if(Item == Path) do
		flag clear 1
		Num = i + 1
	endif
endfor

v[0] = ifelse(pproflag(1), "Add ", "Remove ") ++ Quote ++ Path ++ Quote
v[1] = "*sep"

win.lastmouse(1)
Item = v.showmenu("", "", 1)
local Mouse = win.lastmouse(0)

if(abs(Item) == 1) do
	quit
elseif(Item == 0)
	if(pproflag(1)) do
		ini.set(Base, Sec, D1, Path)

		for(i = 2; i < Items + 2; i++)
			ini.set(Base, Sec, D ++ i, v[i])
		endfor
	else
		.@Delete(Num)
	endif
else
	if(Mouse == 1) do
		file.doverb(v[Item], "Open")
	else
		.@Delete(Item)
	endif
endif

quit
//===================================================
Function Delete(Num)
local Shift, i

ini.delete_section(Base, Sec)

for(i = 2; i < Num; i++)
	Shift = i - 1
	ini.set(Base, Sec, D ++ Shift, v[i])
endfor

for(i = Num + 1; i < Items + 2; i++)
	Shift = i - 2
	ini.set(Base, Sec, D ++ Shift, v[i])
endfor

Комментарии

Сначала нужно записать файл в директорию pprofolder\scripts\ini\, где pprofolder - домашняя директория PowerPro (обычно c:\Program Files\PowerPro).

Затем поставьте курсор на файл, который вам приходится открывать чаще других, и запустите скрипт. При первом запуске там будет всего лишь команда "Добавить " и имя текущего файла. После исполнения команды текущий файл добавится в меню. Левый щелчок по имени файла из меню откроет файл в ассоциированном приложении. Количество файлов в списке не ограничено.

Удалить файл из меню можно двумя способами: либо щелкнув правой кнопкой крысы по его имени, либо вновь поставив курсор на этот файл и запустив скрипт. Тогда первая строка будет иметь вид "Удалить " и имя файла.


На главную Все о Total Commander PowerPro PowerPro & Total Commander