в новой пустой вкладке написать 2 строки с одинаковым текстом "#errorstdout".
переключиться на какую-то вкладку, а потом обратно на эту с двумя строчками.
Результат:
в новой пустой вкладке написать 2 строки и получить следующий результат:
Posted: Tue Sep 09, 2014 12:20 pm
by Drugmix
Заметка по поводу бага 1: похоже, что это завязано на работе памяти, т.к. глюк стабильно воспроизводится/не воспроизводится при 2-ух разных последовательностях действий над файлом .coder, но приводящих к одинаковому итоговому содержимому .coder-файла, после чего вызывалась команда обновления кэша coder-плагина Call("Coder::Settings", 2) и делалось сравнение окраски тех двух строк в соседней вкладке.
Результат был стабилен для каждой из последовательностей действий: в одном случае стабильно воспроизводился баг, а в другом - стабильно не воспроизводился.
Это при том, что кэш в обоих случаях должен был быть одинаковым, ведь команда обновления кэша вызывалась после приведения содержимого .coder-файла к идентичному состоянию.
Последовательности действий над файлом отличались тем, что перед тем как было выполнено итоговое форсированное обновление кэша (и последующая проверка окраски строк в соседней вкладке) - я делал или не делал обновление кэша в промежутке между внесением каких-то изменений в этот .coder-файл.
Posted: Tue Sep 09, 2014 12:29 pm
by Instructor
1. Не воспроизводится.
2.
"^(Click)(,[^,]*)?+(,[^,]*+)?+(,[^,]*)?+$"
Posted: Wed Sep 10, 2014 3:55 pm
by YuS
Drugmix wrote:
2. в этом правиле жадность не слушается:
должно в строке "Click,red,green" слово "green" подкрашивать зелёным фоном, а подкрашивает синим. В правиле овер-жадность выставлена как раз для фразы после второй запятой, но её всё равно перебивает под-правило для подкрашивания после третьей запятой, хоть у этого под-правила и не используется овер-жадность и оно бы должно перебиваться соседним под-правилом с овер-жадностью.
Кхм, всё дело в группах и нежадном квантификаторе "?". Проверяться должны все возможные варианты, а из-за того, что группы, по сути не являются жадными (хоть внутри у них и есть жадные квантификаторы), то захват происходит последним совпадающим шаблоном, при прочих равных...
Чтобы добиться желаемого, правило надо модифицировать, примерно так:
вместо "{,1}+" вполне сгодится и "?+", но так, имхо, нагляднее...
PS Эмм, а на этой странице уже есть ответ ... ну да ладно, пусть и этот остается.
Posted: Wed Sep 10, 2014 4:36 pm
by Drugmix
Instructor wrote:1. Не воспроизводится.
2.
"^(Click)(,[^,]*)?+(,[^,]*+)?+(,[^,]*)?+$"
2. О, спасибо, всё вроде так работает, пробую кол-во правил увеличить.
1. Это всё завязано на работе кодер-кэша/памяти и я вижу, как иногда он реально "бьётся".
Вот, например, у меня к файлу ahk.coder вдруг почему-то применяются правила из него же (рядом открыт coder.coder и его содержимое практически дефолтное):
Posted: Wed Sep 10, 2014 7:47 pm
by Drugmix
где хранится кэш .coder-плагина?
а то иногда ошибка в .coder файле способна перекосоёжить весь акелпад так, что при каждом открытии вот такой баг
а при каждом закрытии (как и при выполнении команды по обновлению кэша кодера) - крэш.
Posted: Wed Sep 10, 2014 8:12 pm
by Lenchik
в папке с .coder файлами лежит файл cache
Posted: Wed Sep 10, 2014 8:36 pm
by Drugmix
Lenchik
это какой-то не тот кэш: там лишь перечислены .coder файлы, какие-то наборы символов (хэш?) и потом перечислены regex шаблоны, по которым к тому или иному файлу должна применяться раскраска из соответствующего .coder-файла.
Что за хэш там?
Drugmix
Вы бы валожили тестовый файл и картинку, как должно быть
У себя на 4.9.1 артефактов не вижу, но подсвечивается явно не всё. http://rghost.ru/57951681/image.png
Снизу - Last modification: 2013.08.24 22:40
З.Ы. х64 4.9.0 с Last modification: 2014.02.18 23:20 отрисовал с десяток строчек и повис наглухо с 25 килобайтным файлом, прибил.
Posted: Thu Sep 11, 2014 5:42 am
by San_dr
х64 4.9.0 с Last modification ahk.coder: 2014.02.18 23:20 у меня пишет
"ahk.coder" (смещение 124208) содержит неизвестное имя секции "0".
Posted: Thu Sep 11, 2014 8:02 am
by Skif_off
San_dr
А что у вас там? В StatusUserFormat можно добавить Поз.: %or. На всех трех версиях с Last modification ahk.coder: 2014.02.18 23:20 (с репозитория) не вижу ничего косячного в этой позиции и поблизости.
У меня просто падет, зато успевает подсветить гораздо больше, чем в х86. Файл, на котором падает, могу выложить.
Не пора ли перебраться в ветку плагина или сразу - багов AkelPad?
Posted: Thu Sep 11, 2014 10:38 am
by San_dr
я проверял когда у меня был открыт текстовый файл " FAQ " из моей сборки, - просто выбрал для этого файла синтаксическую тему "ahk", после чего последовало озвученное ранее сообщение, а после нажатия на "ОК" в окошке сообщения - новое окно "прекращена работа программы Akelpad, закрыть? искать решение в интернете?" Пришлось переименовать файл, чтобы можно было открыть Акель заново и после открытия вернуть прежнее название, и тогда он открылся уже с txt подсветкой и без поблем.
Posted: Fri Sep 12, 2014 6:51 am
by Instructor
Skif_off wrote:Файл, на котором падает, могу выложить.
Не мешало бы.
Posted: Fri Sep 12, 2014 7:28 am
by Skif_off
Coder-файл отсюда, 4.9.1х86 (ссылка была на ру-борде) и 4.9.0х64 виснут наглухо и падают (успевают показать 2,5 строки).
Описание ошибки, на всякий случай оба: