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

Здесь можно обсудить ваш любимый плагин.
User avatar
ctapmex
Posts: 1010
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 4 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
John Doe
Бюрократ
Posts: 12531
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 235 times

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

Post by John Doe » Wed 25 Dec, 2013 11:11

Latest post of the previous page:

NightRoman
В шапке давно есть ссылка на ваши рекомендации.

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

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

Post by NightRoman » Wed 25 Dec, 2013 11:16

John Doe wrote:NightRoman
В шапке давно есть ссылка на ваши рекомендации.
А, хорошо, спасибо. Хоть будет куда отсылать. Но очевидно, что многие эту инфу сами не находят. Неинтуитивное место для этого, может быть.

User avatar
John Doe
Бюрократ
Posts: 12531
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 235 times

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

Post by John Doe » Wed 25 Dec, 2013 11:17

С тех пор как шапка отвалилась да, неинтуитивно.

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

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

Post by NightRoman » Wed 25 Dec, 2013 11:22

Может, тогда под спойлер хоть не прятать?

И неточно там сформулировано "Как правильно переопределять дистрибутивные схемы собственными". Предложенный способ и для добавления новых схем тоже подходит. Юзеру еще надо об этом еще догадаться. Тем более, что первым пунктом там "Как добавить схему, используя авто", юзер может решить, что добавлять надо только так. А способ через авто тоже не лишен проблем с мержами при апдейтах (правда не сами файлы мержить, а набор файлов, но все равно хлопоты).

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

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

Post by NightRoman » Wed 25 Dec, 2013 11:31

Кстати, про auto. Идея сама хорошая, но очень неудачно выбрано положение этой папки. И не настраивается (или неправ?).

User avatar
John Doe
Бюрократ
Posts: 12531
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 235 times

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

Post by John Doe » Wed 25 Dec, 2013 11:31

NightRoman wrote:А способ через авто тоже не лишен проблем с мержами при апдейтах (правда не сами файлы мержить, а набор файлов, но все равно хлопоты).
Какие такие проблемы? Апдейт распаковывается поверх и всё.
NightRoman wrote:Кстати, про auto. Идея сама хорошая, но очень неудачно выбрано положение этой папки. И не настраивается (или неправ?).
Расположение auto можно настроить в catalog.xml

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

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

Post by NightRoman » Wed 25 Dec, 2013 11:36

Какие такие проблемы? Апдейт распаковывается поверх и всё.
Это частичный мерж. Остаются старые файлы, которые удалены из поставки.
Расположение auto можно настроить в catalog.xml
Не знал. А как?
Но и это не идеально. Надо менять или иметь свой каталог. Вот если бы через окружение или настройки FarColorer - могло бы быть удобнее.

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

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

Post by NightRoman » Wed 25 Dec, 2013 11:38

Попутно. А в авто empty.hrc просто для примера?

User avatar
John Doe
Бюрократ
Posts: 12531
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 235 times

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

Post by John Doe » Wed 25 Dec, 2013 11:39

NightRoman wrote:Это частичный мерж. Остаются старые файлы, которые удалены из поставки.
Частичного обычно хватает.
NightRoman wrote:
Расположение auto можно настроить в catalog.xml
Не знал. А как?
Эта папка прописана в стандартном catalog.xml, см. там.
NightRoman wrote:Но и это не идеально. Надо менять или иметь свой каталог. Вот если бы через окружение или настройки FarColorer - могло бы быть удобнее.
Добавить ещё одну папку где-нибудь в пользовательском профиле было бы неплохо, и это можно сделать в пользовательском catalog.xml, путь к которому вы указываете в настройках.
Но вы правы, что имеет смысл сделать это сразу в стандартном catalog.xml, тогда пользовательский даже не понадобится.
NightRoman wrote:Попутно. А в авто empty.hrc просто для примера?
Только лишь. Причём для плохого примера.

P.S.
Шапку я исправил как вы и просили.
Если созреют какие-либо уточнения по вашим рекомендациям, то отредактируйте свой пост.

User avatar
tvel
Posts: 38
Joined: Wed 17 Mar, 2010 23:48
Location: Lenobl
Has thanked: 5 times

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

Post by tvel » Wed 25 Dec, 2013 13:38

Sim wrote:Спасибо за подсказки, однако я не понял, что, конкретно, я должен сделать? Добавить эту строку в proto.hrc? Но тогда надо, наверное, сделать его копию и свой catalog.xml?
может проще в proto.hrc поменять строку:...
Я так понимаю, надо скопировать из прототипа

Code: Select all

  <prototype name="default" group="other" description="default type">
следующее

Code: Select all

    <filename weight='1'>//</filename>
и вставить в

Code: Select all

  <prototype name="text" group="other" description="plain text">
Какие именно веса тогда использовать?
Точно не скажу, надо понизить приоритет <filename weight='1'>//</filename> для "default" и повысить для "text".
Но как вы понимаете требовать этого от стандартной поставки нельзя, тип text - это тип text, а не умолчание типа.
Поэтому надо воспользоваться своим catalog.xml для переопределения этого в "своём proto.hrc".

User avatar
tvel
Posts: 38
Joined: Wed 17 Mar, 2010 23:48
Location: Lenobl
Has thanked: 5 times

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

Post by tvel » Wed 25 Dec, 2013 13:57

Sim wrote:Спасибо за подсказки, однако я не понял, что, конкретно, я должен сделать?...
Или просто кинуть в папку \base\hrc\auto такой файл "textd.hrc":

Code: Select all

<?xml version="1.0" encoding='Windows-1251'?>
<!DOCTYPE hrc PUBLIC 
	"-//Cail Lomecb//DTD Colorer HRC take5//EN" 
	"http://colorer.sf.net/2003/hrc.dtd">

<hrc version="take5" xmlns="http://colorer.sf.net/2003/hrc"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://colorer.sf.net/2003/hrc http://colorer.sf.net/2003/hrc.xsd">

 <prototype name="textd" group="user" description="text for default">
  <location link="textd.hrc"/>
  <filename weight='1.5'>//</filename>
 </prototype>

 <type name="textd">
  <import type="text"/>

  <scheme name="textd">
   <inherit scheme="text"/>
  </scheme>
	
 </type>
</hrc>
Вроде работает.

User avatar
Sim
Posts: 405
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 3 times
Been thanked: 1 time
Contact:

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

Post by Sim » Wed 25 Dec, 2013 14:13

tvel, спасибо, такой вариант действительно работает, а вот со своим catalog.xml и proto.hrc у меня что-то не получилось, хотя вроде делал все правильно.
Случайности не случайны.

User avatar
Sim
Posts: 405
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 3 times
Been thanked: 1 time
Contact:

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

Post by Sim » Wed 25 Dec, 2013 14:41

еще бы справиться как-то с тормозами во время набора текста и перемещения курсора по сложным длинно-строчным файлам...
Случайности не случайны.

Kanareyka
Posts: 6
Joined: Sun 22 Dec, 2013 15:24

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

Post by Kanareyka » Wed 25 Dec, 2013 15:30

tvel wrote:Зачем выбирать в качестве исходника c.hrc? Он большой и сложный,
содержит связь через <!ENTITY> с файлом "c-win32.ent.hrc", который должен быть там же где вы помещаете копию c.hrc, естественно здесь у вас ошибка.

Я так понимаю вы хотели написать свой hrc "с нуля", ну так сделайте свою "чистую" заготовку, например...
Ура! Спасибо, это оказалось то, что нужно - чистая заготовка. Это, похоже, и правда все из-за связи. С Вашим примером заработало :) Надо было empty.hrc взять, но оказался слишком пустой, я никак не могла понять, что куда в него дальше писать :)
tvel wrote:Зачем выбирать в качестве исходника c.hrc? Он большой и сложный,
Да я просто взяла какой первый увидела :) Хто ж знал, что оно на ошибки и зависимости не ругается, а просто не работает...
tvel wrote:Учтите, также что расширение ".p" уже используется в колорере для другого типа, вес weight="3" вроде помогает,
если хотите потом увидеть свой hrc в стандартной поставке - можете обсудить веса с lazyeugene и ctapmex.
Спасибо, я об этом пока не думала. Как доведу более-менее до ума - обсудим.

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

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

Post by NightRoman » Sun 05 Jan, 2014 11:02

В последней сборке продублированы в разных местах схемы markdown.hrc, powershell.hrc, r.hrc. В репозитории на гитхабе они были перемещены и старая папка FarNet удалена - все правильно. А при сборке для Фара, видимо, старая папка все еще используется.

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

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

Post by ctapmex » Sun 05 Jan, 2014 17:30

напишу t-rex. поправит

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

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

Post by ctapmex » Sun 05 Jan, 2014 17:45

NightRoman wrote: Вопрос по colorer.exe. Это приложение поддерживается/обновляется? Если да, то где можно найти свежие версии? Столкнулся с такой проблемой. Кажется, colorer.exe в моем файле-каталоге не понимает строки типа

Code: Select all

<!ENTITY hrc "&#37;FARHOME&#37;/Plugins/FarColorer/base/hrc">
<!ENTITY hrd "&#37;FARHOME&#37;/Plugins/FarColorer/base/hrd">
Поддержка "&#37;FARHOME&#37;" была добавлена в сам колорер, а в colorer.exe?
выложил

Post Reply

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