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.
Maximus5
Posts: 3295
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 10 times
Contact:

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

Post by Maximus5 »

Latest post of the previous page:

Мда, так заработало. Но полные пути хранить не хочется...
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

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

Post by John Doe »

Относительный можно, т.е. замените на "hrd"
Maximus5
Posts: 3295
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 10 times
Contact:

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

Post by Maximus5 »

Относительно чего? От hrd каталога - не подхватился. Еще попробую...
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

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

Post by John Doe »

Собственно если заглянуть в catalog.xml то обнаружите что сущность &hrd; и определена просто как hrd, т.е. и тут относительный путь.

Можно определять и свои сущности, например:

Code: Select all

<?xml version="1.0" encoding='UTF-8'?>
<!DOCTYPE catalog PUBLIC "-//Cail Lomecb//DTD Colorer CATALOG take5//EN"
  "http://colorer.sf.net/2003/catalog.dtd"[
  
<!ENTITY hrd "hrd">
 
]>

  <hrd-sets>
    <hrd class="console" name="YYYY"   description="YYYY">
      <location link="&hrd;/console/black.hrd"/>
    </hrd>
  </hrd-sets>
А вот относительно чего - это правильный вопрос.
Скорее всего относительно catalog.xml
siberia-man
Posts: 131
Joined: Sat 28 Jun, 2014 23:07
Has thanked: 2 times
Been thanked: 9 times

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

Post by siberia-man »

John Doe
Maximus5
Я это и имел в виду в http://forum.farmanager.com/viewtopic.p ... 10#p121410. FarColorer видит относительные пути для моих hrc-файлов и не видит относительные пути для hrd-файлов.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

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

Post by John Doe »

siberia-man
Этому есть простое объяснение: catalog-console.xml и прочие оформлены как "инклуды" в catalog.xml, поэтому путь относительно catalog.xml.

Скопируйте штатный catalog.xml в нужное место, и укажите путь в настройках.

Да, не очень всё интуитивно, не спорю.
siberia-man
Posts: 131
Joined: Sat 28 Jun, 2014 23:07
Has thanked: 2 times
Been thanked: 9 times

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

Post by siberia-man »

Копирование штатного catalog.xml приведет к тому, что стандартное оформление "слетит". Разве не так?

И все таки это не объясняет, а больше запутывает. hrc файлы тоже подключаются как "инклуды", но путь до них можно указать относительный. И в случае стандартных hrc файлов (которые в каталоге плагина) они берутся относительно каталога плагина, а в случае пользовательских - берутся относительно пользователского файла списка схем. А вот пользовавельские hrd файлы берутся всегда относительно каталога плагина (или глобального catalog.xml). При этом пользовательские файл списка схем и файл цветовых стилей указан в настройках плагина.
Maximus5
Posts: 3295
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 10 times
Contact:

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

Post by Maximus5 »

В общем, черный фон к diff/commit прикрутил, может кому еще полезно будет.



В сочетании с и алиасами gs/gd получилось удобно.
Attachments
git-diff-base.7z
(3.29 KiB) Downloaded 86 times
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

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

Post by John Doe »

siberia-man wrote:Копирование штатного catalog.xml приведет к тому, что стандартное оформление "слетит". Разве не так?
Путь к файлу со стандартными прототипами можно откорректировать. Доступны и переменные окружения.
И все таки это не объясняет, а больше запутывает.
Значит просто поверьте на слово.
А пожелания стоит зарегистрировать на мантисе, иначе потеряются.
helg
Posts: 1
Joined: Tue 23 Sep, 2014 16:27

Подсветка "else ifeq" в makefile

Post by helg »

В строке "else ifeq ($(OS),Darwin)" фрагменты подсвечены красным (значит, там ошибки). gmake4 на файл не ругается.
Far 3.0.4040 x64

---Makefile ---
ifeq ($(OS),Windows)
#Windows
else ifeq ($(OS),Darwin)
#MAC
else
#Common Unix
endif
-----------
makefile-coloring-Far-3.0.4040-x64.gif
makefile-coloring-Far-3.0.4040-x64.gif (6.48 KiB) Viewed 6327 times
User avatar
tvel
Posts: 38
Joined: Wed 17 Mar, 2010 23:48
Location: Lenobl
Has thanked: 5 times

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

Post by tvel »

Формат catalog.xml таков:

Code: Select all

<complexType name="hrc-sets">
    <sequence>
      <element name="location" type="location" maxOccurs="unbounded"/>
    </sequence>
    <attribute name="log-location" type="xs:string">
    </attribute>
  </complexType>

  <complexType name="hrd-sets">
    <sequence>
      <element name="hrd" type="hrd-entry" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
  </complexType>
Что не совсем справедливо/удобно. Может лучше приблизить "прототипирование" у HRD к тому как у HRC?

Code: Select all

<complexType name="hrd-sets">
    <sequence>
      <element name="location" type="location" maxOccurs="unbounded"/>
    </sequence>
  </complexType>
Чтоб было возможно

Code: Select all

  <hrd-sets>
    &catalog-console;
    &catalog-rgb;
    &catalog-text;
    <location link="&hrd;/auto"/>
  </hrd-sets>
в catalog.xml? И описания HRD подхватывались бы автоматически.
Marty
Posts: 170
Joined: Sun 29 Jan, 2006 12:29

FarColorer - Документация, FAQ - где? Как им пользоваться, как настраивать?

Post by Marty »

Здравствуйте!
Переношу свои схемы для колорера от старого 1.75ого фара. Я и там уже все позабыл, а в новом колорере похоже многое поменялось.
В поставке нет никакой документации вообще, где ее искать - не понятно.

Как похоже на первый взгляд, весь фарш в каталоге FarColorer\base
Что такое

Code: Select all

hrc
hrd
catalog.xml
hrd - вроде то, что нужно. Скопировал hrd\console\dnlike.hrd с новым именем, прописал в base\hrd\catalog-console.xml. В настройках плагина ничего не поменялось, перезапуск фара не помог.

Далее, не понятно, где мне раскраску править - в console или в rgb?
В настроках плагина меняю "Выбор цветогого стиля" - ничего не меняется. TrueMod включен, если меняю там - меняется. Это что, два перпендикулярных способа настройки? TrueMod, как я понял, просто позволяет тюнить цвета от стандартных консольных до труколорных. А всякие схемы должны не в нем настраиваться. Но текущее поведение как-то не похоже.

По hrd

Code: Select all

<assign name="def:TypeKeyword" fore="#bb7977"/>
Где искать, какие name могут быть? Или я сам задаю их, а потом где-то использую эти имена?

Параметры плагинов - FarColorer - Настройки схем. Диалог - это круто, но я не понял, а где эти конфиги лежат? Мне бы их ручками удобнее поправить было бы.

Ну, вообщем, для начала вроде всё, пока вопросов больше не имею :)
Игорь Юдинцев
Posts: 726
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 2 times

Re: FarColorer - Документация, FAQ - где? Как им пользоваться, как настраивать?

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

> hrd - вроде то, что нужно. Скопировал hrd\console\dnlike.hrd с новым именем, прописал в base\hrd\catalog-console.xml. В настройках плагина ничего не поменялось, перезапуск фара не помог.

Нужно править catalog-console.xml.

> Далее, не понятно, где мне раскраску править - в console или в rgb?

Зависит от того, в консоли или под ConEmu запущен FAR.

> TrueMod, как я понял, просто позволяет тюнить цвета от стандартных консольных до труколорных. А всякие схемы должны не в нем настраиваться. Но текущее поведение как-то не похоже.

TrueMod для ConEmu.

> Где искать, какие name могут быть? Или я сам задаю их, а потом где-то использую эти имена?
> Параметры плагинов - FarColorer - Настройки схем. Диалог - это круто, но я не понял, а где эти конфиги лежат? Мне бы их ручками удобнее поправить было бы.

catalog-console.xml.
Marty
Posts: 170
Joined: Sun 29 Jan, 2006 12:29

Re: FarColorer - Документация, FAQ - где? Как им пользоваться, как настраивать?

Post by Marty »

Игорь Юдинцев wrote:> hrd - вроде то, что нужно. Скопировал hrd\console\dnlike.hrd с новым именем, прописал в base\hrd\catalog-console.xml. В настройках плагина ничего не поменялось, перезапуск фара не помог.

Нужно править catalog-console.xml.
Так поправил и там - скопировал элементы от оригинального dnlike - сделал

Code: Select all

    <hrd class="console" name="dnlikemag"  description="Gray a'la DN by Martynov">
      <location link="&hrd;/console/dnlikemag.hrd"/>
    </hrd>
Ничего не поменялось, новой схемы в настройках плагина как не было, так и нет.
Игорь Юдинцев wrote:> Далее, не понятно, где мне раскраску править - в console или в rgb?

Зависит от того, в консоли или под ConEmu запущен FAR.
console - это для стандартной виндовой консольки? Ок, это мой вариант. А как определяется, что использовать? Far/Colorer сам детектит, под ConEmu он запущен или нет?
Игорь Юдинцев wrote:> TrueMod, как я понял, просто позволяет тюнить цвета от стандартных консольных до труколорных. А всякие схемы должны не в нем настраиваться. Но текущее поведение как-то не похоже.

TrueMod для ConEmu.
Но у меня, если его включить, он напрочь перекрывает стандартные схемы, их меняешь - не меняешь, результат определяется только схемой TrueMod'а
Игорь Юдинцев wrote:> Где искать, какие name могут быть? Или я сам задаю их, а потом где-то использую эти имена?
> Параметры плагинов - FarColorer - Настройки схем. Диалог - это круто, но я не понял, а где эти конфиги лежат? Мне бы их ручками удобнее поправить было бы.

catalog-console.xml.
Так там только ссылки на эти hrd-схемы, а как они связываются с раскраской синтаксиса, что-то не понял.
Игорь Юдинцев
Posts: 726
Joined: Sun 03 Apr, 2005 22:00
Location: Казань
Been thanked: 2 times

Re: FarColorer - Документация, FAQ - где? Как им пользоваться, как настраивать?

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

> Так поправил и там - скопировал элементы от оригинального dnlike - сделал
> Ничего не поменялось, новой схемы в настройках плагина как не было, так и нет.

попробовал, схема появилась.

> А как определяется, что использовать? Far/Colorer сам детектит, под ConEmu он запущен или нет?

TrueMod подхватывает rgb-тему, кажется.

> Так там только ссылки на эти hrd-схемы, а как они связываются с раскраской синтаксиса, что-то не понял.

Там перечисление цветовых схем, где определяются псевдонимы для цветов, а эти псевдонимы уже используются в синтаксических схемах.
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Re: FarColorer - Документация, FAQ - где? Как им пользоваться, как настраивать?

Post by John Doe »

>TrueMod включен, если меняю там - меняется. Это что, два перпендикулярных способа настройки?
Да. TrueMod надо отключить.

Краткий FAQ есть в теме колорера.
Post Reply

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