Тут супер идей, наверное, не будет, но можно упростить до одной строки:Skif_off wrote: Идеи приветствуются.
Code: Select all
0 "(^(?>[a-f\d]{128}|[a-f\d]{64}|[a-f\d]{40}|[a-f\d]{32})(?=[ \t])|(?<=[ \t])[a-f\d]{8}$)" "\1=(0,${OP},0)" 0 0
Тут супер идей, наверное, не будет, но можно упростить до одной строки:Skif_off wrote: Идеи приветствуются.
Code: Select all
0 "(^(?>[a-f\d]{128}|[a-f\d]{64}|[a-f\d]{40}|[a-f\d]{32})(?=[ \t])|(?<=[ \t])[a-f\d]{8}$)" "\1=(0,${OP},0)" 0 0
Code: Select all
0 "(^(?>[a-f\d]{128}|[a-f\d]{96}|[a-f\d]{64}|[a-f\d]{48}|[a-f\d]{40}|[a-f\d]{32}|[a-f\d]{8})(?=[ \t]\*)|(?<=[ \t])([a-f\d]{8})$)" "\1=(0,${IF},0) \2=(2,${DEL1},0)" 0 0
А почему? То, что поиск с флагом 1 пошустрее - помню, поэтому нагромоздил [A-Fa-f], а \d убрал для наглядности (плохо всё-таки ещё понимаю).YuS wrote:имхо, так даже чуток менее ресурсоемко будет...
Да, если наличие "*" обязательно, то так, конечно, точнее и правильнее... не будут "случайно" подсвечены crazy-name файлов.Skif_off wrote:YuS
Спасибо, новое подлиньше и поточнее за счёт "[ \t](\*)"
А я, кстати, не помню о том, что регистрозависимый парсинг шустрее... если так, то лучше его и использовать, в шаблоне это не критично.Skif_off wrote:А почему? То, что поиск с флагом 1 пошустрее - помню, поэтому нагромоздил [A-Fa-f], а \d убрал для наглядности (плохо всё-таки ещё понимаю).YuS wrote:имхо, так даже чуток менее ресурсоемко будет...
Code: Select all
0 "(^(?>[a-f\d]{128}|[a-f\d]{96}|[a-f\d]{64}|[a-f\d]{48}|[a-f\d]{40}|[a-f\d]{32}|[a-f\d]{8})(?=[ \t]\*))|((?<=[ \t])[a-f\d]{8}$)" "\1=(0,${IF},0) \2=(2,${DEL1},0)" 0 0
Так получается не совсем то:YuS wrote:Если необходима различающаяся раскраска, то лучше так:- либо изменить на регистрозависимость флаг и шаблонCode: Select all
0 "(^(?>[a-f\d]{128}|[a-f\d]{96}|[a-f\d]{64}|[a-f\d]{48}|[a-f\d]{40}|[a-f\d]{32}|[a-f\d]{8})(?=[ \t]\*))|((?<=[ \t])[a-f\d]{8}$)" "\1=(0,${IF},0) \2=(2,${DEL1},0)" 0 0
а нужно8cf939b33a4ece35116acc236489d3c4 *filename
filename c0590b9b
Немного смущает, что вместе со звёздочкой "*" захватывается и "[ \t]":8cf939b33a4ece35116acc236489d3c4 *filename
filename c0590b9b
Code: Select all
0 "...(?=[ \t]\*)..." "... \2=(2,${DEL1},0)" 0 0
Чуть не плюнул, но всё-таки сумел найти http://akelpad.sourceforge.net/forum/vi ... 7595#27595YuS wrote:А я, кстати, не помню о том, что регистрозависимый парсинг шустрее... если так, то лучше его и использовать, в шаблоне это не критично.
Так в моем, первоначальном варианте, так и было... а различная окраска - из Вашего варианта. Итоговый шаблон чуть ниже:Skif_off wrote: Так получается не совсем то:
...
а нужно
...
Это "positive lookahead", он работает только как условие, при этом ничего не захватывая.Skif_off wrote: Немного смущает, что вместе со звёздочкой "*" захватывается и "[ \t]":но, думаю, не страшноCode: Select all
0 "...(?=[ \t]\*)..." "... \2=(2,${DEL1},0)" 0 0
Сделал себе памятку.Skif_off wrote: Чуть не плюнул, но всё-таки сумел найти http://akelpad.sourceforge.net/forum/vi ... 7595#27595
Code: Select all
1 "(^(?>[A-Fa-f\d]{128}|[A-Fa-f\d]{96}|[A-Fa-f\d]{64}|[A-Fa-f\d]{48}|[A-Fa-f\d]{40}|[A-Fa-f\d]{32}|[A-Fa-f\d]{8})(?=[ \t]\*)|(?<=[ \t])[A-Fa-f\d]{8}$)" "\1=(0,${IF},0)" 0 0
Да, если имя начинается с [a-f0-9] и потом есть пробел.Infocatcher wrote:А что с ним не так?
Как вот тут, когда имя с пробелами?
, по идее только ТС в *.sfv пишет "a-f" в верхнем регистре, наверное, я перестраховался? С другой стороны - есть и другой софт...Infocatcher wrote:И в каком формате Double Commander записывает?
Code: Select all
768 0 ${OP} 0 "" "*" "" "0123456789abcdef " ""
Instructor здорово помог это автоматизировать: LenchikGithub.jsSkif_off wrote:P.S. По поводу изменений: Lenchik удобно сделал здесь, просто копия в UTF-8, можно обойтись без WinMerge
Code: Select all
Call("Coder::Settings", 5, "name")
Coder-Rus.txt wrote:*** Описание переменных, не применяющихся в *.coder файлах ***
...
HighLight_AutoMarkFlags
HighLight_AutoMarkFontStyle
HighLight_AutoMarkTextColor
HighLight_AutoMarkBkColor
*.coder wrote:AutoMark:
;====================================================================================================================
;AutoMarkFlags AutoMarkFontStyle AutoMarkTextColor AutoMarkBkColor
;====================================================================================================================
${HighLight_AutoMarkFlags} ${HighLight_AutoMarkFontStyle} ${HighLight_AutoMarkTextColor} ${HighLight_AutoMarkBkColor}
Да, молчит и не отрабатывает. И если была включена темная тема, то при открытии файла именно с твоим кодером тема сама меняется на светлую и не реагирует на измененияSkif_off wrote: В чём выражается "невозможность"? Сообщение об ошибке? Молчаливое игнорирование нажатия кнопки "Применить"?