Colorer — гибкая раскраска синтаксиса в редакторе и др.

Здесь можно обсудить ваш любимый плагин.
User avatar
ctapmex
Posts: 1010
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 5 times
Contact:

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by ctapmex »

Far Colorer — плагин подсветки синтаксиса в редакторе, основанный на Colorer Library Игоря Русских.
  • Изначальный автор плагина — Игорь Русских (lomecb, он же cail).
  • После того как плагин портирован на Far 2, поддержкой занимается Алексей Добрунов (ctapmex, он же на форуме ctapmex).
  • Официальная поддержка осуществляется через google-группу colorer_ru (на форуме бывает только ctapmex).
  • Актуальные версии основаны на Colorer Library версии take5.
GitHub | Анонс | Старые домашние страницы библиотеки Colorer и плагина для FAR

Плагин входит в дистрибутив Far Manager с v3.0.2948 (старые версии доступны тут)



Что не разжёвано в документации плагина:
  • Как подключить собственные цветовые стили *.hrd
  • Как подключить собственную схему:
    • используя пользовательский файл прототипов:
    • используя папку auto:
    • через пользовательский catalog.xml:
  • Как переопределить существующую схему
  • Как правильно "удалить" какую-либо стандартную схему
  • Как использовать относительные пути и переменные окружения
  • Если раскраска неправильна:
  • Неочевидные настройки: maxlinelength (в теме)
  • Тонкая настройка подсветки для отдельной схемы: в теме.

User avatar
Aidar
Posts: 541
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 7 times
Contact:

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by Aidar »

Latest post of the previous page:

2useven10 wrote:...Это как? По чётным дням ошибка, по нечётным нет? ...
siberia-man wrote:
2useven10 wrote:правка устраняет проблему.
... Так лучше.

Code: Select all

<block start="/(\bif)?#2(\s*)/"
Нет, будет раскраска переменных, заканчивающихся на if.
Собственно, пробел был вставлен и для исключения этих переменных, и для проверки оформления.
Иначе использовал бы приведённую мной замену.

siberia-man
Posts: 99
Joined: Sat 28 Jun, 2014 23:07
Has thanked: 1 time
Been thanked: 3 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by siberia-man »

Aidar, не уверен, что понял Вас. Ваше "нет" относится к 2useven10 или ко мне? Я проверил свое исправление и оно работает. Лишней подсветки переменных не наблюдаю.

User avatar
Aidar
Posts: 541
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 7 times
Contact:

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by Aidar »

siberia-man wrote:Aidar, не уверен, что понял Вас. Ваше "нет" относится к 2useven10 или ко мне? Я проверил свое исправление и оно работает. Лишней подсветки переменных не наблюдаю.
Пример:

Code: Select all

local if_ = 1
if if_ == 1 then
  if_ = 2
end
Не раскрашивается end.

siberia-man
Posts: 99
Joined: Sat 28 Jun, 2014 23:07
Has thanked: 1 time
Been thanked: 3 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by siberia-man »

Aidar, понял Вас.

Code: Select all

    <block start="/(\bif\b)?#2(\s*)/"
Оставил модификатор ?#2 для совместимости, хотя его можно наверно и убрать.

User avatar
Aidar
Posts: 541
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 7 times
Contact:

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by Aidar »

siberia-man wrote:...Оставил модификатор ?#2 для совместимости, хотя его можно наверно и убрать.
Убирать нельзя, т.к. подкраска пары if-end выполняется в LuaBody, а не в LuaDoif.
В LuaDoif выполняется подкраска пары elseif-then и пробела после if в паре с then.
Это сделано для быстрого нахождения then в случае сложных условий в if.

User avatar
v2002o
Posts: 1
Joined: Wed 29 Apr, 2015 04:38

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by v2002o »

Подскажите пожалуйста как изменить background ошибки синтаксиса в PHP в FarColorer (Far 3.0.4242 ).
Глаза уже не те что раньше, порой не различаешь.

Хотелось бы заменить background на жёлтый, а лучше чтоб вообще моргало, (мигало)...

Картинку прилагаю.

Спасибо!
farcolorer_php_d-err.png
farcolorer_php_d-err.png (6.03 KiB) Viewed 8058 times

Игорь Юдинцев
Posts: 725
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 1 time

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by Игорь Юдинцев »

v2002o
В подкаталоге hrd\console находим свою цветовую схему, в ней атрибут def:Error и правим значение back с #4 на #E.

vornic
Posts: 4
Joined: Fri 19 Jun, 2015 08:33

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by vornic »

Здравствуйте, подскажите пожалуйста, возможно я плохо искал.
При редактировании файла *.master проекта на aspx, не совсем верно определяется синтаксис, приходится ручками переключать F11 -> FarColorer -> 1 List Types -> asp JavaScript (а определяется как xhtml transitional)
Вопрос, как зафиксировать авто-определение на нужное мне?
Спасибо!

User avatar
John Doe
Бюрократ
Posts: 12598
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 35 times
Been thanked: 260 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by John Doe »

vornic wrote: Вопрос, как зафиксировать авто-определение на нужное мне?
Инструкция в шапке.

vornic
Posts: 4
Joined: Fri 19 Jun, 2015 08:33

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by vornic »

Пытался править proto.hrc, не помогло:
<package name="master" description="Active Server Pages">
<location link="jar:common.jar!inet/asp.hrc"/>
</package>
...
<prototype name="asp.js" group="inet" description="asp - JavaScript">
<location link="jar:common.jar!inet/asp.js.hrc"/>
<filename>/\.(as(p|a)|ht(r|x|a)|inc|master)$/i</filename>
<firstline weight='2'>/language\s*=.*j(ava)?script/i</firstline>
</prototype>

...сейчас наверное получу ведро помоев :)

User avatar
John Doe
Бюрократ
Posts: 12598
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 35 times
Been thanked: 260 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by John Doe »

Code: Select all

<package name="master" description="Active Server Pages">
Этого не надо делать

vornic
Posts: 4
Joined: Fri 19 Jun, 2015 08:33

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by vornic »

Убрал, не помогло.
Ладно, так обойдусь.

vornic
Posts: 4
Joined: Fri 19 Jun, 2015 08:33

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by vornic »

Нашел решение:
<prototype name="asp.js" group="inet" description="asp,master - JavaScript">
<location link="jar:common.jar!inet/asp.js.hrc"/>
<filename>/\.(as[pa]|ht[rxa]|inc|Master|master)$/i</filename>
<firstline weight='2'>/language\s*=.*j(ava)?script/i</firstline>
<firstline weight='0.5'>/^<\%\@/</firstline> <---------------------
</prototype>

User avatar
techie
Posts: 782
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 33 times
Been thanked: 3 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by techie »

Может дропнуть вообще эти прототипы и создавать и кешировать каталог динамически? Тогда описание каждого языка будет более менее автономным.

User avatar
John Doe
Бюрократ
Posts: 12598
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 35 times
Been thanked: 260 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by John Doe »

Раскраска lua даёт сбой, если при определении функции-метода двоеточие отделено пробелом:

Code: Select all

function lexer :peek (n)
  --[...]
end
(Пример из metalua)

Karagy
Posts: 57
Joined: Tue 02 May, 2006 08:43
Location: Питер
Been thanked: 3 times

Colorer — гибкая раскраска синтаксиса в редакторе и др.

Post by Karagy »

lua.hrc:49:

Code: Select all

- <entity name="entname" value="([_\w]*(?{Symbol}(\.|\:)))*?[_\w]*"/>
+ <entity name="entname" value="([_\w]*\s*?(?{Symbol}(\.|\:))\s*?)*?[_\w]*"/>
подойдёт?

Post Reply

Return to “Обсуждение плагинов”