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

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

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

Post by ctapmex » Wed 04 May, 2005 14:45

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
Alexey Samlyukov
Posts: 1759
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

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

Post by Alexey Samlyukov » Tue 26 Apr, 2016 14:31

Latest post of the previous page:

и да, у меня по-прежнему амд сэмпрон 3000+ от 2004 года ))

User avatar
NightRoman
Posts: 5899
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 10 times
Been thanked: 11 times
Contact:

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

Post by NightRoman » Tue 26 Apr, 2016 15:42

Есть либо вопрос, либо предложение нового типа региона "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: 8377
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 73 times
Been thanked: 123 times

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

Post by HaRT » Tue 26 Apr, 2016 22:04

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: 1759
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 2 times
Contact:

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

Post by Alexey Samlyukov » Wed 27 Apr, 2016 03:28

ясно, надо бы тогда 1.2.3.0 выложить в доступ.

vitalidon
Posts: 5
Joined: Tue 26 Apr, 2016 21:50

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

Post by vitalidon » Thu 28 Apr, 2016 21:49

Alexey Samlyukov wrote:ясно, надо бы тогда 1.2.3.0 выложить в доступ.
Учитывая что в последующей версии 1.2.4.0 от 06.02.2016 заявлена сборка в VC++ 2015 осмелюсь предположить ошибку связанную с новым компилятором.

User avatar
HaRT
Moderator
Posts: 8377
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 73 times
Been thanked: 123 times

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

Post by HaRT » Fri 29 Apr, 2016 19:02

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

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

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

Post by Aidar » Fri 29 Apr, 2016 21:05

HaRT wrote:Обнаружилась... ошибка в схеме Lua... Важно, что идентификатор именно fix...
Я просто не реализовал подсветку такого вида объявлений функции, т.к. по стилю это соответствует обычному объявлению переменной (пусть и переменной типа функции).

User avatar
HaRT
Moderator
Posts: 8377
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 73 times
Been thanked: 123 times

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

Post by HaRT » Fri 29 Apr, 2016 21:19

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

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

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

Post by Aidar » Fri 29 Apr, 2016 22:53

HaRT wrote:Основная проблема в том, что нарушается сопоставление пар function—end.
В моём варианте схемы не нарушается. Возможно, что-то поменяли и нечаянно "сломали" эту часть раскраски.
fix_func.png
fix_func.png (1.73 KiB) Viewed 4576 times

vitalidon
Posts: 5
Joined: Tue 26 Apr, 2016 21:50

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

Post by vitalidon » Thu 05 May, 2016 22:10

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: 1750
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 4 times
Been thanked: 11 times

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

Post by Wave » Tue 24 May, 2016 18:40

А можно в \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 его затемнил.
Пользуюсь ФАРом больше 15 лет © собирательный.

User avatar
DrKnS
Posts: 4842
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 4 times
Been thanked: 146 times

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

Post by DrKnS » Tue 24 May, 2016 21:38

По мотивам 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 4208 times

User avatar
HaRT
Moderator
Posts: 8377
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 73 times
Been thanked: 123 times

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

Post by HaRT » Mon 30 May, 2016 14:09

. Far Manager v3.0 build 4672,4693 x86
0:19 MSK:
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
HaRT
Moderator
Posts: 8377
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 73 times
Been thanked: 123 times

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

Post by HaRT » Mon 30 May, 2016 22:13

Пытаюсь фильтровать список (конкретно — Outliner для diff-файла) вводя не-алфавитно-цифровой символ (конкретно — дефис/минус, но и с другими ASCII-символами не из [\w] та же история) — ничего не происходит. А очень хотелось бы, чтобы фильтровать можно было по любым символам. Да и Справку поправить не мешает, ибо там написано нечто странное: [0-9a-z;:-_].
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
HaRT
Moderator
Posts: 8377
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 73 times
Been thanked: 123 times

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

Post by HaRT » Mon 30 May, 2016 22:36

HaRT wrote: Важно, что идентификатор именно fix.
Этот fix вообще много что портит, например, function foo() return foo(fix()) end: Image
На мой взгляд, надо его выкинуть, т.к. даже в комментариях он давал бы слишком много „ложных срабатываний“.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
ctapmex
Posts: 991
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 2 times
Contact:

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

Post by ctapmex » Sat 04 Jun, 2016 18:09

Alexey Samlyukov wrote:ясно, надо бы тогда 1.2.3.0 выложить в доступ.
в новой ночной сборке возможно починится работа на AMD

vitalidon
Posts: 5
Joined: Tue 26 Apr, 2016 21:50

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

Post by vitalidon » Thu 09 Jun, 2016 21:54

ctapmex wrote:
Alexey Samlyukov wrote:ясно, надо бы тогда 1.2.3.0 выложить в доступ.
в новой ночной сборке возможно починится работа на AMD
К сожалению, все еще продолжает "падать".
Сборка Far 4699 x86.
Версия FarColorer 1.2.8.0 . 04.06.2016

Exception: Illegal instruction
Function: ProcessEditorEventW
Module: colorer.dll

Post Reply

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