[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Andrey_A, ХарВик, chip642  
Форум » • Total Commander • » Кнопки для Total Commander » ЗАКАЗ КНОПОК
ЗАКАЗ КНОПОК
ХарВикДата: Вторник, 17.04.2012, 21:49 | Сообщение № 1
Генералиссимус

На сайте с: 29.01.2012
Город: Черкассы
Сообщений: 1629
Награды: 18
Репутация: 18
ЗАКАЗ КНОПОК




В этой теме Вы можете высказывать идеи о каких-либо кнопках. Вы можете описать какую хотелось бы иметь кнопку и возможно найдутся те, кто подскажет как её сделать.
Большая просьба чётко описывать задачу, от этого будет зависеть качество её решений


Группа TCIMG в Telegram

.
 
Lord_NEVRДата: Понедельник, 10.12.2018, 20:43 | Сообщение № 1396
Полковник

На сайте с: 24.06.2016
Город: Калининград
Сообщений: 210
Награды: 5
Репутация: 0
Добрый вечер.
Нужна кнопка для снижения потребления оперативной памяти игрой Warface.
После последней обновы начались в игре нещадные краши из за переполнения оперативной памяти игрой.
(кривые разрабы. >( )

Можно создать кнопку которая будет снижать потребление оперативной памяти игрой?
Сбрасывать каждые 10-15 мин значение опер памяти на минимум.
Код
D:\Games\GamesMailRu\Warface\Bin32Release\Game.exe

Примерно так.
1. Запустил игру,
2. Нажал кнопку (во время игры будет сбрасываться каждые 10-15 мин значение опер памяти на минимум)
3. Закрыл игру.
4. Нажал кнопку (действие закончилось)
Или как-то по лучше алгоритм действия.




Сообщение отредактировал Lord_NEVR - Понедельник, 10.12.2018, 20:54
 
MatrosДата: Понедельник, 10.12.2018, 21:27 | Сообщение № 1397
Генералиссимус

На сайте с: 03.03.2012
Город: Ставрополь
Сообщений: 2019
Награды: 164
Репутация: 95
Цитата Mrakobes ()
а может не надо прописывать 128 а оставить как есть? Извлекать без сжатия/увеличения битрейта

Mrakobes, попробуй так:
(кнопка просто удалит видеопоток из медиафайла)
Код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
watch=1 start=FFmpeg||-i||%P%N||-vn||"%p%O".mp3||&&hide||&&wait
WCMICONS.dll,19
Извлечение звука из видеофайла под курсором в формате MP3|с сохранением в активной панели с именем видеофайла

-1



Всё приходящее,а музыка Вечна !
 
MrakobesДата: Понедельник, 10.12.2018, 22:52 | Сообщение № 1398
Полковник

На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
Награды: 2
Репутация: 2
Matros, работает. Но не удаляет поток, в mp4 остается, сравнил 2 извлеченных файла с той и этой кнопки - они одинаковые, 124кбпс, спасибо
 
MatrosДата: Понедельник, 10.12.2018, 23:48 | Сообщение № 1399
Генералиссимус

На сайте с: 03.03.2012
Город: Ставрополь
Сообщений: 2019
Награды: 164
Репутация: 95
Цитата Mrakobes ()
сравнил 2 извлеченных файла с той и этой кнопки - они одинаковые, 124кбпс

Mrakobes, попробуйте другой видеофайл,где битрейт аудио выше или ниже (отличный от 124-128..) и примените обе кнопки...,тогда разница будет.
В вашем случае просто совпадение битрейта

Цитата Mrakobes ()
Но не удаляет поток, в mp4 остается

Цитата Matros ()
(кнопка просто удалит видеопоток из медиафайла)

имел ввиду ИЗ медиафайла НА ВЫХОДЕ... оригинал,естественно, не затрагивается



Всё приходящее,а музыка Вечна !
 
chip642Дата: Вторник, 11.12.2018, 00:42 | Сообщение № 1400
Генералиссимус

На сайте с: 24.04.2013
Город: Москва
Сообщений: 1495
Награды: 62
Репутация: 58
Mrakobes

Для быстрого извлечения аудиопотока без конвертации, нужно знать какой тип аудио содержит видеофайл.
Файл mp4 содержит аудио в формате AAC.
Попробуйте извлечь при помощи кнопки ниже звук из mp4 и вы увидете насколько быстро это произойдет. Происходит прямое копирование аудиопотока, а не обработка, поэтому и быстро.

Код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
imgpr=1 start=FFmpeg||-i||%P%N||-vn||-acodec||copy||"%p%O".aac||&&hide||&&wait
WCMICONS.dll,19
Извлечение звука, без конвертации, из *.mp4 в формате AAC с сохранением в активной панели с именем видеофайла

-1


То же самое можно проделывать с другими типами видеофайлов, но нужно знать в каком формате у них звуковая дорожка(и) и извлекать в оригинальном формате, без перекодирования, тогда будет всё быстро.

Цитата
в текстовом файле удалить каждые 4 строки оставляя пятую


Код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
bufsr=?T|p2#5#4|d,1:-1||formt<63>
WCMICONS.dll,1
Удалить содержимое строк буфера обмена (начиная со 2-ой, шаг 5, подряд 4 строки) + удалить пустые строки

-1
 
MrakobesДата: Вторник, 11.12.2018, 11:09 | Сообщение № 1401
Полковник

На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
Награды: 2
Репутация: 2
Цитата chip642 ()
нужно знать какой тип аудио содержит видеофайл
понятно, тогда пускай лучше извлекает в эмпэ3, все равно битрейт 320 вряд ли бывает в ютубовских роликах, там и есть 128 преимущественно.

Строки работают, все ок. Обработал 3500 строчный файл, руками бы удалял до вечера)))
 
sibirnikДата: Воскресенье, 16.12.2018, 17:20 | Сообщение № 1402
Генерал-лейтенант

На сайте с: 27.08.2014
Сообщений: 742
Награды: 26
Репутация: 10
Помогите пожалуйста с кнопкой для объединения нескольких выделенных видеофайлов в один видеофайл. Спасибо.
 
veosysregДата: Вторник, 18.12.2018, 10:47 | Сообщение № 1403
Рядовой

На сайте с: 15.12.2018
Сообщений: 5
Награды: 0
Репутация: 0
Подскажите, пожалуйста, как создать кнопку для такой операции: перенос файла под курсором в определенную папку (локальную папку Яндекс.Диска, которая синхронизируется с облаком) и далее получение в буфер ссылки на этот файл в облаке (Яндекс.Диске). В принципе можно, конечно, делать это через контекстное меню, но при этом файл копируется в корень файловой структуры на облаке, что мне не подходит. А вот если сначала переносить файл в соответствующую подпапку локальной папку Яндекс.Диска то тогда при выборе уже там из контекстного меню пункта "Скопировать ссылку на Яндекс.Диске" то он уже просто дает ссылку и файл оставляет там где он уже лежит. Т.е. после операции переноса файла нужно перенести фокус на него и далее из его контекстного меню выбрать соответствующий пункт.

У меня пока получилось вот так:
Код
copys=%L||"d:\Yandex\YandexDisk\Work" lists=%Z%UL||##D:\Yandex\YandexDisk\Work\path<6> patha=clpget focusp pause=500 buttn=#32768||x|$l{APPSKEY}{DOWN~~12}{ENTER}

Но мне кажется это не оптимальный вариант. Как минимум контекстное меню бывает разным для разных типов файлов и смещение вниз не всегда на 12 шагов.


Сообщение отредактировал veosysreg - Вторник, 18.12.2018, 14:13
 
asmadeusДата: Среда, 02.01.2019, 12:38 | Сообщение № 1404
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
Andrey_A, пошел по твоим рекомендациям
Цитата Andrey_A ()
1. Разбиваем выделенное в 2D массив по регулярке, к примеру такой:

Имеем, вместо полного пути потом будет считка с ини файла
Код
anf2d=PS<"D:\Update"!!1!!0!!*.zip>||2||(?:[^\\]+\\)([^\\]+_)([^\\_]+)\.[^\\._]+ GLOBALANF2D<a>
arr2d=$GLOBALANF2D||1|2||4|1 GLOBALARR2D0<a>

Здесь идет замена D:\Update на пустоту, или говоря проще - просто получение имен файлов и вставка в конец каждого элемента "|"
Код
aends=$GLOBALARR2D0??1||==D:\Update\!!||eline<!!|> GLOBALAENDS<a>

Здесь я удаляю последнюю "трубу" со строки предыдущего массива
Код
bends=$GLOBALAENDS??1||?R1 GLOBALBENDS<a>

И хочу подсунуть результат как маску в команду удаления, удаляя все, кроме указанного. Но удаляется абсолютно все
Код
delss=PS<"D:\Update"!!1!!0!!$GLOBALBENDS!!1>||1
 
chip642Дата: Среда, 02.01.2019, 16:05 | Сообщение № 1405
Генералиссимус

На сайте с: 24.04.2013
Город: Москва
Сообщений: 1495
Награды: 62
Репутация: 58
asmadeus

С проверками.

Код
anf2d=PS<"D:\Update"!!1!!0!!*.zip>||2||(?:[^\\]+\\)([^\\]+_)([^\\_]+)\.[^\\._]+ GLOBALANF2D<a> arr2d=$GLOBALANF2D||1|2||4|1 GLOBALARR2D0<a> slist=$GLOBALARR2D0||##path<6> GLOBALSLIST<a> bends=$GLOBALSLIST??-1||?B58!!Chr(124)||@CRLF!! GLOBALBENDS<a> delss=PS<"D:\Update"//1//0//GLOBALBENDS<1>//1>||1


Без проверок.

Код
anf2d=PS<"D:\Update"!!1!!0!!*.zip>||2||(?:[^\\]+\\)([^\\]+_)([^\\_]+)\.[^\\._]+ arr2d=$GLOBALANF2D||1|2||4|1 slist=$GLOBALARR2D0||##path<6> bends=$GLOBALSLIST??-1||?B58!!Chr(124)||@CRLF!! delss=PS<"D:\Update"//1//0//GLOBALBENDS<1>//1>||1


Замыкающую "трубу" (|) в строковой последовательности списка файлов можно не удалять.
 
asmadeusДата: Среда, 02.01.2019, 19:45 | Сообщение № 1406
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
chip642, интересно... Работает, только как всегда - мысли "и как я не додумался"))
 
sibirnikДата: Среда, 02.01.2019, 20:16 | Сообщение № 1407
Генерал-лейтенант

На сайте с: 27.08.2014
Сообщений: 742
Награды: 26
Репутация: 10
Имеется рабочая кнопка:
Цитата
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
beepss imgpr=1 slist=%UL mp3ws=$GLOBALSLIST||<info=f15::>//1||-7 mp3ws=$GLOBALSLIST||"%p"//1||1//##::;;?Fmp3.2||2//##::;;?Fmp3.1||61//##::;;?Fmp3.1||50//##::;;?Fmp3.2||upd<1> moves=$GLOBALSLIST||"D:\Досуг\Музыка\//4" beepss
%COMMANDER_PATH%\Wcmicons.dll,63
В выделенных файлах запись MP3-тегов взятых из базовых имён файлов + Перемещение в папку "Музыка" при совпадении имён, не заменять имеющие.

Помогите пожалуйста допилить кнопку так, чтобы она сделала, так:
В выделенных файлах запись MP3-тегов взятых из базовых имён файлов + Переместить выделенные файлы в папку "Музыка" при совпадении имён, заменить меньший файл в ДП большим по размеру файлом из АП, а файлы с одинаковым именем и размером или меньшим размером в АП, чем в ДП удалить. Оставив в ДП аналогичные файлы без изменений.


Сообщение отредактировал sibirnik - Четверг, 03.01.2019, 10:10
 
alexostrovДата: Четверг, 03.01.2019, 00:34 | Сообщение № 1408
Полковник

На сайте с: 22.11.2017
Сообщений: 179
Награды: 0
Репутация: 0
Уважаемые форумчане, поздравляю всех с наступившим Новым Годом и наступающим Рождеством Христовым!
Желаю Вам крепкого здоровья, мира, благополучия и творческих успехов в новом году.

chip642
Помогите решить следующую проблему: у меня библиотека Wcmicons ~ 4000 значков. использую реально 15-20%.
Я хочу ее как-то привести в порядок.
Как получить (может быть в текстовом файле или в другом формате), информацию о том, какие значки , с какой библиотеки
используются в сборке ТС. Это значки главного меню - Wcmd_Rus.mnu, значки панелей инструментов - все файлы *.bar с папки BAR и
значки, прописанные в пользовательских командах em_xxx_zzz, но только те, которые используются в файлах allprograms.mnu и allprograms.tcm.
Желательно что-бы это было как-то так: имя библиотеки, № значка, программа или функция (кнопка). Может быть конечно и другое представление информации. Это на Ваше усмотрение.


Сообщение отредактировал alexostrov - Четверг, 03.01.2019, 00:36
 
asmadeusДата: Четверг, 03.01.2019, 19:03 | Сообщение № 1409
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
alexostrov, прям читаете мои мысли - проблема примерно такая же, только значков меньше, а мест больше - еще файлы tcm и различные конфиги утилиты tcimg. Но получить - это еще цветочки. А вот создать новую библиотеку из только исапользуемых значков, выполнить замену на новые номера во всех файлах - это уже проблема, и немалая
chip642, по поводу кнопки - если вдруг дубликатов нет, то удаление происходить не должно, а происходит
Пробовал вставить условие
Код
exect=$var_file=IniRead(EnvGet('COMMANDER_PATH')&'\Files_VOG\INI\TC_VOG.ini','TC_VOG','PathApps','#')
anf2d=PS<$var_file//1//0//*.zip>||2||(?:[^\\]+\\)([^\\]+_)([^\\_]+)\.[^\\._]+
arr2d=$GLOBALANF2D||1|2||4|1
slist=$GLOBALARR2D0||##path<6>
sends=$GLOBALSLIST??-1||?B58!!Chr(124)||@CRLF!!||?R1
<IF> <info=d7$var_file//> > GLOBALSLIST<0> <THEN> delss=PS<$var_file//1//0//$GLOBALSENDS<1>//1>||1 <ENDIF>

Типа "если количество файлов больше чем элементов для маски, то выполнить команду удаления". Но реакции никакой
 
alexostrovДата: Четверг, 03.01.2019, 19:46 | Сообщение № 1410
Полковник

На сайте с: 22.11.2017
Сообщений: 179
Награды: 0
Репутация: 0
asmadeus
Цитата asmadeus ()
Но получить - это еще цветочки. А вот создать новую библиотеку из только исапользуемых значков, выполнить замену на новые номера во всех файлах - это уже проблема, и немалая

Я тоже об этом думал, но здесь придется очень корректно переделать wcmicons.inc, что-бы не слетело все к фене-бене. Это было-бы очень круто.
Будем надеяться что Маэстро или chip642 что-то придумают.

Добавлено (03.01.2019, 20:17)
---------------------------------------------
P.S.
Как Вам такая идея: есть библиотека Wcmicons_1.dll (в которой скажем 1000 значков) и к ней файл wcmicons_1.inc.
Определяем какие значки, из этой библиотеки используются в ТС, и из них создаем новую библиотеку Wcmicons_2.dll, скажем из 300 значков.
Дальше извлекаем значки из этих библиотек в разные папки. Сравнить между собой эти папки и найти дубли изображений (значков).
Эти дубли значков будут иметь разные номера. Осталось по этим номерам переделать файл wcmicons_1.inc в wcmicons_2.inc.

Сообщение отредактировал alexostrov - Четверг, 03.01.2019, 19:48
 
Форум » • Total Commander • » Кнопки для Total Commander » ЗАКАЗ КНОПОК
Поиск:

Интеллектуальные права и отказ от ответственности