Foobar2000
|
|
chip642 | Дата: Четверг, 15.02.2018, 02:53 | Сообщение № 1 |
|
Foobar2000
Автоматизация от TCIMG в помощь пользователям Foobar2000: переименование CUE-файла, переименование файлов и папок на основе шаблонов пользователя, включая транслитерацию, замены и подстановки, создание файлов дискографии ...
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:32 | Сообщение № 16 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
chip642, привет спаситель. Да не могу никак регулярку приладить к этому файлу, вчера весь день проторчал на онлайн сервисах по проверках регэкспов, еще и несколько синтаксисов блин. Вообщем я копирую текст с дискографией исполнителя, с сайта http://www.metal-archives.com/ + https://www.discogs.com/, сохраняю в текстовый, так вот, при копировании HTML и переносе в текстовый редактор включаю отображение непечатных знаков текст получается то что я изобразил с помощью тильды и угловой скобки, так вот регуляркой надо заменять пробел-таб итд, чего то не выходит каменный цветок
~~~~~~~~~~~~~~~~~~~~~
плюс еще одно слабоумие посетило меня
испробовал 100 вариантов для замены содержимое первых скобок на содержимое вторых в текстовом файле
"After Forever" (Holland) (Symphonic Metal, Power Metal, Gothic Metal)
"After Forever" (Symphonic Metal, Power Metal, Gothic Metal) (Holland)
вот мои извращения, не работают!
textx=%L||&&(.+)\((.*)\)~~\((.*)\)!!$1$3~~$2 textx=%L||&&(.+)\([.*]\)~~\([.*]\)!!$1$3~~$2 \(.+\)~~\(.+\)!!$2~~$1 \((.+)\)~~\((.+)\)!!$2~~$1 \([^)]+\)~~\([^)]+\)!!$2~~$1Добавлено (30.01.2018, 11:20) --------------------------------------------- еще вот какую кнопку хочется аж чешется все
descript.ion - добавить фразу в скобках, находящуюся в конце имени объектов, удалив фразы в скобках, и так по одному откидывать, добавляя получается в начало
comns=%UL||0||<info=o72::>||&&^.*(\(.+\))$!!$1 renms=%L||&&^(.*)?\(.+\)$!!$1 - вот такая конструкция из справки не пашет((( добавляет лишний пробел перед кавычками, в результате чего текст заносится но не отображается, так как не привязывается к файлу "Folder (1) (2) (3) " (Текст в дескрипшен)
модель такая:
ИмяФайла (1) (2) (3)
первое нажатие: ИмяФайла (1) (2) | (3)
второе нажатие: ИмяФайла (1) | (2) (3)
третье нажатие: ИмяФайла | (1) (2) (3) - все перешло в desk. в том же порядке
|
|
| |
chip642 | Дата: Пятница, 16.02.2018, 04:32 | Сообщение № 17 |
|
Цитата Mrakobes ( ) "After Forever" (Holland) (Symphonic Metal, Power Metal, Gothic Metal) "After Forever" (Symphonic Metal, Power Metal, Gothic Metal) (Holland)
Код TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe textx=%L||&&(?m)(.+)\((.*)\)~~\((.*)\)!!$1($3)~~($2)||upd<1> %COMMANDER_PATH%\WCMICONS.dll,19 В выделенных файлах построчно поменять местами содержимое первых и вторых скобок с конца разделенных пробелом
-1
Остальное я ничего не понял, ссылки, дискография..., у меня больше времени уходит на разбирательство условий поставленной задачи, чем на её решение. Мне нужна четко поставленная задача, такой-то текст, надо сделать то-то, есть такие-то имена файлов, надо преобразовать так-то (а не скопировал там-то, вставил в редактор, получилось то-то), слишком много ненужной информации.
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Подкорректировал две ранее созданные кнопки, вчера времени не было быстро определться, пришлось кое-что через буфер обмена передавать, сегодня решение нашел.
1-я кнопка, *.flac в папке CD.
Код slist=PS<"%p"//1//0//*.cue|*.flac|*.ape|*.wv|*.log> attrb=$GLOBALSLIST||-R!!1 renms=$GLOBALSLIST||##<info=f63:://#~~-~~//f62:://#~~(//f61:://#)>||upd<1> tends=PS<"%p"//1//0//*.cue> textt=GLOBALTENDS<1>||code<3>||backup<0> copyy=GLOBALTENDS<1>||"%p"!!1||**1!!?.bak||attr<+H!!0> aends=@%P%N||##path<84>||$$descript.ion nends=@<info=f63%P%N//>??-1||~~!!@CRLF||#L2 <IF> 1 <> <info=t61$GLOBALNENDS[1]> <THEN> lends=@<info=f63%P%N//> <ELSE> lends=@<info=f63%P%N//>||^^''||$$'' <ENDIF> count=GLOBALAENDS<1>||GLOBALLENDS<1>||0||countline<1|2> bends=GLOBALCOUNT<1>!!-6~~(||)!!||&&''!!||#G7 pends=@<info=f63%P%N//#~~-~~//f62%P%N//#~~(//f61%P%N//#)> kends=GLOBALPENDS<1>||$$.<info=o71%P%N//>||^^''||$$'' hends=@<info=f63%P%N//>||^^''||$$'' fends=@%P%N||##path<83>||$$descript.ion rends=@<info=o92%P%N//>||^^''||$$'' zends=GLOBALFENDS<1>??-1||<dellist=$GLOBALRENDS|8> mends=GLOBALZENDS<x1>||&&([^\r\n]+)''!!||#G1 gends=@<info=o92%P%N//>||&&^.{7}!!||^^''||$$'' cends=@<info=f62%P%N//>||&&^(....)(.*)$!!$1 iends=REM~~GENRE@CRLFREM~~DATE@CRLFREM~~COMMENT@CRLFCATALOG@CRLFPERFORMER@CRLFTITLE@CRLF@CRLFFILE??-1 textt=GLOBALTENDS<1>||<dellist=$GLOBALIENDS|4>||formt<63>||backup<0> sends=REM~~GENRE~~GLOBALBENDS<x2>@CRLFREM~~DATE~~GLOBALCENDS<1>@CRLFREM~~COMMENT~~GLOBALMENDS<1>@CRLFCATALOG~~GLOBALBENDS<x3>@CRLFPERFORMER~~GLOBALHENDS<1>@CRLFTITLE~~GLOBALGENDS<1>@CRLFFILE~~GLOBALKENDS<1>~~WAVE??1 textt=GLOBALTENDS<1>||^^GLOBALSENDS<x1>@CRLF||backup<0>||upd<1> openf=GLOBALTEXTT<1>||open<ASSOC>
2-я кнопка, *.flac на уровень выше.
Код slist=PS<"%p"//1//0//*.cue|*.flac|*.ape|*.wv|*.log> attrb=$GLOBALSLIST||-R!!1 renms=$GLOBALSLIST||##<info=f62:://#~~-~~//f61:://>||upd<1> tends=PS<"%p"//1//0//*.cue> textt=GLOBALTENDS<1>||code<3>||backup<0> copyy=GLOBALTENDS<1>||"%p"!!1||**1!!?.bak||attr<+H!!0> aends=@%P%N||##path<83>||$$descript.ion nends=@<info=f62%P%N//>??-1||~~!!@CRLF||#L2 <IF> 1 <> <info=t61$GLOBALNENDS[1]> <THEN> lends=@<info=f62%P%N//> <ELSE> lends=@<info=f62%P%N//>||^^''||$$'' <ENDIF> count=GLOBALAENDS<1>||GLOBALLENDS<1>||0||countline<1|2> bends=GLOBALCOUNT<1>!!-6~~(||)!!||&&''!!||#G7 pends=@<info=f62%P%N//#~~-~~//f61%P%N//> kends=GLOBALPENDS<1>||$$.<info=o71%P%N//>||^^''||$$'' hends=@<info=f62%P%N//>||^^''||$$'' fends=@%P%N||##path<82>||$$descript.ion rends=@<info=o91%P%N//>||^^''||$$'' zends=GLOBALFENDS<1>??-1||<dellist=$GLOBALRENDS|8> mends=GLOBALZENDS<x1>||&&([^\r\n]+)''!!||#G1 gends=@<info=o91%P%N//>||&&^.{7}!!||^^''||$$'' cends=@<info=f61%P%N//>||&&^(....)(.*)$!!$1 iends=REM~~GENRE@CRLFREM~~DATE@CRLFREM~~COMMENT@CRLFCATALOG@CRLFPERFORMER@CRLFTITLE@CRLF@CRLFFILE??-1 textt=GLOBALTENDS<1>||<dellist=$GLOBALIENDS|4>||formt<63>||backup<0> sends=REM~~GENRE~~GLOBALBENDS<x2>@CRLFREM~~DATE~~GLOBALCENDS<1>@CRLFREM~~COMMENT~~GLOBALMENDS<1>@CRLFCATALOG~~GLOBALBENDS<x3>@CRLFPERFORMER~~GLOBALHENDS<1>@CRLFTITLE~~GLOBALGENDS<1>@CRLFFILE~~GLOBALKENDS<1>~~WAVE??1 textt=GLOBALTENDS<1>||^^GLOBALSENDS<x1>@CRLF||backup<0>||upd<1> openf=GLOBALTEXTT<1>||open<ASSOC>
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:32 | Сообщение № 18 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
Цитата chip642 ( ) В выделенных файлах построчно поменять местами содержимое первых и вторых скобок разделенных пробелами
а вот и не работает, прикладываю этот файл http://rgho.st/6mc56ls6b
Цитата chip642 ( ) Подкорректировал две ранее созданные кнопки
сегодня пользовался несколько раз предыдущими, сбоев не наблюдалось, но обновлю на эти тогда
Цитата chip642 ( ) добавить в комментарий соответствующую фразу в скобках, находящуюся в конце имени объектов
работает идеально!
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:33 | Сообщение № 19 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
по той путаннице, сейчас переформулирую - проблема в том что форум не отображает непечатные символы! Виден пробел а это таб. Ладно - пишу
1. В текстовом файле под курсоров удалить первую пустую строку, содержащую таб 2. Переименовать NameпробелтабTypeпробелтабYearпробелтабReviews на "Discography Encyclopaedia Metallum:" без кавычек 3. Вставить пустую строку 4. Почистить текст от подобных "16 (83%)" "6 (13%)" "17 (89%)", т.е. 1 или 2 цифры, затем следует в скобках цифры со значком проценты 5. Дальше - найти год - 4 цифры и перенести в начало строки с пробелтирепробел 6. Остается заключить в скобки некий текст, состоящий из одного или нескольких слов в круглые скобки, я думаю надо использовать то, что этот текст имеет такое форматирование - перед тестом всегда идут пробелтаб и после него тоже пробелтаб, по другому не знаю как этот текст идентицицировать
было:
Name Type Year Reviews Angels Fall First Full-length 1997 16 (83%) The Carpenter Split 1997 Sacrament of Wilderness Split 1998 1 (73%) Oceanborn Full-length 1998 11 (80%) Walking in the Air Single 1999 1 (95%)
стало:
Discography Encyclopaedia Metallum:
1997 - Angels Fall First (Full-length) 1997 - The Carpenter (Split) 1998 - Sacrament of Wilderness (Split) 1998 - Oceanborn (Full-length) 1999 - Walking in the Air (Single)
вот этот текстовый файл, включите эти блин символы и все проясниться http://rgho.st/
Добавлено (30.01.2018, 18:11) ---------------------------------------------
Цитата chip642 ( ) идеально отрабатывает у меня
прошу прощения, я фуфло толкнул по невнимательности видимо))) может не так кнопку скопировал на панель, сейчас заново вставил код и заработало!, уффффф красотищщща
|
|
| |
chip642 | Дата: Пятница, 16.02.2018, 04:33 | Сообщение № 20 |
|
Цитата Mrakobes ( ) 6. Остается заключить в скобки некий текст, состоящий из одного или нескольких слов в круглые скобки
Из всей сложной задачи самоё лёгкое - заключить некий фрагмент в скобки, оказалось самым сложным. )
Предоставьте мне точную ссылку, где я могу увидеть оригинальный текст на странице воочию, а там уже определимся, как его извлечь правильно. По указанным ссылкам на определенные сайты я ничего найти не могу, не ориентируюсь там.
Возможно это => скрин Если да, то никаких скобок не вижу, что именно надо заключать в скобки?
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:33 | Сообщение № 21 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
Цитата chip642 ( ) что именно надо заключать в скобки
пояснения к альбому (Full-length), (Split).. а то они сливаются с названиями самого альбомаДобавлено (31.01.2018, 20:34) --------------------------------------------- а определить то я его предлагаю по окружающим его пробел таб пробел таб, иначе не знаю как его идентифицировать от остальных буковок Добавлено (01.02.2018, 21:02) --------------------------------------------- а определить то я его предлагаю по окружающим его пробел таб пробел таб, иначе не знаю как его идентифицировать от остальных буковок Добавлено (02.02.2018, 13:27) --------------------------------------------- ой, вот что в процессе потребовалось, в кнопку что с CD1 CD2
очень надо добавить в тег
5.6. TITLE - из названия дедушкиной, откидывая первые 7 символов (т.е. год пробел тире пробел) и пробел название родительской папки в скобках т.е. (CD1) и заключается в кавычки
Чтобы альбом имел название при двухдисковом варианте с указанием (CD1) на конце, а то плеер считывает оба диска как один, в плейлисте путаница
было: 2017 - Paris стало: 2017 - Paris (CD1)
а так очень хорошо работает код! Ужасно помогает!!
|
|
| |
chip642 | Дата: Пятница, 16.02.2018, 04:33 | Сообщение № 22 |
|
Цитата Mrakobes ( ) 5.6. TITLE - из названия дедушкиной, откидывая первые 7 символов (т.е. год пробел тире пробел) и пробел название родительской папки в скобках т.е. (CD1) и заключается в кавычки
Замените в кнопке.
Код gends=@<info=o92%P%N//>||&&^.{7}!!||^^''||$$''
НА
Код gends=@<info=o92%P%N//#~~(//o91%P%N//#)>||&&^.{7}!!||^^''||$$'' _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Насчет дискографии табличного типа скопированной с веб-страницы.
Решение: смотрим ==> ролик.
На всякий случай читаем: 1. Переходим на сайт исполнителя и копируем дискографию представленную в табличном варианте 2. Переходим в Microsoft Word или в любое другое приложение, которое может отображать форматируемый текст и вставляем скопированную информацию в новый документ. 3. Переходим в Total Commander и запускаем кнопку
Код TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe tempxx itray=3||TCIMG.dll,75 xclip=1||1|@CRLF------- asave=GLOBALXCLIP||formt<51,54,56,63>||$f254\BuferClips.txt pause=1000 txtsp=$f254\BuferClips.txt||$f254//0||6!!-------||formt<63> delsm=$f254\BuferClips.txt||1 slist=PS<$f254//1//0> aends=GLOBALSLIST<1>??-1 bends=GLOBALSLIST<2>??-1 cends=GLOBALSLIST<3>??-1||eline<(!!)> xlist=$GLOBALAENDS||$$~~-~~GLOBALBENDS<:NUMBER:>||$$~~GLOBALCENDS<:NUMBER:>||save<"%p"Discography.txt|0>||upd<1> TCIMG.dll,75 ВКЛ / ВЫКЛ слежение за Буфером обмена + объединение ячеек заранее скопированных столбцов таблицы по заданным условиям
-1
4. Переходим обратно в Microsoft Word и поочередно копируем информацию интересующих нас столбцов в порядке соответствующему будущему расположению в объединенной строке, в нашем случае копируем сперва 3-й столбец, далее 1-й столбец, потом 2-й столбец. 5. Повторное нажатие на кнопку остановит слежение за буфером обмена и создаст в активной панели Total Commander файл Discography.txt с содержимым относительно поставленной задачи.
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:33 | Сообщение № 23 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
Цитата chip642 ( ) Насчет дискографии табличного типа скопированной с веб-страницы
да, друган, насчет этой кнопки я просто охудивился крайне, получилось все с первого раза! Ну крутяк, мне так кажется что это САМАЯ сложная кнопка на сайте. Даже не знаю что сказать Бог Кнопок!
вообщем я заморочил голову своими пробелами и табами)))) решил сам уже докопаться до истины))) спасибо! Настоящий модератор форума, респект!
стыдно признаться, я сегодня вообще слабоумную замену не мог произвести, вроде все делаю как по учебнику, не лезет и все
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:33 | Сообщение № 24 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
chip642, не не не я не об этой замене, это я конечно понял и сделал все, спасибо.
я пытался поменять тоже дискографию, с другого сайта. Там простая замена - 4 пробела Under the Red Cloud (2015)
должно получится 2015 - Under the Red Cloud
textx=%L||~~~~~~~~!!||&&(.*)\(\d{4}\)!!$2~~-~~$1 - не работает, ну почему?
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
еще вот огорчение, с дискогса не копируется дискография в таблице(( способ с вордом не применим ... там какая то извращенская HTML верстка
https://www.discogs.com/artist/323295-Ratos-De-Por%C3%A3o можно ченить сделать?Добавлено (03.02.2018, 09:39) --------------------------------------------- сейчас попробовал копировать сначала в EXCEL, он выравнивает формат в обычную таблицу, затем в ворд... вроде чего то получается, хотя не высокотехнологично))
вроде получается. Но не со всеми группами, иногда съезжают строки в таблице(( и когда копируешь таблицу полностью, с Albums, Singles & EPs и тд, таблица разрывается и не удается копировать столбец
|
|
| |
chip642 | Дата: Пятница, 16.02.2018, 04:34 | Сообщение № 25 |
|
Цитата Mrakobes ( ) Under the Red Cloud (2015) должно получится 2015 - Under the Red Cloud
Код TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe textx=%L||&&(?m)(.*)~~\((.+)\)$!!$2~~-~~$1 WCMICONS.dll,19 В выделенных файлах, построчно, добавить в начало строк пробел тире пробел + содержимое последних скобок
-1
Цитата Mrakobes ( ) и когда копируешь таблицу полностью, с Albums, Singles & EPs
Я посетил страницу по ссылке и ничего там не понял, скиньте скрин, что надо скопировать и что надо оставить, какие столбцы, ячейки, надо ли открывать спойлер, а может надо копировать именно содержимое спойлера и т. д.
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:34 | Сообщение № 26 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
Цитата chip642 ( ) В выделенных файлах, построчно, добавить в начало строк пробел тире пробел + содержимое последних скобок
работает, все ок. Только когда примечание типа этого [9] попадается, в конце строки, то код не обрабатывает, но этого не было в задаче, ничего - перенесу ручками.
Цитата chip642 ( ) скиньте скрин, что надо скопировать
в правом верхнем углу списка (не вошел с скриншот) есть 3 кнопки отображения, правая кнопка это список, вот так он выглядит на скриншоте. Как бы привести его к виду такому:
Albums
1984 - Crucificados Pelo Sistema (Punk Rock Discos)
итд
Singles & EPs
2002 - Onisciente Coletivo (CD, Single, Promo) (Century Media) (CM 33001-1)
итд
|
|
| |
Andrey_A | Дата: Пятница, 16.02.2018, 04:34 | Сообщение № 27 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 143
Репутация: 125
Аверин Андрей
|
Mrakobes,
Код textx=%L||&&(?m)^[~~\t]*([^\t]+)~~\t([^\t]*)~~\t([^\t]*)\t([^\t]*)\t+$!!$4~~-~~$1~~($2)~~($3)||~~()!!||~~)!!)
[img640]http://tc-image.3dn.ru/Image/Others/0/reg87.png[/img640]
|
|
| |
chip642 | Дата: Пятница, 16.02.2018, 04:34 | Сообщение № 28 |
|
Mrakobes
Ну вот, появился автор, Маэстро, и без всяких офисов, при помощи регулярных выражений решил задачу.
Немного подкорректировав получаем нужный результат.
Копируем с сайта и применяем эти параметры. В активной панели создастся файл Discogs.txt с содержимым отвечающим заданным условиям. Каждое последующее применение кнопки будет создавать в активной панели файл с счетчиком в конце имени: Discogs_01.txt, Discogs_02.txt ... . Можете потом дополнить, если надо удалить названия пунктов, я просто не в курсе нужны они или нет.
Код sends=-1??-1||&&(?m)^[~~\t]*([^\t]+)~~\t([^\t]*)~~\t([^\t]*)\t([^\t]*)\t+$!!$4~~-~~$1~~($2)~~($3)||~~()!!||~~)!!)||#G4||&&(\d+~~versions)!!||#G4 asave=GLOBALSENDS||"%pDiscogs"|0
|
|
| |
Mrakobes | Дата: Пятница, 16.02.2018, 04:34 | Сообщение № 29 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
Цитата chip642 ( ) Маэстро , ааааааааааааааааа! Андрей на форуме, здарова! Я думал он уже в NASA ))) Ахаха, сейчас попробую кнопку.
Цитата chip642 ( ) В выделенных файлах, построчно, добавить в начало строк пробел тире пробел + содержимое последних скобок
а это кнопочка, блин конвертирует UTF-8 в анси, получаются крякозябры Синглы Рё EP и еще не удаляет паразитирующие пробелы, но это решаемо
1991 - · · · · Amorphis
Сообщение отредактировал Mrakobes - Воскресенье, 04.02.2018, 19:59 |
|
| |
chip642 | Дата: Пятница, 16.02.2018, 04:34 | Сообщение № 30 |
|
Цитата Mrakobes ( ) а это кнопочка, блин конвертирует UTF-8 в анси
У себя ничего подобного не наблюдаю, UTF-8 остается в сохранности.
|
|
| |
|