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

Здесь можно обсудить ваш любимый плагин.
User avatar
ctapmex
Posts: 1240
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.
Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

Latest post of the previous page:

И еще небольшой вопрос: Как можно задать фон редактора для конкретной цветовой схемы (hrc) ?
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 »

Stalker4 wrote: Где можно посмотреть описание этих цветов, название цвета и его код ?
Выполните команду

Code: Select all

color /?
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 »

Stalker4 wrote: Как можно задать фон редактора для конкретной цветовой схемы (hrc) ?
В ent.hrc-файле найдите prototype для своей схемы и там попробуйте задать параметр "цвет фона по умолчанию" в виде:

Code: Select all

<parameters>
  <param name="default-back" value="#2"/>
</parameters>
Last edited by Aidar on Wed 09 Nov, 2016 15:48, edited 1 time in total.
Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

Aidar

В файле base\hrc\proto.hrc нашел схему pascal, добавил туда указанный Вами код, получилось так:

Code: Select all

  <prototype name="pascal" group="main" description="Pascal">
    <location link="jar:common.jar!base/pascal.hrc"/>
    <filename>/\.(\~?pas|dpr|dpk|inc|int|pp)$/i</filename>
    <firstline>/^(\{|\/\/|resourcestring|program|library|unit|package)/i</firstline>
    <parameters>
      <param name="default-back" value="#0"/>
    </parameters>
  </prototype>
но что то оно не сильно помогло, цвет фона всего файла (.pas) не поменялся на черный.

За цвета спасибо, но есть пара моментов:
1) Не понятно, как простому тексту (не попадающему в какую либо категорию) задать цвет.
2) Не хочет задаваться цвет для чисел, почему то берется цвет числа родителя.
В default.hrd добавил

Code: Select all

  <assign name="pascal:stNumber" fore="#7" back="#0"/>
а в auto\pascal.hrc заменил кругом pNumber на stNumber.

В атаче измененные мною файлы.
Attachments
col1.rar
(12.93 KiB) Downloaded 68 times
Last edited by Stalker4 on Wed 16 Nov, 2016 11:57, edited 1 time in total.
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 »

Stalker4
0, 2) Нужно ещё "Перезагрузить библиотеку схем" (пункт меню плагина FarColorer).
1)

Code: Select all

<assign name="def:Text" fore="#B" back="#1"/>
Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

Aidar

Добавил в default.hrd строку

Code: Select all

<assign name="pascal:stText" fore="#E" back="#0"/>
в base\hrc\auto\pascal.hrc внес определение региона

Code: Select all

<region name="stText" parent="Text"/>
А дальше не понятно, как схеме сказать что бы она стала использовать stText ?

Делал и "перезагрузку библиотеки схем" и просто перезапускал Far, цвет основного текста и фона не изменился и цвет цифр тоже не поменялся (п.2).
Last edited by Stalker4 on Wed 16 Nov, 2016 11:55, edited 1 time in total.
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 »

Попробуйте подправить прототип . (У меня работает, но я не использую auto.)
Ещё можно проверить наличие других прототипов для pas-файлов. Они могут перекрывать текущий прототип.
Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

С цветом фона и текста я разобрался, надо было внимательнее читать FAQ в начале темы - если я цветовую схему просто кладу в auto, то прототип должен быть описан в самом файле схемы.
Но проблема с цветом для чисел осталась, они все равно не хотят выводиться заданным мною цветом.
В атаче измененный файл схемы и определение цветов.
Attachments
col2.rar
(4.42 KiB) Downloaded 52 times
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 »

Обратите внимание на в pascal.hrc. Для них используется не stNumber, а Number.
См. jar:common.jar!base/lib/default.hrc.
Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

Aidar wrote: Обратите внимание на в pascal.hrc
Эти строки я видел, только не мог найти, где оно определяется,
Aidar wrote: Для них используется не stNumber, а Number.
Перенес эти схемы в мой pascal.hrc, поменял им регион и все стало как надо.

Большое спасибо за помощь.

P.S. Мда, в старом Colorer все было гораздо проще.
Ilya_Nsk
Posts: 10
Joined: Mon 28 Nov, 2011 13:06
Has thanked: 1 time

В редакторе пропадает подсветка синтаксиса

Post by Ilya_Nsk »

Версия 3.0 (build 4795) x64
Вызывается на редактирование текстовый файл типа XML, кодировка 65001, размер 1432К
Первые видимые на экране строки раскрашены, как положено, но при перемещении поиском в район 19000-ной строки (из 29000) или в конец (ctrl+pgdn) подсветка пропадает.
Однако, если двигаться по файлу "своим ходом", то подсветка сохраняется.

Установлен аддон "Colorer" из установщика
файл прилагаю
строка поиска: гамбит, искать 3-е и 4-е вхождение
Attachments
operators.xml.7z
(69.15 KiB) Downloaded 71 times
Last edited by Ilya_Nsk on Tue 22 Nov, 2016 03:54, edited 1 time in total.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

В редакторе пропадает подсветка синтаксиса

Post by John Doe »

Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

Есть txt файл,

В нем есть число которое начинается с буквы, например
b37
Вопрос: Как задать условие раскраски, что бы само число в этом случае отображалось цветом числа, а не общим цветом текста ?

Именно так оно было в старом Colorer, я уже к этому привык ...
kvkuzvesov
Posts: 1
Joined: Wed 11 Jan, 2017 13:40

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

Post by kvkuzvesov »

Я дико извиняюсь, но не нашел багтрекера, куда бы можно было оформить следующий баг.

Подсветка синтаксиса Perl, конструкция package. Colorer неправильно подсвечивает вариант package NAMESPACE VERSION, а именно, версия в формате v1.2.3 отображается как ошибка. Хотя было бы намного лучше, если бы ошибкой отобржались синтаксически неправильные варианты типа package abb bcd;, которые Colorer подсвечивает как верные.
Я в схемах Colorer'а нибумбум :P, поэтому у себя приблему "вылечил" грязным хаком файла perl-keywords.ent.hrc :

Code: Select all

<scheme name='package.content'>
	<inherit scheme='packages.any.ex'/>
	<!-- new -->
	<regexp match="/\b\w[\w\d]*\s+v\d[\d]*\.\d[\d]*\.\d[\d]*(.\d[\d]*)*\b/" region="packages.user"/>
	<!-- ^^ добавил это ^^ -->
	<regexp match="/\b\w[\w\d]*\b/" region="packages.user"/>
	<regexp match='/\S/' region='def:Error' priority='low'/>
</scheme>
nimdamsk
Posts: 19
Joined: Thu 22 Oct, 2009 12:10
Has thanked: 1 time

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

Post by nimdamsk »

Не подсвечиваются файлы Haskell (*.hs), в логе записи вида:

fatal: Can't open source stream: InputSourceException: jar:C:\Far30.x64\Plugins\FarColorer\base\hrc/common.jar!haskell.hrc: InputSourceException: Can't locate file in JAR content: 'haskell.hrc'

С остальными расширениями проблем не наблюдается.
Как починить?
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 »

Надо бы как минимум указать версию FAR.
В версиях FAR 3.0.4575 x86 и 3.0.4882 x86 в каталоге hrc нет схемы для haskell.

Посмотрите здесь .
Last edited by Aidar on Sat 14 Jan, 2017 17:03, edited 1 time in total.
Post Reply

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