| 
 | 
| Название | Button2em_ | 
| Имя файла (*.txt) | Button2em.txt | 
| Описание | Преобразование кнопки в пользовательскую команду | 
| Автор | Вахмурка | 
| Параметры | - | 
| Вызываемые плагины | file, ini, vec | 
| Иконка | 
 | 
    
| Версия | 1.2 | 
| Дата обновления | 15.02.2012 | 
local Path = путь_к_панелям\*.bar"
local Bar = pickfile(file.listfiles(Path, 0), "Pick Bar File")
static BB = "Buttonbar"
static M = "menu"
if(not Bar)
	quit
local i, Mess, Counter
local Buttons = ini.get(Bar, BB, "Buttoncount")
if(ini_status != "OK") do
	messagebox("ok error", ini_status, "INI plugin error #1")
	quit
endif
local v = vec.create(Buttons)
if(v <= 0) do
	messagebox("ok error", "Failure creating vector", "VEC plugin Error #1")
	quit
endif
for(i = 1; i <= Buttons; i++)
	Path = ini.check_exists(Bar, BB, M ++ i)
	if(Path != 3)
		continue
	Mess = Mess ++ ini.get(Bar, BB, M ++ i) ++ esc(?+\n+, ?+\+)
	v[Counter] = i
	Counter++
endfor
pickstring(Mess, "Pick a button from " ++ Bar, 2)
if(not _pickedline_)
	quit
Counter = v[_pickedline_ - 1]
v.destroy
v = vec.createfromwords("button cmd path param menu")
if(v <= 0) do
	messagebox("ok error", "Failure creating vector", "VEC plugin Error #2")
	quit
endif
Buttons = ini.get(Bar, BB, M ++ Counter)
Buttons = case("title", Buttons)
Mess = "em_" ++ replacechars(Buttons, " ", "")
Buttons = inputdefault(Mess, "Enter new user command name")
if(not Buttons)
	quit
Path = env("WINDIR") ++ "\usercmd.ini"
for(i = 0; i < 4; i++)
	if(ini.check_exists(Bar, BB, v[i] ++ Counter) == 3) do
		Mess = ini.get(Bar, BB, v[i] ++ Counter)
		ini.set(Path, Buttons, v[i], Mess) 
	endif
endfor
Скрипт преобразует кнопку с панели в пользовательскую команду (например, с целью присвоения последней горячей клавиши). Сначала в теле скрипта следует указать путь к файлам панелей (*.bar) - обычно он определяется ключом TabDir конфигурации. Далее, указывается путь к файлу usercmd.ini, обычно совпадающий с путем к wincmd.ini.
После запуска скрипта сначала выбираем панель, затем кнопку на ней. Название кнопки преобразуется и предлагается как имя новой команды, но его можо изменить.
 
 | 
На главную | 
 
 | 
Все о Total Commander | 
 
 | 
PowerPro | 
 
 | 
PowerPro & Total Commander |