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.
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 »

Latest post of the previous page:

Надо бы как минимум указать версию 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.
nimdamsk
Posts: 19
Joined: Thu 22 Oct, 2009 12:10
Has thanked: 1 time

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

Post by nimdamsk »

Есть там схема.

Far30b4876.x64.20161230.7z\Plugins\FarColorer\base\hrc\proto.hrc

Code: Select all

  <prototype name="haskell" group="rare" description="Haskell">
    <location link="jar:common.jar!haskell.hrc"/>
    <filename>/\.hs$/i</filename>
  </prototype>
Far30b4876.x64.20161230.7z\Plugins\FarColorer\base\hrc\common.jar\rare\haskell.hrc

Но почему она не работает?
nimdamsk
Posts: 19
Joined: Thu 22 Oct, 2009 12:10
Has thanked: 1 time

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

Post by nimdamsk »

Отвечаю сам себе: потому, что в "Far30b4876.x64.20161230.7z\Plugins\FarColorer\base\hrc\proto.hrc" была ошибка в пути, правильный такой:

Code: Select all

<prototype name="haskell" group="rare" description="Haskell">
  <location link="jar:common.jar!rare/haskell.hrc"/>
  <filename>/\.hs$/i</filename>
</prototype>
Stalker4
Posts: 23
Joined: Fri 28 Oct, 2016 13:23

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

Post by Stalker4 »

John Doe wrote:Известный баг
http://forum.farmanager.com/viewtopic.p ... 70#p140070
Есть ли уже версия Colorer с исправлением этого бага (просмотр файлов большого размера) ?
писят шесят семисят
Posts: 37
Joined: Thu 02 Jul, 2015 22:11
Has thanked: 4 times
Been thanked: 1 time

Зачем HTML весь подсвечен красным фоном?

Post by писят шесят семисят »

Зачем ?
И так до конца файла. В чем цель?
Last edited by писят шесят семисят on Thu 01 Jan, 1970 01:00, edited 0 times in total.
Reason: Подклеил в тему. [spoiler]
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

писят шесят семисят wrote: Зачем ?
И так до конца файла. В чем цель?
Сам HTML-файл приложите в виде архива. И точную версию Фара укажите. (А заодно проверьте, такая ли раскраска на последней доступной версии.)
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
isee
Posts: 8
Joined: Wed 01 Jul, 2009 09:29
Location: cn.ua
Has thanked: 1 time
Contact:

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

Post by isee »

невалидный код последнего тега до красного бекграунда у текста, а именно:
В XHTML нужно закрывать тег <img> -> <img/>
цель - валидировать код

если не важен именно этот доктайп, поменять на <!DOCTYPE html> и красного не будет, там сильно лояльно всё
╭∩╮(︶︿︶)╭∩╮
interligator
Posts: 25
Joined: Tue 09 Mar, 2010 14:21
Has thanked: 4 times

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

Post by interligator »

Нет поддержки списков инициализации (в частности pair) в синтаксисе C++11:

q.push(make_pair(x,y)); // нормально подсвечивается, без ошибок
q.push({x,y}); // фигурные скобки выделяются красным как ошибка
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

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

Post by DrKnS »

В питоне неправильно разбирается r'\\' - это строка из двух бекслешей, а не "один бекслеш и одна экранированная кавычка и ошибкашефвсепропало".
chpock
Posts: 9
Joined: Tue 05 Mar, 2013 23:36
Has thanked: 1 time

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

Post by chpock »

Подскажите, пожалуйста, 2 вопроса:

1. Есть ли возможность принудительно включить какой-то синтаксис на определенном участке текста? Вроде каких-то "волшебных кавычек" (спец.последовательностей), которые работают в любых регионах и включают у colorer определенный синтаксис между собой. Вот например, тект между ">ColorerSyntax bla javascript\n' и '\n<ColorerSyntax bla' - будет раскрашиваться как javascript, где "bla" - название региона. Может с названием региона я перегнул... Ну вот как php'шные '<?'/''?>', только что бы работало везде и синтаксис можно указать самим видом кавычек.

Зачем нужно? Вот я редактирую shell-скрипт, который с помощью heredoc формирует файл содержащий текст на определенном языке. Редактировать такой heredoc - это просто вырвиглаз - все одним цветом, как обычная строка у shell скрипта. Хотелось бы его раскрасить.

Если такой возможности нет,. то есть ли какие пути с помощью пользовательской схемы, самому, определить такие "волшебные кавычки"? Может не с таким функционалом, но хоть что-то подобное.

2. На сколько я понимаю, у colorer'а нет поддержки modeline в формате vim/emacs или хоть в каком-то собственном формате. Есть ли какой-то способ заставить colorer понимать такие строки при определении типа файла? Ну, кроме глупого - для каждого синтаксиса определить особый прототип с подобранной firstline.

Может быть есть общий плагин/скрипт для редактора, который распознает строки modeline и устанавливает настройки редактора согласно ним? Гугление по "far modeline" и поиск по форуму по "vim" и "modeline" - никаких результатов не дало. Не верится, что никому и никогда не нужна была такая поддержка в редакторе.

Заранее спасибо)
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

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

Post by Taciturn »

Можно ли как-нибудь однократно настроить (т.е. чтобы при обновлении Far'а с плагинами на ломалось) следующее:
1. Для типа Regedit убрать расширение key (в жизни не видел чтобы это расширение так использовалось).
2. Добавить расширение ovpn к типу «Config, INI and CTL».
3. Сделать чтобы типом по умолчанию был «plain text», а не «default type».

Как сделать первое и второе ручной правкой scripts.ini.ent.hrc и proto.hrc я знаю, но хотелось бы настроить однократно.
А вот с третьим вообще никаких идей нет.
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Taciturn wrote: Как сделать первое и второе ручной правкой scripts.ini.ent.hrc и proto.hrc я знаю, но хотелось бы настроить однократно.
Поищите proto_user.hrc.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

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

Post by Taciturn »

Поискал и явно что-то не так понял.
Судя по всему «proto_user.hrc» не существует, это просто случайное имя, ни на что не влияющее. По сути чтобы «Добавить расширение ovpn к типу «Config, INI and CTL».» нужно в FarColorer\base\hrc\auto создать файл с каким-нибудь именем (например «proto_user») и расширением hrc, а затем «подключить собственную схему с тем же именем (name).» - т.е. записать в него какие-то строчки.
Скопировал empty.hrc, вроде добавил что нужно, но явно ошибся - не работает.

User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

Taciturn wrote: Поискал и явно что-то не так понял.
Судя по всему «proto_user.hrc» не существует
Я имел в виду поискать в этой теме, а не на своём диске. :ha:
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

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

Post by Taciturn »

Я в теме и искал. Готового примера не нашёл. В сообщении написал что и как понял, какой файл и где попробовал сделать.
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

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

Post by Taciturn »

Шапку я тоже не понимаю. :(
Как переопределить существующую схему Для этого достаточно подключить собственную схему с тем же именем (name).
+ сообщение, в котором сказано что данный метод не работает. И он действительно не работает - тип выбирается правильный, но раскраски нет.
Post Reply

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