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

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

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 (старые версии доступны тут)
Поддержка Windows XP
Начиная с версии FarColorer 1.4.0 в плагине прекращена поддержка Windows XP. Полностью поддерживается и тестируется на Windows 10. Несколько версий Windows назад - по запросу. Но кажется, что всегда должно работать начиная с Windows 2008.
Far Manager 3.0.5797 (2021.05.10) и более новые в дистрибутиве содержат FarColorer версии 1.4.
Поддержка Windows XP осталась только на FarColorer 1.3.x. В данной ветке будут выходить только критичные исправления. Скачать можно на GitHub странице плагина. Последняя версия 1.3.30



Что не разжёвано в документации плагина:
  • Как подключить собственные цветовые стили *.hrd
  • Как подключить собственную схему:
    • используя пользовательский файл прототипов:
    • используя папку auto:
    • через пользовательский catalog.xml:
  • Как переопределить существующую схему
  • Как правильно "удалить" какую-либо стандартную схему
  • Как использовать относительные пути и переменные окружения
  • Если раскраска неправильна:
  • Неочевидные настройки: maxlinelength (в теме)
  • Тонкая настройка подсветки для отдельной схемы: в теме.
Last edited by ctapmex on Mon 18 Oct, 2021 19:17, edited 5 times in total.
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

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

Post by Alexey Samlyukov »

Latest post of the previous page:

плагин стабильно валится с таким логом
Attachments
FarTrap_20160426190020.log
(42.74 KiB) Downloaded 108 times
User avatar
HaRT
Moderator
Posts: 10858
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Alexey Samlyukov wrote: плагин стабильно валится
Как воспроизвести?
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

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

Post by Alexey Samlyukov »

просто нажимаю на F4, любой файл. ничего не настраивал, все как идет в сборке.
User avatar
HaRT
Moderator
Posts: 10858
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Alexey Samlyukov wrote: просто нажимаю на F4, любой файл. ничего не настраивал, все как идет в сборке.
У меня так ничего не падает ни на каких из нескольких опробованных файлов.
Win 8.1 x64; Far Manager, version 3.0 (build 4637) x86
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

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

Post by Alexey Samlyukov »

и да, у меня по-прежнему амд сэмпрон 3000+ от 2004 года ))
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

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

Post by NightRoman »

Есть либо вопрос, либо предложение нового типа региона "InvisibleText", невидимый текст. Есть ли такой регион? Если нет, то просьба подумать/добавить.

В файле default.hrc определяются базовые регионы. Есть, например, такой

Code: Select all

    <region name="Special" description="Invisible region"/>
Не знаю, что это, но это не невидимый текст, я пробовал. По моей задумке регион InvisibleText рисуется с текущим фоном (background color) и текущим фоном (foreground color). То есть невидим (если сделать выделение, то виден).

Зачем нужно? Да мало ли зачем, пригодится, это дело авторов схем (спойлеры, разгадки, ответы, и т.п.). Но у меня есть один практичный пример, где хотелось бы скрыть некие маркеры в специальном тексте, симулирующем консоль с выводом команд (PowerShellFar). Вывод разделяется маркерами и красится как схема text, остальное, т.е. команды, красятся как PowerShell. Немного вычурно, но вполне пригодно. Вот только маркеры вывода хотелось бы иметь невидимыми.

P.S. С помощью специальной цветовой схемы это решается. Но другой пользователь может ее не иметь или не хотеть иметь специальную текущей. Тогда у него эти маркеры будут видны. А хотелось бы, чтобы именно по умолчанию были не видны (а вот специальной схемой это можно и поменять, если надо).
User avatar
HaRT
Moderator
Posts: 10858
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Alexey Samlyukov wrote: у меня по-прежнему амд сэмпрон 3000+ от 2004 года
Вот как раз подкинули уточнение:
vitalidon wrote: Последняя рабочая версия Colorer для старых non-SSE2 CPU типа AMD Athlon/Sempron это 1.2.3.0 от 28.01.2016.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Alexey Samlyukov
Posts: 1765
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

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

Post by Alexey Samlyukov »

ясно, надо бы тогда 1.2.3.0 выложить в доступ.
vitalidon
Posts: 9
Joined: Tue 26 Apr, 2016 21:50

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

Post by vitalidon »

Alexey Samlyukov wrote:ясно, надо бы тогда 1.2.3.0 выложить в доступ.
Учитывая что в последующей версии 1.2.4.0 от 06.02.2016 заявлена сборка в VC++ 2015 осмелюсь предположить ошибку связанную с новым компилятором.
User avatar
HaRT
Moderator
Posts: 10858
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Обнаружилась :
  1. function good() end
  2.  
  3. function bad()
  4.  
  5.  fix=function() end
  6.  
  7. end
Важно, что идентификатор именно fix.
Colorer из Far Manager, version 3.0 (build 4637) x86.
Фар есть инструмент, а не нянька. © 2009 DrKnS
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 »

HaRT wrote:Обнаружилась... ошибка в схеме Lua... Важно, что идентификатор именно fix...
Я просто не реализовал подсветку такого вида объявлений функции, т.к. по стилю это соответствует обычному объявлению переменной (пусть и переменной типа функции).
User avatar
HaRT
Moderator
Posts: 10858
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Aidar wrote: Я просто не реализовал подсветку такого вида объявлений функции
Основная проблема в том, что нарушается сопоставление пар function—end.
Фар есть инструмент, а не нянька. © 2009 DrKnS
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 »

HaRT wrote:Основная проблема в том, что нарушается сопоставление пар function—end.
В моём варианте схемы не нарушается. Возможно, что-то поменяли и нечаянно "сломали" эту часть раскраски.
fix_func.png
fix_func.png (1.73 KiB) Viewed 7151 times
vitalidon
Posts: 9
Joined: Tue 26 Apr, 2016 21:50

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

Post by vitalidon »

vitalidon wrote:
Alexey Samlyukov wrote:ясно, надо бы тогда 1.2.3.0 выложить в доступ.
Учитывая что в последующей версии 1.2.4.0 от 06.02.2016 заявлена сборка в VC++ 2015 осмелюсь предположить ошибку связанную с новым компилятором.
Не знаю поможет чем то или нет, но на всякий случай привожу ссылку на статью Microsoft в которой изложены изменения в компиляторе VC++ 2015 которые могут повлиять на работоспособность исходного кода: Breaking Changes in Visual C++ 2015.
User avatar
Wave
Posts: 1885
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 14 times
Been thanked: 26 times

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

Post by Wave »

А можно в \FarColorer\base\hrd\rgb\black.hrd заменить строку 67

Code: Select all

<assign name="def:Path" fore="#40015a" />
На что-нибудь посветлей? Например, #4050cc хотя бы? А то каждый раз, как этот цвет где-то встречается, мои глаза получают сложный открытый перелом. Что-либо разобрать можно только если выделить этот кусок текста.


А встречается он хоть и по мелочам, но частенько и удобство схемы портит только в путь!

А могло быть


P.s. Цвет #4050cc взял из соседней строки <assign name="def:URL" fore="#6070ec" /> и на #202020 его затемнил.
Пользуюсь ФАРом больше 20 лет © собирательный.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

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

Post by DrKnS »

По мотивам http://forum.farmanager.com/viewtopic.p ... 29#p129910
ctapmex wrote: в vc 2015 уже полная/почти полная поддержка с++11. ну не повод ли уже ?
А не повод ли уже это отразить и в колорере?
То, что появилась куча новых ключевых слов и типов, ещё терпимо. Основная проблема в том, что {} внутри () всегда считаются ошибкой:
2016-05-24_23-24-04.png
2016-05-24_23-24-04.png (1.51 KiB) Viewed 7188 times
Post Reply

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