Coder plugin (2)
- Author
- Message
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Ну, это условность, с которой придется мириться...Cuprum wrote: Немного напрягает, что если id напечатать как цвет, решетка в нем
Подсветка будет включаться при наличии именно от 3 до 6 символов попадающих в диапазон регэкспа [A-F\d]{3,6}\b
Пока универсального решения не нашел... да и времени свободного гораздо меньше, чем хотелось бы.
Кстати, собственно, подсветка включается только на 3 или 6 символах, это зашито в плагине, если не ошибаюсь.
В общем, в принципе, можно ещё сузить действие регэкспа, как-то так:
Code: Select all
"(#)(?:([A-F\d]{3}|[A-F\d]{6})\b)" "\1=(0,0,\2)"
См. выше, это одного поля ягоды... пока не будет четкого совпадения по шаблону, не будет и подсветки.Cuprum wrote: + при ручной печати цвета, во время набора первых 2 симолов они
С этим справиться с наскока не получилось, но чувствую, что решение есть, надо только подумать. При наличии времени попробую что-нибудь придумать или может быть, более опытные товарищи подскажут куда копать надо.Cuprum wrote:
Добавлено:
Вот, кстати, можно так попробовать бороться:
Code: Select all
0 "(?<=url)(\()(.+)(\))" "\1=(0,${DEL2},0) \2=(0,${NUM},0) \3=(0,${DEL2},0)"
Last edited by YuS on Thu Jul 24, 2014 6:42 am, edited 2 times in total.
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Видимо есть какие-то сложности в реализации. Предложить - самое простое, что можно сделать, а вот реализовать... тут необходимо сочетание многих факторов: программная возможность в принципе, наличие времени у реализатора, а также наличие знаний, умений и желания/необходимости... наверное, пока что какие-то составляющие из этого списка отсутствуют.Serge Yolkin wrote:мой самый первый пост после регистрации на форуме (почти 4 года назад) содержал предложение, способное решить многие проблемы, бурно обсуждаемые в этой ветке.
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Надо кавычки '' выключить в секции Quotes и добавить в секцию Folds по аналогии с "".Cuprum wrote:YuS
В одинарных кавычках такая же подсветка, как и
После двоеточия, как правило, идут параметры свойств, поэтому мне показалось, что было бы нагляднее их подсвечивать другим цветом. Это получилось всё потому, что мне попадались файлы со стилями, где абсолютно всё выстроено одной сплошной строкой и там выделение одним цветом параметров и названий свойств, выглядит не очень красиво.Cuprum wrote: Еще думаю, свойства с префиксом лучше подсвечивать везде одним цветом -
В качестве примеров брались стилевые файлы из Макстона (ну, разобранные на составляющие файлы с данными), там ещё и не такие параметры встречаются, вот некоторые и подобавлял.Cuprum wrote: Вижу, вы стали добавлять свойства в список. Не очень пойму, где вы такие нашли?
В принципе, мешать они не будут, но добавлять их перестал пока, ввиду их разнообразия и несоответствия CSS, это скорее какие-то внутренние особенности браузера...
-
Offline
- Posts: 381
- Joined: Wed Sep 28, 2011 3:05 pm
С CSS, где все упаковано в одну строку, как правило, напрямую вряд ли работают. Это уже окончательная версия, нужная браузерам. Давайте все таки оставим их одним цветом, т. е. будет акцент на том, что это именно версия с префиксом (неважно, свойство это или значение).YuS wrote: После двоеточия, как правило, идут параметры свойств, поэтому мне показалось, что было бы нагляднее их подсвечивать другим цветом. Это получилось всё потому, что мне попадались файлы со стилями, где абсолютно всё выстроено одной сплошной строкой и там выделение одним цветом параметров и названий свойств, выглядит не очень красиво.
Я покопался, действительно это какие-то местечковые свойства, которых нет (пока?) в стандартах. Мое предложение - исключить их. Я уже начал составлять список свойств и значений,которые появились в CSS3 и уже официально поддерживаются хотя бы одним браузером.В качестве примеров брались стилевые файлы из Макстона (ну, разобранные на составляющие файлы с данными), там ещё и не такие параметры встречаются, вот некоторые и подобавлял.
В принципе, мешать они не будут, но добавлять их перестал пока, ввиду их разнообразия и несоответствия CSS, это скорее какие-то внутренние особенности браузера...
А вот если эти псевдо-свойства оставить, то может быть путаница - вроде подсветка у них такая же как у других, а в стандарте их нет. А так будет понятно, если они не подсвечиваются, значит они не такие, как все
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Да почему? Парсер браузера не воспринимает переводы строк как разделители, для него важны фигурные скобки, запятая, точка с запятой и т.п. ... думаю, что даже в одну строку будут работать стили. При необходимости, это можно легко проверить...Cuprum wrote: С CSS, где все упаковано в одну строку, как правило, напрямую вряд ли работают.
Легко. Надо здесь:Cuprum wrote: Давайте все таки оставим их одним цветом, т. е. будет акцент на том, что это именно версия с префиксом (неважно, свойство это или значение).
Code: Select all
0 "(?:(?<=,)|(?<=:)|(?<=\w\s))\s*?(-(?!\d)(?!-)(-|\w)+)" "\1=(0,${TYPE},0)"
Согласен, надо вернуть в дефолтное состояние. Потому и приостановил расширение списка. Если будет готовый список, соответствующий правилам CSS, то его уже можно будет добавить.Cuprum wrote: Я покопался, действительно это какие-то местечковые свойства, которых нет (пока?) в стандартах. Мое предложение - исключить их. Я уже начал составлять список свойств и значений,которые появились в CSS3 и уже официально поддерживаются хотя бы одним браузером.
-
Offline
- Posts: 294
- Joined: Tue Jul 27, 2010 11:18 pm
YuS
- На счёт "самое простое" согласен, хотя и постарался обдумать предложение, прежде чем ляпнуть.
- Знания и умения Instructor'а у меня сомнений не вызывают
- Принципиальная возможность, на мой дилетантский взгляд, имеется, по крайней мере, изменения в алгоритме работы плагина не представляются принципиально невозможными (не намного сложнее фолдинга).
- Необходимость... Не знаю, но проблемы, с которыми часто сталкиваются авторы собственных файлов подсветки (грустная история, рассказанная этой веткой) такую необходимость подтверждают.
Остаются: желание и время. К сожалению, никакие доводы на эти пункты повлиять не могут. Остаётся ждать и надеяться
- На счёт "самое простое" согласен, хотя и постарался обдумать предложение, прежде чем ляпнуть.
- Знания и умения Instructor'а у меня сомнений не вызывают
- Принципиальная возможность, на мой дилетантский взгляд, имеется, по крайней мере, изменения в алгоритме работы плагина не представляются принципиально невозможными (не намного сложнее фолдинга).
- Необходимость... Не знаю, но проблемы, с которыми часто сталкиваются авторы собственных файлов подсветки (грустная история, рассказанная этой веткой) такую необходимость подтверждают.
Остаются: желание и время. К сожалению, никакие доводы на эти пункты повлиять не могут. Остаётся ждать и надеяться
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Это я не в том смысле говорил, что предложения в виде "записок сумасшедшего"...Serge Yolkin wrote:YuS
- На счёт "самое простое" согласен, хотя и постарался обдумать предложение, прежде чем ляпнуть.
Функционал, возможно, предложен и неплохой, но не учтены последствия. Если я правильно понял, то для плагинов есть какие-то условия, они должны быть быстрыми и небольшими.
В общем, заметил, что тут в существующем-то виде, если переборщить с регэкспами, то становятся заметны тормоза на сравнительно небольших файлах. А если конфигурационные файлы подсветки размножатся, т.е. даже не удвоятся, а увеличатся в n раз (то бишь парсить придется файл столько раз, сколько будет альтернативных конфигураций) ... последствия непредсказуемы.
Думаю, что всё таки тут дело не только в нежелании и отсутствии времени...Serge Yolkin wrote: Остаются: желание и время. К сожалению, никакие доводы на эти пункты повлиять не могут. Остаётся ждать и надеяться
PS
Этот пункт можно даже не рассматривать, тут сомнений никаких.Serge Yolkin wrote:YuS
- Знания и умения Instructor'а у меня сомнений не вызывают
Имелось ввиду, что реализовать плагины, может ведь любой, исходники доступны.
-
Offline
- Posts: 294
- Joined: Tue Jul 27, 2010 11:18 pm
YuS
Не-не-не! Парсить файл - только один раз! Тем более, что он построчно парсится. Дошли до начала альтернативного блока - продолжаем парсить линейно, но по новым правилам. Пусть, даже, будет ограничение: начало/конец блока - в начале строки, если необходимо.
И реализовать может не любой. Coder, кажется, самый серьёзный из плагинов. Вряд ли кто-то проникнется им на столько, чтобы внести серьёзные изменения. Да и две ветки одного плагина - беда. С двумя наборами файлов подсветки...
Не-не-не! Парсить файл - только один раз! Тем более, что он построчно парсится. Дошли до начала альтернативного блока - продолжаем парсить линейно, но по новым правилам. Пусть, даже, будет ограничение: начало/конец блока - в начале строки, если необходимо.
И реализовать может не любой. Coder, кажется, самый серьёзный из плагинов. Вряд ли кто-то проникнется им на столько, чтобы внести серьёзные изменения. Да и две ветки одного плагина - беда. С двумя наборами файлов подсветки...
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Угу, не-не-не - самое оно.Serge Yolkin wrote:YuS
Не-не-не! Парсить файл - только один раз! Тем более, что он построчно парсится. Дошли до начала альтернативного блока - продолжаем парсить линейно, но по новым правилам. Пусть, даже, будет ограничение: начало/конец блока - в начале строки, если необходимо.
Это ведь не вьювер, это редактор, подсветка у него включается интерактивно... при наборе символа перечитывать конфиги, парсить на предмет наличия блока, сбрасывать переменные, значения функций, шаблоны регэкспов и т.п. - как-то сложновато. Имхо, вряд ли получится быстрая работа плагина при таком варианте. В общем, пока только автор может подтвердить или опровергнуть реализуемость этой хотелки...
-
Offline
- Posts: 2
- Joined: Tue Nov 01, 2011 8:07 am
Боковая панель Coder::CodeFold
Есть возможность цветового выделения текста именно в боковой панели CodeFold?
-
Offline
- Posts: 294
- Joined: Tue Jul 27, 2010 11:18 pm
YuS
При наборе символа - парсинг не сложнее, чем для фолдинга (можно включить в парсинг для фолдинга), а переменные и пр. загружать сразу, при открытии файла, и переключаться между готовыми наборами правил. Только динамически добавлять в альтернативные наборы самым первым правилом правило выхода из блока.
И, наверное, пора завязывать: пока не реализовано всем остальным это не интересно
P.S. Или мы уточняем ТЗ? Тогда готов...
При наборе символа - парсинг не сложнее, чем для фолдинга (можно включить в парсинг для фолдинга), а переменные и пр. загружать сразу, при открытии файла, и переключаться между готовыми наборами правил. Только динамически добавлять в альтернативные наборы самым первым правилом правило выхода из блока.
И, наверное, пора завязывать: пока не реализовано всем остальным это не интересно
P.S. Или мы уточняем ТЗ? Тогда готов...
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Ну, мне сложно судить, насколько это просто... и да, наверное, лучше закругляться...Serge Yolkin wrote: При наборе символа - парсинг не сложнее, чем для фолдинга
Было бы досадно составлять ТЗ в пустоту. По поводу реализации - мне это не по силам однозначно, а автор пока молчит... Вот если прояснит ситуацию (возможно или нет, будет или не будет хоть когда-нибудь), тогда при положительном ответе, можно и приступить к составлению ТЗ.Serge Yolkin wrote: P.S. Или мы уточняем ТЗ? Тогда готов...
-
Offline
- Posts: 381
- Joined: Wed Sep 28, 2011 3:05 pm
Я разработчиков имел в виду ). Редактировать CSS вытянутый в одну строку проблематично. А браузер, конечно, скушает.YuS wrote: Да почему? Парсер браузера не воспринимает переводы строк как разделители, для него важны фигурные скобки, запятая, точка с запятой и т.п. ... думаю, что даже в одну строку будут работать стили. При необходимости, это можно легко проверить...
Добавил свойств и значений, чуток почистил.
Что-то вот только псевдоклассы перестали подсвечиваться...
---
А где можно почитать как в целом работают *.coder-файлы? Какие секциии за что отвечают и что означают вот такие подсчеты
Code: Select all
5=1+4