Описание тернарного условия


Ternary

Условно выбирает один из двух вариантов, основанных на результате выражения.

(expression)?(expression_1 if expression is True):(expression_2 if expression is False)

Параметры

expression логическое_выражение?выражение_1:выражение_2

Примечания

Алгоритм работы операции следующий:
  Вычисляется логическое выражение expression.
  Если логическое выражение expression истинно, то вычисляется значение выражения expression_1, в противном случае — значение выражения expression_2.
  Вычисленное значение возвращается.

Рекомендуется выражения заключать в скобки.

Операторы сравнения и логические операторы см. приложение

Примеры:
 Как создать кнопку?


exect=$var_i1=5||$var_i2=5||$var_i3=$var_i1<>$var_i2?10:20 GLOBALEXECT<a> ;; пример присвоение переменной $var_i3 значения, относительно условия (результат 20, т.к условие 5<>5 не верно)

exect=$var_i1=5||$var_i2=5||$var_i3=$var_i1=$var_i2?10:20 GLOBALEXECT<a> ;; пример присвоение переменной $var_i3 значения, относительно условия (результат 10, т.к условие 5=5 верно)

exect=$var_i1=1||$var_i2=2||$var_i3=3||$var_i4=4||$var_i5=($var_i1=$var_i2~~AND~~$var_i3=$var_i4)?10:20 GLOBALEXECT<a> ;; пример присвоение переменной $var_i5 значения, относительно условия (результат 20, т.к условие 1=2 и 3=4 не верно)

exect=$var_i1=1||$var_i2=2||$var_i3=3||$var_i4=4||$var_i5=($var_i1<>$var_i2~~AND~~$var_i3<>$var_i4)?10:20 GLOBALEXECT<a> ;; пример присвоение переменной $var_i5 значения, относительно условия (результат 10, т.к условие 1<>2 и 3<>4 верно)

exect=$var_i1=1||$var_i2=2||$var_i3=3||$var_i4=4||$var_i5=($var_i1=$var_i2~~OR~~$var_i3<>$var_i4)?10:20 GLOBALEXECT<a> ;; пример присвоение переменной $var_i5 значения, относительно условия (результат 10, т.к одно из условий 1=2 , 3<>4 верно)

exect=$var_s0=ClipGet()||$var_s1=StringRegExp('$var_s0','(\d{1,4}x\d{1,4})')=0?'100x100':'$var_s0'||_ViewValues('$var_s1') ;; если содержимое буфера обмена не является строкой вида 0x0 или 00x00 или 000x000 или 0000x0000 (где вместо нуля может быть любая цифра), то переменная $var_s=100x100

exect=$var_s1=StringRegExp(ClipGet(),'(\d{1,4}x\d{1,4})')=0?'100x100':ClipGet()||_ViewValues('$var_s1') ;; если содержимое буфера обмена не является строкой вида 0x0 или 00x00 или 000x000 или 0000x0000 (где вместо нуля может быть любая цифра), то переменная $var_s=100x100

<FOR> 1 <TO> 5 exect=$var_sc=Mod(:INDEX:)=0?'blue-red':'red-blue'||_ViewValues('$var_sc') <NEXT> ;; пример получения разных значений переменной $var_sc при чётном/нечётном счётчике в цикле

exect=$var_aa=StringSplit('AA|BB|CC|DD|EE|','|',1) <FOR> 1 <TO> 10 exect=$var_sc=Mod(:INDEX:,5)||$var_sc=$var_sc=0?5:$var_sc||$var_sc=$var_aa[$var_sc]||_ViewValues('$var_sc') <NEXT> ;; пример поочерёдного использования значений массива $var_aa в цикле

exect=$var_i1=[info=x10]||$var_i2=[info=x11]||$var_i3=($var_i1=0~~OR~~$var_i2=0)?_Exit():($var_i1>$var_i2?$var_i2:$var_i1) slist=[tc=AL] sends=[tc=TL]??-1 forpgs <FOR> 1 <TO> $var_i3 copyy=GLOBALSLIST<:INDEX:>||GLOBALSENDS<:INDEX:>//0 <NEXT> ;; копировать выделенные файлы по одному в соответствующие порядку выделения папки другой панели

sends=@<info=i1%P%N//>??1 sends=@<info=i2%P%N//>??2 sends=x!!3||##rndm<3|30>||#Hcrc32|1 exect=$var_its=(GLOBALSENDS<1>>GLOBALSENDS<2>?GLOBALSENDS<2>:GLOBALSENDS<1>)/2 exect=$var_obch=$var_its*2 start=Magick||%P%N||-resize||"$var_obch"x"$var_obch"!||-matte||-fill||none||-draw||"color~~0,0~~reset"||-fill||white||-draw||"circle~~$var_its,$var_its~~0,$var_its"||%TCIMG_TEMP%\temp.png||&&hide||&&wait start=Magick||%P%N||-matte||%%TCIMG_TEMP%%\temp.png||-compose||DstIn||-composite||"%pOut-GLOBALSENDS<3>".png||&&hide||&&wait||upd<1> tempxx ;; создать из изображения под курсором круглое изображение в активной панели с взятием фрагмента из центра
exect=$var_i=##$INI<8!!%%COMMANDER_INI%%!!Configuration!!CopyComments>||$var_st=WinGetTitle('[ACTIVE]') tcimg=$cm516 buttn=TDLGCONFIGALL||&#43;tcTCSBO22|$w|$h||&#43;tcTCSBO27||&#43;tcTCSBO24 exect=$var_s='Копирование~~Descript.ion~~'&($var_i=2?'ВКЛЮЧЕНО':'ОТКЛЮЧЕНО') pause=500 title=$var_s pause=5s title=$var_st ;; включить/выключить копирование Descript.ion + отобразить текущее состояние настройки в заголовке

exect=$var_i=##$INI<8!!%%COMMANDER_INI%%!!Configuration!!CopyComments>||$var_st=WinGetTitle('[ACTIVE]')||$var_s='Копирование~~Descript.ion~~'&($var_i=10?'ВКЛЮЧЕНО':'ОТКЛЮЧЕНО') title=$var_s pause=5s title=$var_st ;; отобразить текущее состояние настройки в заголовке

%Zexect=$var_i=##$INI<8!!%%COMMANDER_INI%%!!Configuration!!CopyComments> tcimg=$cm516 buttn=TDLGCONFIGALL||&#43;tcTCSBO22|$w|$h||&#43;tcTCSBO27||&#43;tcTCSBO24 exect=$var_s=$var_i=2?'desc_red'&'.ico!!desc_gren'&'.ico':'desc_gren'&'.ico!!desc_red'&'.ico' textt=%%COMMANDER_PATH%%\BAR\000_TCIMG_Test.bar||$var_s||backup<0> barupd ;; Переключение настройки копирования Descript.ion с изменением значка кнопки активной панели (значки desc_gren.ico и desc_red.ico необходимо положить в корень TC)

exect=$var_handle=WinGetHandle('[CLASS:Notepad]')||$var_s=WinActive(Eval('var_handle'))?'активно':'не~~активно'||_ViewValues('$var_s') ;; проверяет активно ли окно "Блокнота"

exect=$var_handle=WinGetHandle('[CLASS:Notepad]')||$var_s=WinExists(Eval('var_handle'))?'существует':'не~~существует'||_ViewValues('$var_s') ;; проверяет существует ли окно "Блокнота"

exect=$var_istate=WinGetState('[CLASS:TTOTAL_CMD]')||$var_s=BitAND($var_istate,8)?'активно':'не~~активно'||_ViewValues('$var_s') ;; определяет активно или нет окно Total Commander

exect=$var_s=ProcessExists('notepad.exe')?'запущен':'не~~запущен'||_ViewValues('$var_s') ;; проверяет запущен ли процесс "Блокнота"

exect=$var_s=NOT~~ClipGet()?_Exit():0 ;; если буфер обмена пуст, то завершение работы (можно вставлять перед серией команд для проверки)

exect=$var_s=NOT~~ClipGet()?_Exit():'Буфер~~не~~пустой'||_ViewValues('$var_s') ;; если буфер обмена пуст, то завершение работы (можно вставлять перед серией команд для проверки)

exect=$var_a=StringSplit('%%COMMANDER_PATH%%\Bar\000_TCIMG_Test.bar|%%COMMANDER_PATH%%\Bar\084_AU3.bar|%%COMMANDER_PATH%%\Bar\000_TCIMG_Test_Exe.bar','|')||$var_si=EnvGet('COMMANDER_PATH')&'\WinButtonBar.ini'||$var_sb=IniRead('$var_si','Buttonbar','Buttonbar',Null)||$var_i=Number(_ArraySearch($var_a,'$var_sb')+1)||$var_i=($var_i>3~~Or~~$var_i=0)?1:$var_i||IniWrite('$var_si','Buttonbar','Buttonbar','$var_a[$var_i]')||IniWrite('$var_si','Buttonbar','Buttonbar',Execute('$var_a[$var_i]')) ;; записать один из 3-х заданных путей .bar по кругу в WinButtonBar.ini в секцию [Buttonbar]

exect=$var_a=PixelSearch(0,0,20,300,0xFF0000)||IsArray($var_a)?_ViewValues($var_a):_ViewValues('цвет~~не~~найден') ;; получить массив координат пикселя красного цвета

exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||SendKeepActive(HWnd($var_h)) <FOR> 1 <TO> 10 exect=Send('привет')||Sleep(500) <NEXT> exect=SendKeepActive(Null)||WinClose(HWnd($var_h)) ;; запустить "Блокнот" и удерживать окно блокнота активным при использовании функции Send()

exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||IsHWnd(Eval('var_h'))?_ViewValues('Это~~дескриптор~~HWND'):_ViewValues('Это~~НЕ~~дескриптор~~HWND') ;; запустить "Блокнот" и проверить дескриптор окна на валидность

exect=$var_s=FileSelectFolder('Выберите~~каталог.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}',1)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; отображает диалог выбора папки. Если не выбрана, то выход

exect=$var_s=FileSaveDialog('Выберите~~имя.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','Скрипт(*.aut;*.au3)|Текстовый~~файл(*.ini;*.txt)',2)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; отображает диалог сохранения файла. Если не выбран, то выход

exect=$var_s=FileOpenDialog('Выберите~~имя.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','Скрипт(*.aut;*.au3)|Текстовый~~файл(*.ini;*.txt)',2)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; отображает диалог открытия файла. Если не выбран, то выход

exect=$var_section=@UserName='Андрей'?'F4':'Open_1' openz=%WL||$var_section ;; открыть выделенные файлы в заданных программах (настройки берутся относительно имени пользователя)

exect=$var_a=StringSplit(StringReplace('??%%COMMANDER_PATH%%\TCIMG.exe?~~?openup??|??%%COMMANDER_PATH%%\Utilities\TotalCom\ChoiceEditor\ChoiceEditor.exe??','?',Chr(34)),'|')||$var_sc=EnvGet('COMMANDER_INI')||$var_sp=IniRead('$var_sc','Configuration','Editor',Null)||$var_is=StringInStr('$var_sp','TCIMG')?2:1||IniWrite('$var_sc','Configuration','Editor',$var_a[$var_is]) rstart ;; переключение программы просмотра по F4 с перезагрузкой

exect=$var_i=(StringInStr(FileGetAttrib('%P%N'),'D')~~AND~~FileExists('%P%N'))?1:0||_ViewValues($var_i) ;; проверка: возвращает 1, если под курсором папка, 0 - если файл

exect=$var_a=5||$var_b=6||$var_imax=$var_a>$var_b?$var_a:$var_b||MsgBox(4096,'Сообщение','Максимальное~~число~~'&$var_imax) ;; определить максимальное число с помощью тернарного условия

exect=$var_a=5||$var_b=6||$var_imin=$var_a<$var_b?$var_a:$var_b||MsgBox(4096,'Сообщение','Минимальное~~число~~'&$var_imin) ;; определить минимальное число с помощью тернарного условия

exect=$var_a=25||$var_b=5||$var_icheck=(Int($var_a/$var_b)<>$var_a/$var_b)?0:1||MsgBox(4096,'Сообщение','Делимость.~~Результат:~~'&$var_icheck) ;; определить делимость одного числа на другое (1 - делится, 0 - не делится)

exect=$var_put=FileOpenDialog('Select~~the~~file~~to~~create~~a~~shortcut','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','File~~Wallet(*.exe)',2)||_ViewValues('$var_put')||$var_put=$var_put=''''?_Exit():$var_put||_ViewValues('$var_put') ;; отображает диалог открытия файла. Если не выбран, то выход

exect=$var_a=StringSplit('1a|'&'|3a|4a|5a|6a|7a|8a|9a','|',2) GLOBALEXECT<a> exect=$var_name='GLOBALEXECT<2>'=''''?'*':'имя'||_ViewValues('$var_name') ;; пример проверки пустой ячейки

sends=-1 exect=$var_a='GLOBALSENDS<1>' GLOBALEXECT<a> exect=$var_name=StringRegExp('GLOBALEXECT<1>','^[~~-_]?$',0)?'>':'test'||_ViewValues('$var_name') ;; пример проверки буфера обмена: если в буфере пробел, "-", "_" или пустой, то в $var_name записывается знак > , иначе test

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Продолжить~~работу?',20)||$var_i=$var_n=7?_Exit():1||_ViewValues('Работа~~продолжена') ;; пример вызова диалога, завершение при нажатии на кнопку "Нет", продолжение при нажатии на кнопку "Да", при истечении 20 секунд после появления диалога так же продолжения работы...

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Отменить~~задачу?',20)||$var_i=$var_n=6?_Exit():1||_ViewValues('Работа~~продолжена') ;; пример вызова диалога, завершение при нажатии на кнопку "Да", продолжение при нажатии на кнопку "Нет", при истечении 20 секунд после появления диалога так же продолжения работы...

exect=$var_aa=_ArrayCreate(1,2) slist=PS<$f70//1//0//bar> forpgs <FOR> 1 <TO> GLOBALSLIST<0> sends=GLOBALSLIST<:INDEX:>||#Sbar5||@CRLF!!,~~ exect=$var_s='GLOBALSENDS<1>'=''''?'''':_ArrayAdd($var_aa,'GLOBALSLIST<:INDEX:>'&'~~'&'GLOBALSENDS<1>') <NEXT> exect=||_ViewValues($var_aa,'Поиск~~фразы~~'&ClipGet()&'~~в~~командах') ;; отобразить в таблице номера кнопок и имена панелей инструментов Total Commander, в которых в команде присутствует фраза из буфера

exect=$var_aa=_ArrayCreate(1,2) slist=PS<$f70//1//0//bar> forpgs <FOR> 1 <TO> GLOBALSLIST<0> sends=GLOBALSLIST<:INDEX:>||#Sbar5||@CRLF!!,~~ exect=$var_s='GLOBALSENDS<1>'=''''?'''':_ArrayAdd($var_aa,'GLOBALSLIST<:INDEX:>'&@CRLF&'GLOBALSENDS<1>') <NEXT> exect=||_ArrayToClip($var_aa,@CRLF) ;; записать в буфер обмена номера кнопок и имена панелей инструментов Total Commander, в которых в команде присутствует фраза из буфера

zlist=PS<%P%N//1//0//nfo> exect=$var_path='GLOBALZLIST<1>'=''''?'%P%N':'GLOBALZLIST<1>' modfs=PS<%P%N//1>||0||<mdata=$var_path> ;; для всех файлов папки под курсором изменить дату модификации с условием: если в папке есть файл .nfo, то дата модификации берётся из этого файла, если нет, то из папки под курсором

slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> zlist=PS<GLOBALSLIST<:INDEX:>//1//0//nfo> exect=$var_path='GLOBALZLIST<1>'=''''?'GLOBALSLIST<:INDEX:>':'GLOBALZLIST<1>' modfs=PS<GLOBALSLIST<:INDEX:>//1>||0||<mdata=$var_path> <NEXT> ;; для всех файлов каждой выделенной папки изменить дату модификации с условием: если в папке есть файл .nfo, то дата модификации берётся из этого файла, если нет, то из родительской папки

sends=c:\файл-список№1.txt??-1 exect=$var_s='' <FOR> 1 <TO> GLOBALSENDS<0> xends=c:\документ№2.txt??-1||formt<0!!(?m)(GLOBALSENDS<:INDEX:>.+)> exect=$var_s=GLOBALXENDS<0>>=6?'$var_s'&_ArrayToString($GLOBALXENDS,@CRLF,1)&@CRLF:'$var_s' <NEXT> asave=var_s||c:\документ№2_rez.txt||noarray<1> ;; извлечь все строки из файла c:\документ№2.txt в которых есть фразы из файла c:\файл-список№1.txt (количество строк равно или более 6-ти) и записать результат в файл c:\документ№2_rez.txt

sends=c:\файл-список№1.txt??-1 exect=$var_s='' <FOR> 1 <TO> GLOBALSENDS<0> xends=c:\документ№2.txt??-1||formt<0!!(?m)(GLOBALSENDS<:INDEX:>.+)> exect=$var_s=GLOBALXENDS<0>>=6?'$var_s'&'GLOBALSENDS<:INDEX:>'&@CRLF:'$var_s' <NEXT> asave=var_s||c:\документ№2_rez2.txt||noarray<1> ;; записать в файл c:\документ№2_rez2.txt все слова из списка c:\файл-список№1.txt, которые встретились 6-ть и более раз в строках файла c:\документ№2.txt

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Заменить~~содержимое~~в~~папке~~ПН?')||$var_i=$var_n=7?_Exit():1 delss=PS<%T%M>||1 copys=FOLDC<%WL>||%T%M//0 beepss ;; заменить содержимое каталога в панели назначения на содержимое выделенных папок в активной панели

sends=<info=o3%P%N//>??1 exect=$var_n=Floor('GLOBALSENDS<1>')||$var_n=$var_n<=1?1:($var_n<=10?2:($var_n<=100?3:($var_n<=500?4:5)))||_ViewValues($var_n) ;; пример получения размера папки и присвоения чисел диапазонов: меньше 1мб - 1, от 1 до 10мб - 2, от 10 до 100 мб -3, от 100 до 500мб, от 500 и выше - 5

itray=3 wends=-1||formt<63,56,54,51,55> slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> exect=$var_n=Floor('<info=o3GLOBALSLIST<:INDEX:>//>')||$var_n=$var_n<=1?1:($var_n<=10?2:($var_n<=100?3:($var_n<=500?4:5)))||$var_p='%%COMMANDER_PATH%%\Personal\commands\fold\$var_n.ico' icoft=GLOBALSLIST<:INDEX:>||0||$var_p||foldicon<favicon!!1!!1> <NEXT> attrb=FOLDC<$GLOBALSLIST//1//0//Desktop.ini>||-HS!!0 textx=FOLDC<$GLOBALSLIST//1//0//Desktop.ini>||&&([^^]+)!!$1@CRLFInfoTip=GLOBALWENDS<1>||backup<0> attrb=FOLDC<$GLOBALSLIST//1//0//Desktop.ini>||&#43;HS!!0 ;; назначить выделенным папкам иконки (в зависимости от размера папки будут назначены разные иконки) путь к папке с иконками %%COMMANDER_PATH%%\fold\ имена иконок 1,2,3,4,5

exect=$var_sys=@OSArch='X86'?'x86':'x64' start=%%COMMANDER_PATH%%\Neo\$var_sys\HexFrame.exe||workdir<%%COMMANDER_PATH%%\Neo\$var_sys> ;; запустить программу HexFrame, относительно системы x64/x86

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~текущую~~папку?')||$var_i=$var_n=7?_Exit():1 tcimg=$cm2002 delsm="%p"||1||upd<1> ;; удалить текущую папку (возможность отмены действия)

exect=$var_s=ClipGet()||$var_i=StringRegExp(ClipGet(),'([^A-Za-z\d])',0)?MsgBox(48+4096,'Результат','Число~~в~~буфере~~не~~является~~хэшем.')&_Exit():1||$var_i=StringLen('$var_s')||$var_n=$var_i=8?3:($var_i=32?1:($var_i=64?6:($var_i=128?8:MsgBox(48+4096,'Результат','Число~~в~~буфере~~не подходит~~под~~условие~~проверки.')&_Exit())))||$var_path=$var_n&'%P%N' <IF> <info=f$var_path|1//> = $var_s <THEN> exect=MsgBox(64+4096,'Результат','Контрольные~~суммы~~совпадают.') <ELSE> exect=MsgBox(48+4096,'Результат','Контрольные~~суммы~~не~~совпадают.') <ENDIF> ;; сравнить контрольные суммы файла под курсором и буфера обмена, в зависимости от длины строки буфера: если 8, то сравнение происходит по CRC32, если 32 - MD5, если 64 - SHA256, если 128 - SHA512, в сплывающем окне с ручным закрытием, сообщить результат

textv=C:\Test.txt exect=$var_n=MsgBox(4+32+262144,'Сообщение','Продолжить~~выполнение~~команды?')||$var_i=$var_n=7?_Exit():1 sends=C:\Test.txt??-1||&&[^\r\n]+=!! textt=C:\Test.txt||##TOTALCMD#BAR#DATA@CRLFGLOBALSENDS<x2>@CRLFGLOBALSENDS<x3>@CRLFGLOBALSENDS<x1>@CRLFGLOBALSENDS<x6>@CRLFGLOBALSENDS<x4> ;; открыть в просмотрщике файл C:\Test.txt , закрыть просмотрщик, в появившемся диалоговом окне выбрать продолжение команды или отмена, если продолжить, то в содержимом файла C:\Test.txt оставить все, что после первого знака равенства и манипулируя полученными строками привести их к желаемому виду

exect=$var_s=StringRegExp(ClipGet(),'(?i)^[a-z]',0)?'1,2':'2,1' sends=-1!!-1||#L$var_s GLOBALSENDS<a> ;; если в буфере обмена первая буква кириллицы, то поменять 1-ю и 2-ю строки

shape=22 exect=$var_i=##[group=BOX12]||$var_n=##[combo=BOX24]||$var_j=##[combo=BOX25]||$var_s=$var_i?'#x'&$var_n:$var_n&'x#'||_ViewValues('$var_s') imgnz=%WL||"%t"//0||$var_s||framewh<#|$var_j|$var_j> ;; склеить выделенные изображения, создав в другой панели изображение именем первого изображения, дополнительные параметры вводятся в диалоге
slist=[tc=AM] <FOR> 1 <TO> GLOBALSLIST<0> exect=$var_i=<info=o9%%TCIMG_TEMP%%\link-font.txt//> $FORCONT=$var_i=2?0:1 downl=GLOBALSLIST<:INDEX:>fonts//2||%%TCIMG_TEMP%%\link-font.txt||pause<1-2>||progres<> <NEXT> ;; если файл link-font.txt со списком ссылок существует в папке TCIMG_TEMP то тогда начать закачку по списку и сохранить данные в папке fonts

<FOR> 1 <TO> 5 infbx=InfoBox_TEST1 exect=$var_n=0 $FORCONT=$var_n=1?0:1 infbx=InfoBox_TEST2 <NEXT> ;; пример использования тега $FORCONT в цикле

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Отменить~~последнее~~переименование?')||$var_i=$var_n=7?_Exit():1 renms=$f200Lists\AfterRenaming.txt||list<$f200Lists\BeforeRenaming.txt>||upd<1> ;; отменить последнее переименование осуществленное командами TCIMG (требуется подтверждение)

exect=$var_i1=[info=x10]||$var_i2=[info=x11]||$var_i3=($var_i1=0~~OR~~$var_i2=0)?_Exit():($var_i1>$var_i2?$var_i2:$var_i1) slist=[tc=AL] sends=[tc=TL]??-1 forpgs <FOR> 1 <TO> $var_i3 movee=GLOBALSLIST<:INDEX:>||GLOBALSENDS<:INDEX:>//0 <NEXT> desel=10 ;; переместить выделенные файлы по одному в соответствующие порядку выделения папки другой панели

exect=$var_i1=[info=x10]||$var_i2=[info=x11]||$var_i3=($var_i1=0~~OR~~$var_i2=0)?_Exit():($var_i1>$var_i2?$var_i2:$var_i1) slist=[tc=AL] sends=[tc=TL]??-1 forpgs <FOR> 1 <TO> $var_i3 copyy=GLOBALSLIST<:INDEX:>||GLOBALSENDS<:INDEX:>//0 <NEXT> desel=10 ;; копировать выделенные файлы по одному в соответствующие порядку выделения папки другой панели

exect=$var_n=1||$var_i=$var_n=1?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример: если $var_n=1 , то выполняется одна команда, в ином случае другая

exect=$var_n=0||$var_i=$var_n=1?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример: если $var_n=0 , то выполняется одна команда, в ином случае другая

exect=$var_s=##@[tc=TA]||$var_p=StringRight('$var_s',1)='\'?'$var_s':''''||_ViewValues('$var_p') ;; проверяет наличия папки под курсором в другой панели, если папка, то переменная $var_p содержит её путь, если файл, то пустоту

exect=$var_n=1||$var_i=$var_n=1?_CmdCm('sends=%P%N??-1¦¦formt<1,63><¤>GLOBALSENDS<a>'):'''' ;; пример: если $var_n=1, то прочитать файл под курсором и вывести в таблице

sends=%P%N??-1 exect=$var_s='GLOBALSENDS<1>'||$var_i=1 <FOR> 1 <TO> GLOBALSENDS<0> exect=$var_i='GLOBALSENDS<:INDEX:>'='$var_s'?$var_i+1:2||$var_s='GLOBALSENDS<:INDEX:>'='$var_s'?'$var_s':'GLOBALSENDS<:INDEX:>' rends=GLOBALSENDS<:INDEX:>??:INDEX:||§!!$var_i <NEXT> GLOBALRENDS<a> ;; в содержимом файла под курсором в одинаковых строках заменить символ § на счётчик, который начинается с 2-х с каждой строкой не совпадающей с предыдущей и отобразить конечный результат в таблице переменной GLOBALRENDS

exect=$var_s=##@[tc=TA]||$var_p=StringRight('$var_s',1)='\'?'$var_s':'''' copyy=$f250TCIMGU.lng||$f250//1||**1!!?.bkk xends=[tc=TG]??1 rends=@$var_p??1||&&^(.).*!!$1||??2 textt=$f250TCIMGU.lng||§CKBU20GLOBALRENDS<1>§!!~~GLOBALXENDS<1>©$var_p©<+>$var_p<+>§CKBU20GLOBALRENDS<1>§ shape=U7 slist=%WL modfs=GLOBALSLIST<t>||0,1||#SISDATE cmdcm=[check=BOX_U20] sends=GLOBALCHECK1<t>??-1 cmdcm=[group=BOX_U17] cmdcm=[group=BOX_U18] cmdcm=[group=BOX_U21] ;; копирование и перемещение выделенных объектов с выбором папок назначения в диалоговом окне

exect=$var_i=##<info=t1-1>||$var_s=$var_i=4?'v,1,4':'v,3,5'||_ViewValues('$var_s') rends=-1!!-1||?T|$var_s GLOBALRENDS<a> ;; если в буфера обмена 4 строки, то выполнить одну команду, если нет, то другую

exect=$var_i=##<info=t1-1>||$var_s=$var_i=4?'v,1,4':($var_i>4?'v,3,5':_Exit())||_ViewValues('$var_s') rends=-1!!-1||?T|$var_s GLOBALRENDS<a> ;; если в буфера обмена 4 строки, то выполнить одну команду, если больше 4, то другую, если меньше, то выход

exect=$var_i=##<info=t1-1>||$var_s=$var_i=4?'v,1,4':($var_i>4?'v,3,5':MsgBox(4096,'Ошибка','Э-э-э,~~а~~где~~нормальные~~данные?')&_Exit())||_ViewValues('$var_s') rends=-1!!-1||?T|$var_s GLOBALRENDS<a> ;; если в буфера обмена 4 строки, то выполнить одну команду, если больше 4, то другую, если меньше, то сообщение с выходом

exect=$var_i=##<info=t1-1>||$var_s=$var_i=4?_CmdCm('rends=-1!!-1¦¦?T|v,1,4¦¦?F63¦¦?E|1:-1'):($var_i>4?_CmdCm('rends=-1!!-1¦¦?T|v,3,5'):_Exit()) GLOBALRENDS<a> ;; если в буфера обмена 4 строки, то выполнить одну команду, если больше 4, то другую, если меньше, то выход

exect=$var_h=WinGetHandle('[CLASS:AkelPad4]')||$var_n=Number(_SendM(Eval('var_h'),1222,153,0))||$var_i=$var_n=1?_SendM(Eval('var_h'),273,4256,0):0 start=%%COMMANDER_PATH%%\AkelFiles\Tools\AkelPadMin\AkelPadMin.exe||%P%N||&&procwait exect=$var_i=$var_n=1?_SendM(Eval('var_h'),273,4256,0):0 ;; открыть файл под курсором в AkelPadMin игнорируя настройку "Одна копия программы" уже запущенного AkelPad

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы~~с~~счётчиком~~_№~~в~~конце~~имени?')||$var_i=$var_n=7?_Exit():1 delss=PS<"%p"//1//0>||1||test<1n!!_\d+$>||upd<1> ;; удалить файлы в активной панели с нумерацией _№ в конце имени (без рекурсии)

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы~~с~~цифрами~~в~~именах?')||$var_i=$var_n=7?_Exit():1 delss=PS<"%p"//1//0>||1||test<1n!!\d>||upd<1> ;; в активной панели удалить файлы в имени которых есть цифры (без рекурсии)

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы~~с~~цифрами~~в~~именах?')||$var_i=$var_n=7?_Exit():1 delss=PS<"%p"//1//0>||1||test<1n!!\d>||upd<1> ;; в активной панели удалить файлы в имени которых есть цифры (с запросом для подтверждения)

sends=x||##1 GLOBALSENDS<a> exect=$var_i=$GLOBALSENDS[1]=''''?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример выполнения условия: если 1-я ячейка массива GLOBALSENDS пустая, то выполняется 1-я команда, если нет, то 2-я

listx=[tc=AM]||1 <FOR> 1 <TO> GLOBALLISTX<0> slist=$GLOBALLISTX1[:INDEX:]||##<info=o85:://>||^^*||formt<1,63>||inline<!!|!!> zends=@<info=o75GLOBALSLIST0<1>> wlist=PS<GLOBALZENDS<1>//1//-1//GLOBALSLIST<1>>||<dellist=$GLOBALSLIST0|2> xlist=$GLOBALWLIST||##<info=o72:://>||formt<1,serch147,63,21> exect=$var_fail=<info=t61$GLOBALXLIST[1]>||$var_i=$var_fail=0?_CmdCm('xends=1<¤>xlist=$GXLOBALXENDS[1]'):0 renms=$GLOBALSLIST0||##cntr<GLOBALXLIST<1>+|1|1> <NEXT> ;; переименовать выделенные файлы по счетчику, с учетом продолжения номера после последнего пронумерованного файла в этом каталоге (для каждого расширения своя нумерация)

exect=$var_i=StringRight('D:\Test\File.vhd',3)='vhd'?_CmdCm('команда'):_Exit() ;; проверить расширение файла, если совпадает, то запустить заданную команду, в ином случае выход

exect=$var_i=StringInStr('|jpg|gif|png|','|%E|')?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример проверки 3-х расширений, если под курсором расширение совпадает, то выдаётся сообщение №1, если нет - сообщение №2
exect=$var_0=Assign('STRUCT_1',DllStructCreate('dword~~Size;hwnd~~hWndOwnder;handle~~hInstance;dword~~rgbResult;ptr~~CustColors;dword~~Flags;lparam~~lCustData;ptr~~lpfnHook;ptr~~lpTemplateName'),2)+Assign('STRUCT_2',DllStructCreate('dword[16]'),2)+DllStructSetData($STRUCT_1,'Size',DllStructGetSize($STRUCT_1))+DllStructSetData($STRUCT_1,'hWndOwnder',GUICreate(0,200,300,-1,-1))+DllStructSetData($STRUCT_1,'rgbResult','0xC5B248')+DllStructSetData($STRUCT_1,'CustColors',DllStructGetPtr($STRUCT_2))+DllStructSetData($STRUCT_1,'Flags',259)||$var_iyn=DllCall('comdlg32.dll','bool','ChooseColor','struct*',$STRUCT_1)[0]||$var_0=$var_iyn=0?_Exit():1||$var_num=DllStructGetData($STRUCT_1,'rgbResult')||$var_ibrg=Hex($var_num,6)||_ViewValues('$var_ibrg','BRG~~Color') ;; создание и запуск окна выбора цвета

exect=$var_0=Assign('STRUCT_ICON',DllStructCreate('int'),2)+Assign('STRUCT_STRING',DllStructCreate('wchar[260]'),2)+DllStructSetData($STRUCT_STRING,1,@SystemDir&'\shell32.dll')||$var_iyn=DllCall('shell32.dll','int',62,'hwnd',GUICreate(0,400,400,-1,-1),'struct*',$STRUCT_STRING,'int',DllStructGetSize($STRUCT_STRING)/2,'struct*',$STRUCT_ICON)[0]||$var_0=$var_iyn=0?_Exit():1||$var_s=DllStructGetData($STRUCT_STRING,1)&','&DllStructGetData($STRUCT_ICON,1)||_ViewValues('$var_s','Путь~~и~~номер~~значка') ;; выбор значка в системном диалоге

imgpr=1 start=FLAC||-s||--ignore-chunk-sizes||-8||list<%WL>||%%d||&&hide||&&wait exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~исходные~~файлы~~WAV?')||$var_i=$var_n=7?_Exit():1 delss=%WL||1 ;; конвертировать выделенные файлы WAV в формат FLAC с максимальной компрессией с сохранением в активной панели, с удалением (требуется подтверждение) исходных WAV в корзину (используется кодер/декодер FLAC)

exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~выделенные~~объекты?')||$var_i=$var_n=7?_Exit():1 delss=%WL||1 ;; удалить выделенные объекты минуя корзину (требуется подтверждение)

imgpr=1 slist=%WL xlist=%WL||##path<4> <FOR> 1 <TO> GLOBALSLIST<0> start=FFmpeg||-i||GLOBALSLIST<:INDEX:>||-acodec||libmp3lame||-q:a||[input=BOX84]||GLOBALXLIST<:INDEX:>.mp3||&&hide||&&wait <NEXT> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~исходные~~файлы?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||upd<1> ;; конвертировать выделенные файлы (медиаконтент) в mp3 с переменным битрейтом (выбор в диалоговом окне), с сохранением в активной панели + удаление исходных файлов (требуется подтверждение)
hends=@<info=o500|MENU.tcg|List1> exect=$var_i='GLOBALHENDS<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 openf=GLOBALHENDS<1>||AkelPad ;; найти MENU.tcg в заданных папках и открыть в AkelPad (если файл не найден, то выдать сообщение и завершить процесс)

hends=@<info=o500|clpget|List1> exect=$var_i='GLOBALHENDS<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 openf=GLOBALHENDS<1>||AkelPad ;; найти файл (имя из буфера обмена) в заданных папках и открыть в AkelPad (если файл не найден, то выдать сообщение и завершить процесс)

sends=-1||?F2,sym1 exect=$var_i='GLOBALSENDS<1>'?1:_Exit() bufsr=&&(?s)(GLOBALSENDS<1>)(.+GLOBALSENDS<1>)(.*)!!$1$3||?F63 ;; в буфере обмена удалить информацию между повторяющимися строками (если они есть), оставив одну из них + удалить

exect=$var_ext=##<info=o71%P%N//>||$var_i=StringInStr('ini|db|dll','$var_ext')?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример условия проверки расширения файла под курсором

forpgs slist=[tc=AM] <FOR> 1 <TO> GLOBALSLIST<0> exect=$var_ext=##<info=o71GLOBALSLIST<:INDEX:>>||$var_i=StringInStr('ini|db|dll','$var_ext')?_CmdCm('rends=x¦¦##rndm<3-|10><¤>wends=@<**info=o75GXLOBALSLIST<:INDEX:>><**info=o73GXLOBALSLIST<:INDEX:>>-GXLOBALRENDS<1>.zip<¤>start=RAR¦¦-IBCK¦¦a¦¦-m5¦¦-ms¦¦-cfg-¦¦-s¦¦-rr3p¦¦GXLOBALWENDS<1>¦¦<**info=o73GXLOBALSLIST<:INDEX:>>¦¦&&wait<¤>renmm=GXLOBALWENDS<1>¦¦##<**info=f1GXLOBALWENDS<1>|1>'):_CmdCm('start=RAR¦¦-IBCK¦¦a¦¦-m5¦¦-ms¦¦-cfg-¦¦-s¦¦-rr3p¦¦<**info=o75GXLOBALSLIST<:INDEX:>><**info=o73GXLOBALSLIST<:INDEX:>>-<info=s47>.zip¦¦<**info=o73GXLOBALSLIST<:INDEX:>>¦¦&&wait') <NEXT> tcimg=$cm540 ;; упаковать все файлы с расширением ini, db или dll в отдельный архив с именем хеш суммы, а остальные файлы в архивы с исходным именем + дата в активную панель и 3% на восстановление
exect=$var_n=3||$var_i=($var_n=1~~OR~~$var_n=2~~OR~~$var_n=5)?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример проверки условий с помощью

exect=$var_n=3||$var_i=StringInStr('1|2|5',$var_n)?_CmdCm('infbx=InfoBox_TEST1'):_CmdCm('infbx=InfoBox_TEST2') ;; пример проверки условий с помощью

sends=@%P%N exect=$var_i3=[info=i6GLOBALSENDS<1>]>1?_Exit():0 infbx=InfoBox_TEST1 ;; пример проверки: если под курсором анимированный GIF файл, то выход
marks=1||test<1n!!\(\d+\)$> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы~~с~~счётчиком~~()~~в~~конце~~имён?')||$var_i=$var_n=7?_Exit():1 delss=[tc=AL]||1||upd<1> ;; удалить файлы с счётчиком (№) в конце имён

<PRESW=13> keybd=0~~^c exect=$var_s=StringRegExp(StringLeft(ClipGet(),1),'[а-яё]')?_CmdCm('bufsr=@@QWERTYinENG'):_CmdCm('bufsr=@@QWERTYinRUS') keybd=0~~+{INSERT} <PRESW=1B> :EXIT: <PRESWEND> ;; при нажатии на клавиши "Pause" проверяет буфер обмена: если первая буква русская, то переводит всё содержимое буфера обмена в клавиатурные английские буквы, если нет, то наоборот, затем вставляет текст в активный окно программы

exect=$var_i=<info=s70Notepad.exe>=1?_Exit():0 start=%%WINDIR%%\notepad.exe ;; если не существует процесса Notepad.exe, то запустить программу

slist=FOLDC<"C:\PathList.txt"//0//1>||<dellist=C:\DelList.txt|5> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infht=-1¦¦Сообщени妦Список~~файлов~~для~~удаления~~пуст¦¦260¦¦70<¤>toexit'):1 exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> beepss ;; удалить все файлы в каталогах из списка путей C:\PathList.txt исключая файлы, чьи имена совпадают с именами из списка имён C:\DelList.txt (в корзину с подтверждением)

alist=@%P%N||&&\.bak$!!||**2!! listx=@GLOBALALIST<1>||2 <IF> <info=t61$GLOBALLISTX[1]> = 0 <THEN> copyy=%P%N||"%p"//1||&&\.bak$!!||**2!! <ELSE> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Заменить~~существующий~~объект~~из~~*.bak?')||$var_i=$var_n=7?_Exit():1 copyy=%P%N||"%p"//1||&&\.bak$!!||**2!! <ENDIF> ;; восстановить объект из *.bak под курсором автоматически, если объект отсутствует, в случае наличия объекта выдать запрос на замену

alist=[tc=AF-1f]||<dellist=C:\files.txt|6> <IF> 0 <> <info=t61$GLOBALALIST[1]> <THEN> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALALIST||1||upd<1> <ELSE> infht=-1||Сообщение||Подобных~~файлов~~не~~найдено||230||60 <ENDIF> ;; удалить, минуя корзину, файлы в активной панели по списку(имена с расширениями) C:\files.txt (требуется подтверждение удаления)

alist=[tc=AF-1f]||<dellist=C:\files.txt|6> <IF> 0 <> <info=t61$GLOBALALIST[1]> <THEN> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~файлы?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALALIST||1||recycle<1>||upd<1> <ELSE> infht=-1||Сообщение||Подобных~~файлов~~не~~найдено||230||60 <ENDIF> ;; удалить в корзину файлы активной панели по списку(имена с расширениями) C:\files.txt (требуется подтверждение удаления)

slist=PS<"%p"//1//0//prog-new.*.exe|prog-next.*.exe> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=Сообщени妦Файлов~~с~~такими~~именами~~в~~АП~~не~~найден2¦¦370¦¦50<¤>toexit'):1 copyy=%P%N||"%t"//0 beepss ;; копировать файл под курсором в другую панель, если в активной панели есть файлы *.exe имена которых начинаются с "prog-new." или "prog-next.", в противном случае выдать 2-х секундное сообщение

slist=PS<"%p"//1//0//prog-new.*.exe> xlist=PS<"%p"//1//0//prog-next.*.exe> exect=$var_i='GLOBALSLIST<1>'~~AND~~'GLOBALXLIST<1>'=''''?_CmdCm('infbx=Сообщени妦Файлов~~с~~такими~~именами~~в~~АП~~не~~найден2¦¦370¦¦50<¤>toexit'):1 copyy=%P%N||"%t"//0 beepss ;; копировать файл под курсором в другую панель, если в активной панели есть файлы *.exe имена которых начинаются с "prog-new." и "prog-next.", в противном случае выдать 2-х секундное сообщение

slist=PS<"%p"//1//0//prog-new.*.exe> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=Сообщени妦Файлов~~с~~такими~~именами~~в~~АП~~не~~найден2¦¦370¦¦50<¤>toexit'):1 copys=$GLOBALSLIST||"%t"//0 beepss ;; копировать в другую панель все файлы *.exe активной панели чьи базовые имена начинаются с "prog-new.", в случае отсутствия подобных файлов выдать 2-х секундное сообщение

slist=@%P%N||test<1i!!^prog-new.*exe> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=Сообщени妦Файл~~под~~курсором~~не~~подпадает~~под~~услови妦2¦¦400¦¦50<¤>toexit'):1 copyy=GLOBALSLIST<1>||"%t"//0 beepss ;; копировать файл под курсором, если его базовое имя начинается с "prog-new." и он имеет расширение *.exe, в противном случае выдать 2-х секундное сообщение

slist=PS<[tc=TP]//2//-1>||test<1f!!1!!0!!Doc.rtf> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 copys=%WL||x//1||allfold<GLOBALSLIST<t>> ;; копировать выделенные файлы в папки неактивной панели(с рекурсией) содержащих файл Doc.rtf

slist=PS<"%T"//2//-1>||test<1f!!1!!0!!Doc.rtf> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 copys=%WL||x//1||allfold<GLOBALSLIST<t>> beepss ;; копировать выделенные файлы в папки неактивной панели(с рекурсией) содержащих файл Doc.rtf

imgpr=1 slist=PS<"%T"//2//0>||test<1f!!1!!0!!Del.fl> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 xlist=FOLDC<$GLOBALSLIST//0//0>||<dellist=C:\ListOfNames.txt|5> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~объекты?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALXLIST||1 ;; в папках неактивной панели содержащих файл Del.fl удалить все объекты кроме указанных в списке имён из файла C:\ListOfNames.txt (требуется подтверждение удаления)

imgpr=1 slist=PS<"%T"//2//0>||test<1f!!1!!0!!Del.fl> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 xlist=FOLDC<$GLOBALSLIST//0//0>||<dellist=C:\ListOfNames.txt|5> delss=$GLOBALXLIST||1 ;; в папках неактивной панели содержащих файл Del.fl удалить все объекты кроме указанных в списке имён из файла C:\ListOfNames.txt

exect=$var_aa=DriveGetDrive('REMOVABLE') sends=$var_aa??-1||#L1 exect=$var_s=NOT~~'GLOBALSENDS<1>'?_Exit():0 zunpf=%%TCIMG_PATH%%\boot.zip||GLOBALSENDS<1>\//0||progres<>||foldname<1> ;; распаковать в корень съемного носителя архив boot.zip (если носителей несколько, то первый по списку)
exect=$var_aa=DriveGetDrive('REMOVABLE') sends=$var_aa??-1 exect=$var_s=NOT~~'GLOBALSENDS<1>'?_Exit():0 GLOBALSENDS<b> zunpf=%%TCIMG_PATH%%\boot.zip||GLOBALARRAY<1>\//0||progres<>||foldname<1> ;; выбрать съемный носитель в окне и распаковать в корень этого носителя архив boot.zip в именную папку
<IF> <info=o9"%pfiles1.f-l"> = 2 AND <info=o9"%pinfo.f-l"> = 0 <THEN> renmm="%p"journal.txt.bak||**0!! exect=$var_n=MsgBox(4+32+262144,'Сообщение','удалить~~файлы~~LOG.txt~~и~~LOG.old?')||$var_i=$var_n=7?_Exit():1 delss=LISTF<"%p"LOG.txt/"%p"LOG.old>||1||upd<1> <ENDIF> ;; если в активной панели есть файл files1.f-l и нет файла info.f-l, то переименовать файл journal.txt.bak в journal.txt и удалить(с подтверждением) файлы LOG.txt и LOG.old

slist=PS<"%T"//2//0>||test<1f!!1!!0!!Info.txt> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('infbx=InfoBox17<¤>toexit'):1 copys=%WL||x//1||allfold<GLOBALSLIST<t>> beepss ;; копировать выделенные объекты активной панели (с перезаписью) в папки неактивной панели содержащих файл Info.txt

<IF> <info=o9"%pfiles1.f-l"> = 2 AND <info=o9"%pinfo.f-l"> = 0 <THEN> renmm="%p"journal.txt.bak||**0!! exect=$var_n=MsgBox(4+32+262144,'Сообщение','удалить~~файлы~~LOG.txt~~и~~LOG.old?')||$var_i=$var_n=7?_Exit():1 delss=LISTF<"%p"LOG.txt/"%p"LOG.old>||1||upd<1> <ENDIF> ;; если в активной панели есть файл files1.f-l и нет файла info.f-l, то переименовать файл journal.txt.bak в journal.txt и удалить (с подтверждением) файлы LOG.txt и LOG.old

alist=PS<"%p"//1//-1//modin.db> exect=$var_i='GLOBALALIST<1>'=''''?_CmdCm('infbx=Сообщени妦Файл~~''modin.db''~~в~~открытой~~папке~~не~~найден¦¦3¦¦370¦¦50<¤>toexit'):1 slist=PS<"%p"//1//-1//modin.db>||##path<10> <FOR> 1 <TO> GLOBALSLIST<0> pathu=GLOBALSLIST<:INDEX:> <NEXT> ;; открыть в новых вкладках неактивной панели папки активной панели в которых есть файл modin.db, в случае отсутствия файла, выдать сообщение и выйти программы

alist=PS<"%p"//1//-1//modin.db> exect=$var_i='GLOBALALIST<1>'=''''?_CmdCm('infbx=Сообщени妦Файл~~''modin.db''~~в~~открытой~~папке~~не~~найден¦¦3¦¦370¦¦50<¤>toexit'):1 slist=PS<"%p"//1//-1//modin.db>||##path<10> <FOR> 1 <TO> GLOBALSLIST<0> pathb=GLOBALSLIST<:INDEX:> <NEXT> ;; открыть в новых вкладках папки активной панели в которых есть файл modin.db, в случае отсутствия файла, выдать сообщение и выйти программы

alist=PS<"%p"//2//0//date> exect=$var_i='GLOBALALIST<1>'=''''?_CmdCm('infbx=Сообщени妦Папка~~''date''~~в~~активной~~панели~~не~~найденদ3¦¦370¦¦50<¤>toexit'):1 slist=PS<"%p"//1//-1//modin.db>||##path<10> <FOR> 1 <TO> GLOBALSLIST<0> pathb=GLOBALSLIST<:INDEX:> <NEXT> ;; если в активной панели есть папка "date", то открыть в новых вкладках все папки активной панели в которых есть файл modin.db (3-х секундное сообщение, если папка "date" отсутствует)

dilog=[group=BOX17] sends=x||?V|##|'GLOBALGROUP<1>'='rar'?'RAR..m..-ep1..-m5..-rr1p..-IBCK..-t':'7-ZIP..a..-sae..-sdel'||&#46;!!| GLOBALSENDS<a> ;; получить параметры командной строки относительно выбранного тип архива
sends=%WL??-1||&?(?m)^.+\.exe$ exect=$var_i='GLOBALSENDS<1>'?0:_Exit() <FOR> 1 <TO> GLOBALSENDS<0> regwr=HKLM\SOFTWARE\Microsoft\Windows~~NT\CurrentVersion\AppCompatFlags\Layers||''GLOBALSENDS<:INDEX:>''||SZ||RUNASADMIN <NEXT> ;; из выделенных фалов получить список только exe файлов и создать в реестре для них строковый параметр "Путь.exe" со значением RUNASADMIN

sends=PS<%P%N//1//-1//exe>??-1 exect=$var_i='GLOBALSENDS<1>'?0:_Exit() <FOR> 1 <TO> GLOBALSENDS<0> regwr=HKLM\SOFTWARE\Microsoft\Windows~~NT\CurrentVersion\AppCompatFlags\Layers||''GLOBALSENDS<:INDEX:>''||SZ||RUNASADMIN <NEXT> ;; в папке под курсором найти все файлы exe и создать в реестре для них строковый параметр "Путь.exe" со значением RUNASADMIN

exect=$var_name=InputBox('Запрос','Введите~~имя~~файла','<info=f*63,62,61*~~-~~*([tc=AP])>')||$var_i='$var_name'?1:_Exit()||_ViewValues($var_name) ;; ввести значение в диалоге, если же диалог закрывается или нажимается кнопка "Отмена", то выход из программы

aends=-1??-1 rends=$GLOBALAENDS??-1||?F54,com1||?T|c,2!!fun_l2 exect=$var_i=##-1 exect=$var_i=##<info=t1-1>||$var_s=$var_i=4?_CmdCm('rends=-1??-1¦¦?T|v,1,4¦¦?F63¦¦?E|1:-1'):($var_i>4?_CmdCm('rends=-1!!-1¦¦?T|v,3,5'):0) vends=TOTALCMD#BAR#DATA@CRLF"%%COMMANDER_PATH%%\TCIMG.exe"@CRLFGLOBALRENDS<x1>@CRLFGLOBALAENDS<x4>@CRLFGLOBALRENDS<x2>??-2 kends=$GLOBALVENDS??-1||?T|a=0,5!!Новая~~кнопка|a=0,4!!shell32.dll,159 sends=PS<$f300\Bar//1//0//*.bar>??-1 GLOBALSENDS<b> barbt=1||-1||GLOBALARRAY<1>||butfrom<GLOBALKENDS<t>> ;; добавить кнопку с параметрами TCIMG (информация из буфера обмена) в конец выбранного *.bar из списка BAR файлов находящихся в папке TC\Bar\

aends=-1??-1 rends=$GLOBALAENDS??-1||?F54,com1||?T|c,2!!fun_l2 exect=$var_i=##-1 exect=$var_i=##<info=t1-1>||$var_s=$var_i=4?_CmdCm('rends=-1??-1¦¦?T|v,1,4¦¦?F63¦¦?E|1:-1'):($var_i>4?_CmdCm('rends=-1!!-1¦¦?T|v,3,5'):0) vends=TOTALCMD#BAR#DATA@CRLF"%%COMMANDER_PATH%%\TCIMG.exe"@CRLFGLOBALRENDS<x1>@CRLFGLOBALAENDS<x4>@CRLFGLOBALRENDS<x2>??-2 kends=$GLOBALVENDS??-1||?T|a=0,5!!Новая~~кнопка|a=0,4!!shell32.dll,159 sends=<info=x50>??-1||&?(?mi)cmd\d+=(.+\.bar)$ GLOBALSENDS<b> barbt=1||-1||GLOBALARRAY<1>||butfrom<GLOBALKENDS<t>> ;; добавить кнопку с параметрами TCIMG (информация из буфера обмена) в конец выбранного BAR файла, который находится на активной панели инструментов

slist=@%P%N||test<1n!!^Win*> exect=$var_i='GLOBALSLIST<1>'=''''?_CmdCm('toexit'):1 copyy=%P%N||"%t"//0 ;; если базовое имя файла под курсором начинается с"Win", то копировать его в другую панель, в противном случае выйти из программы

sends=%WF!!-1 GLOBALSENDS<b> exect=$var_s='GLOBALARRAY1<1>'?0:_Exit() GLOBALARRAY<a> ;; пример: из выделенных имён объектов выбрать нужные, если ничего не выбрано, то выход

slist=FOLDC<%WL//0>||<dellist=C:\DelList.txt|5> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~GLOBALSLIST<0>~~объектов?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> ;; в выделенных папках удалить в корзину объекты 1-го уровня имена которых не указаны в списке C:\DelList.txt

sends=-1??-1 slist=FOLDC<%WL//0>||<dellist=$GLOBALSENDS|5> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~GLOBALSLIST<0>~~объектов?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> ;; в выделенных папках удалить в корзину объекты 1-го уровня имена которых не совпадают с именами из списка в буфера обмена

slist=FOLDC<PS<"%p"//2//0>//0>||<dellist=C:\DelList.txt|5> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~GLOBALSLIST<0>~~объектов?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> ;; во всех папках активной панели удалить в корзину объекты 1-го уровня имена которых не указаны в списке C:\DelList.txt

sends=-1??-1 slist=FOLDC<PS<"%p"//2//0>//0>||<dellist=$GLOBALSENDS|5> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~GLOBALSLIST<0>~~объектов?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> ;; во всех папках активной панели удалить в корзину объекты 1-го уровня имена которых не совпадают с именами из списка в буфера обмена

slist=FOLDC<%WL//0>||<dellist=C:\DelList.txt|9> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~GLOBALSLIST<0>~~объектов?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> ;; в выделенных папках удалить в корзину все объекты 1-го уровня с именами из списка C:\DelList.txt

sends=-1??-1 slist=FOLDC<%WL//0>||<dellist=$GLOBALSENDS|9> exect=$var_n=MsgBox(4+32+262144,'Сообщение','Удалить~~GLOBALSLIST<0>~~объектов?')||$var_i=$var_n=7?_Exit():1 delss=$GLOBALSLIST||1||recycle<1> ;; в выделенных папках удалить в корзину все объекты 1-го уровня с именами из списка буфера обмена

exect=$var_i=##<info=t1-1>||$var_n=Mod(Round($var_i),2)||$var_s=$var_n=1?_Exit() sends=-1??-1||&&(.+)\R(.+)!!$1¤•¤$2 <FOR> 1 <TO> GLOBALSENDS<0> rends=GLOBALSENDS<x:INDEX:>!!-8¤•¤ vends=TOTALCMD#BAR#DATA@CRLF"%%COMMANDER_PATH%%\TCIMG.exe"@CRLFGLOBALRENDS<x1>@CRLFWCMICONS.dll,1@CRLFGLOBALRENDS<x2>??-2 barbt=1||-1||butfrom<GLOBALVENDS<t>> <NEXT> ;; из каждых двух строк ("параметры" и "подсказка") содержимого буфере обмена создать кнопки на панели инструментов TC

slist=PS<"%P"//1//0//*.fb2> <FOR> 1 <TO> GLOBALSLIST<0> sends=GLOBALSLIST<:INDEX:>||formt<fbt1:C:fbt2:C:fbt3:C:¤> zends=GLOBALSENDS<1>??-1||¤!!@CRLF exect=$var_i='GLOBALZENDS<0>'=1?_CmdCm('renmm=GLOBALSLIST<:INDEX:>¦¦##<info=t52GLOBALSLIST<:INDEX:>|?Ffbt1>¦¦sdel<>'):_CmdCm('movee=GLOBALSLIST<:INDEX:>¦¦"%pGLOBALZENDS<2>\"//1¦¦##GLOBALZENDS<3>.~~GLOBALZENDS<1>') pause=300 <NEXT> ;; переименовать (возможно с перемещением) *.fb2 активной панели согласно информации из тегов полученной регулярными выражениями| прописанными в ключах "fbt1, fbt2, fbt3" секции [FormatUser] файла TCIMGU.ini

exect=$var_i=##<info=t1-1>||$var_n=Mod(Round($var_i),2)||$var_s=$var_n=1?_Exit() sends=-1??-1||&&(.+)\R(.+)!!$1¤•¤$2 <FOR> 1 <TO> GLOBALSENDS<0> rends=GLOBALSENDS<x:INDEX:>!!-8¤•¤ vends=TOTALCMD#BAR#DATA@CRLF"%%COMMANDER_PATH%%\TCIMG.exe"@CRLFGLOBALRENDS<x1>@CRLFWCMICONS.dll,1@CRLFGLOBALRENDS<x2>??-2 barbt=1||-1||butfrom<GLOBALVENDS<t>> <NEXT> ;; из каждых двух строк ("параметры" и "подсказка") содержимого буфере обмена создать кнопки на панели инструментов TC


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru