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

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

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

Postby ctapmex » Wed 04 May, 2005 14:45

Far Colorer — плагин подсветки синтаксиса в редакторе, основанный на Colorer Library Игоря Русских.

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

Домашняя страница библиотеки Colorer | Домашняя страница плагина для FAR | GitHub | Анонс

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



Что не разжёвано в документации плагина:
  • Как подключить собственные цветовые стили *.hrd
  • Как подключить собственную схему:
    • используя пользовательский файл прототипов:
    • используя папку auto:
    • через пользовательский catalog.xml:
  • Как переопределить существующую схему
  • Как правильно "удалить" какую-либо стандартную схему
  • Как использовать относительные пути и переменные окружения
  • Если раскраска неправильна:
  • Неочевидные настройки: maxlinelength (в теме)
  • Тонкая настройка подсветки для отдельной схемы: в теме.
  • Документация по формату:
Last edited by ctapmex on Sat 16 Feb, 2013 15:47, edited 8 times in total.

писят шесят семисят
Posts: 37
Joined: Thu 02 Jul, 2015 22:11
Has thanked: 4 times
Been thanked: 1 time

Подсветка синтаксиса

Postby писят шесят семисят » Wed 24 Aug, 2016 17:05

Latest post of the previous page:

Скажите, а это нормально, что в одном XML файле подсветка работает только на первых 4988 символах?
А в другом если его открыть с конца, она не работает, пока не вернешься на 7654 строку, зато потом работает до конца файла?
Attachments
Capture.JPG
Capture.JPG (45.46 KiB) Viewed 5476 times

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

Подсветка синтаксиса

Postby Karagy » Wed 24 Aug, 2016 17:20

Совершенно нормально.

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

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

Postby HaRT » Wed 24 Aug, 2016 17:28

писят шесят семисят wrote:Source of the post подсветка работает только на первых 4988 символах
Тут соль в том, что они все в одну строку. Как изменить конкретную предельную длину строки, ищите в этой теме.
писят шесят семисят wrote:Source of the post если его открыть с конца, она не работает, пока не вернешься на 7654 строку
А это баг, его как раз на той неделе обсуждали: тут и далее.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
Sim
Posts: 349
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 1 time
Contact:

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

Postby Sim » Wed 31 Aug, 2016 11:28

HaRT wrote:
писят шесят семисят wrote:Source of the post подсветка работает только на первых 4988 символах
Source of the post Тут соль в том, что они все в одну строку. Как изменить конкретную предельную длину строки, ищите в этой теме.
Ну вот почему-то настройка параметра maxlinelength не помогает, Colorer все равно пытается раскрасить длинные строки до 5000 позиции и подвешивает Far на несколько минут, если файл пару МБ размером и все в одну строку.

Может надо где-то еще этот параметр настроить чтобы он применился?
Last edited by HaRT on Wed 31 Aug, 2016 11:36, edited 2 times in total.
Reason: Исправлена цитата
Случайности не случайны.

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

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

Postby NightRoman » Fri 02 Sep, 2016 11:46

Far 3.0.4774 x64 (с x86 все нормально).
Кто-нибудь наблюдает такую проблему?

- открыть Фар, перейти в его папку
- открыть в редакторе FarEng.hlf
- перейти в панели, не закрывая редактор
- выйти из Фара (F10)

Получаем на консоли:

Code: Select all

Exception: Divide by zero
Address: 0x000007FEEFBB3575 GetMinFarVersionW
Function: ProcessEditorEventW
Module: C:\Bin\Far\x64\Plugins\FarColorer\bin\colorer.dll

0x000007FEEFBB3575 GetMinFarVersionW
0x000007FEEFBB2DC2 GetMinFarVersionW
0x000007FEEFBB2F60 GetMinFarVersionW
0x000007FEEFBA0441 GetMinFarVersionW
0x000007FEEFB97983 GetMinFarVersionW
0x000007FEEFB9359B ProcessEditorEventW
0x000000013F8FB9E7
0x000000013F8FAA49
0x000000013F8F8809
0x000000013F92A2FE
0x000000013F921B45
0x000000013F7F5CDE
0x000000013F82F83B
0x000000013F94150A
0x000000013F8DDE66
0x000000013F8DB84B
0x000000013F8DB773
0x000000013F8DB4C7
0x000000013F8DB0F7
0x000000013F8D8B74
0x000000013F7BDC63
0x000000013F8D735E
0x000000013F8D7181
0x000000013F8D7460
0x000000013F8D7524
0x000000013F8D74FF
0x000000013F98FB20
0x00000000770A59BD BaseThreadInitThunk
0x00000000772DA2E1 RtlUserThreadStart

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

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

Postby HaRT » Fri 02 Sep, 2016 12:02

NightRoman wrote:Source of the post Кто-нибудь наблюдает такую проблему?
Я специально проверил на Фаре, распакованном (НЕ установленном) внутри C:\Users\ACCOUNT\Documents\Far\ и запущенном без прочих плагнинов, — не воспроизводится.
Фар есть инструмент, а не нянька. © 2009 DrKnS

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

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

Postby NightRoman » Fri 02 Sep, 2016 12:06

Без прочих плагинов я тоже проверял, повторяется. Может, дело в настройках. Буду еще разбираться. А может кто-то и воспроизведет тоже.

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

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

Postby NightRoman » Fri 02 Sep, 2016 12:09

Снес все настройки. Повторяется.

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

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

Postby HaRT » Fri 02 Sep, 2016 13:18

NightRoman wrote:Source of the post Снес все настройки. Повторяется.
Спрятал все настройки — не воспроизводится.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
DrKnS
Posts: 4500
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 110 times
Contact:

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

Postby DrKnS » Fri 02 Sep, 2016 17:52

Весна показала, кто где на ноль делил?

User avatar
Kerberos464
Posts: 1238
Joined: Wed 29 Jul, 2009 20:24
Location: Saint-Petersburg
Has thanked: 17 times
Been thanked: 1 time

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

Postby Kerberos464 » Wed 07 Sep, 2016 16:21

установил тут себе плагин [esc], создал простецкий конфиг esc_user.xml, строка со слово "bom" в нём подсвечивается неверно.
видимо, схема не знает такого ключевого слова (схема определилась как scripts.far -> Extended selection case).
скрин:

far 3.0.4783 x86.
16.09.2012 14:35:28 +0200 - build 2799 - все нативные плагины перестали работать.
30.09.2012 03:26:20 +0200 - build 2851 - все макросы перестали работать.
31.02.2029 25:61:61 +0200 - build 6666 - весь фар перестал работать.

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

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

Postby HaRT » Wed 07 Sep, 2016 16:49

Kerberos464 wrote:Source of the post scripts.far -> Extended selection case
Интересно, на каком основании эта ересь появилась в описании схемы (притом и в esc.hrc, и в proto.hrc)… На самом деле полное название плагина “[ESC] Editor's settings changer”. Хорошо бы в Колорере исправить.
Last edited by HaRT on Wed 07 Sep, 2016 16:50, edited 1 time in total.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
techie
Posts: 711
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 22 times
Been thanked: 2 times

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

Postby techie » Fri 09 Sep, 2016 04:47

История утеряна из-за херовой "миграции" на Github https://github.com/colorer/Colorer-sche ... ar.ent.hrc но можно покопаться с svn здесь вот https://sourceforge.net/p/colorer/svn/H ... ar.ent.hrc

Last edited by techie on Fri 09 Sep, 2016 07:19, edited 1 time in total.

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

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

Postby HaRT » Fri 09 Sep, 2016 11:46

techie wrote:Source of the post История утеряна
Да в данном случае она не так и важна. Просто надо, чтобы кто-то, для кого это раз плюнуть, взял и исправил эту строку в двух файлах.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
techie
Posts: 711
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 22 times
Been thanked: 2 times

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

Postby techie » Sat 10 Sep, 2016 07:22

Ааа, ну так кому угодно это раз плюнуть - на GitHub прям есть кнопочка Edit для такого.

Fixed. https://github.com/colorer/Colorer-sche ... its/master
Last edited by techie on Sat 10 Sep, 2016 07:28, edited 1 time in total.

Alexander Zvyagin
Posts: 1
Joined: Sun 18 Sep, 2016 16:34

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

Postby Alexander Zvyagin » Sun 18 Sep, 2016 16:58

Плиз, помогите художнику!
Для себя я ещё иногда программирую на С++, поэтому пользуюсь для этого Far'ом.
У меня долго был старый Far 1.70, и там была настроена вот такая схема подсветки синтаксиса:

http://imgur.com/a/dJzHn

для вот этого альтернативного плагина:

http://plugring.farmanager.com/plugin.php?pid=90&l=en

Для Far 64bit этого плагина больше нет.
Поэтому я решил наконец настроить Colorer.
И тут возник такой вопрос...

Дело в том, что разные ключевые слова в стандартной цветовой схеме Colorer отнесены по группам языка: KeywordsSTL, С++11, унаследованные от Си и т.д. Но если подойти к вопросу как художник, то "на выхлопе" подсветки есть всего 15 цветов из 16-тицветной палитры (чёрный не считаем).

В итоге хочется иметь в схеме Colorer-а не синтаксические, а именно цветовые группы: White, Yellow, Blue и т.д.

В этом случае для настройки цветовой схемы пользователю даже не надо указывать цвет - ему будет достаточно только переместить ключевые слова языка из одного цвета в другой. Ну и поменять цвета синтаксических элементов типа скобочек, которые останутся, как сейчас.

То есть вопрос в переделке синтаксических групп Colorer-а.

Например я хочу, что вот эта секция в *.hrd-файле:

<assign name="def:Syntax" fore="#2"/>
<assign name="def:String" fore="#5"/>
<assign name="def:StringContent" fore="#5"/>
<assign name="def:StringEdge" fore="#5"/>
<assign name="def:Number" fore="#b"/>
<assign name="def:NumberSuffix" fore="#b"/>
<assign name="def:NumberPrefix" fore="#b"/>
<assign name="def:Keyword" fore="#e"/>
<assign name="def:KeywordANSI" fore="#f"/>
<assign name="def:KeywordStrong" fore="#f"/>

<assign name="и т.д."/>

поменялась примерно так:

<assign name="def:Syntax" fore="#2"/>
<assign name="def:String" fore="#5"/>
<assign name="def:StringContent" fore="#5"/>
<assign name="def:StringEdge" fore="#5"/>
<assign name="def:Number" fore="#b"/>
<assign name="def:NumberSuffix" fore="#b"/>
<assign name="def:NumberPrefix" fore="#b"/>
<assign name="def:White" fore="#f"/>
<assign name="def:Yellow" fore="#e"/>
<assign name="def:Blue" fore="#3"/>

<assign name="и т.д."/>

Нужно мне это, потому что как художник я настроил цвета разных ключевых слов максимально контрастно, чтобы например, двух жёлтых рядом не было (см. картинки выше). Но сейчас в Colorer-е, например "namespace" и "class" относятся к одной группе и им разные цвета не поставишь...

Спасибо!

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

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

Postby NightRoman » Sun 18 Sep, 2016 19:19

Alexander Zvyagin wrote:Source of the post например "namespace" и "class" относятся к одной группе

Мне кажется, что именно это надо поменять, чтобы позволить цветовую кастомизацию отдельно.

Текущая принципиальная организация схем мне кажется правильной. Они не должны знать или оперировать понятием "цвет". Цвет это одно из возможных представлений "региона" (и не единственное, колорер может создавать и HTML, и там можно и другие атрибуты регионам задать, не только цвета, это не консоль). Схемы и оперируют понятием "регион". Представление регионов определяется позже.

Другое дело, что некоторые схемы либо используют дефолтные регионы, либо не делают детально подразбивки на регионы, чтобы можно было тонко настроить. Но это исправляемые дефекты схем, а не подхода колорера.
Last edited by NightRoman on Sun 18 Sep, 2016 19:22, edited 2 times in total.


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

Who is online

Users browsing this forum: No registered users and 6 guests