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
Alexander84
Posts: 144
Joined: Fri 01 May, 2009 06:38
Has thanked: 16 times
Been thanked: 2 times

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

Post by Alexander84 »

Latest post of the previous page:

Затрудняюсь передать словами, как нужна настройка, отключающая FarColorer при попытке раскрасить файл больше, чем X килобайт. Скажем, нужно вырезать кусочек из электронной книги (fb2), а в ней есть картинки, из-за чего файл весит 10 и больше мегабайт — Фар показывает индикатор Reading 100% и зависает или появляется чёрное окно с надписью [0+] в углу и тоже висит. Приходится принудительно выгружать процесс из памяти, руками отключать плагин, вырезать кусочек из книги, потом опять включать плагин.

Кстати, и Фар почему-то не отзывается на ESC для прерывания открытия/раскраски большего файла, это нехорошо.
Last edited by Alexander84 on Sun 22 Oct, 2017 14:52, edited 1 time in total.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

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

Post by NightRoman »

cmd.exe wrote: Wed 27 Sep, 2017 22:36Предлагаю портировать Движок раскраски фалов у Vim, он очень шустрый. Очень похож на задумку в AirBrush, но более сильно развитую.
Colorer уже не поддерживается? Может, это временно?

Почему Vim? У Vim какой-то свой формат?

Всякие софты, что в тренде сейчас (хотя бы GitHub, VSCode) используют движки, работающие с textmate форматом (если не ошибаюсь). Я к тому, что этих готовых файлов в инете полно, и они активно поддерживаются и развиваются.
Last edited by NightRoman on Sun 22 Oct, 2017 14:54, edited 1 time in total.
User avatar
Sim
Posts: 435
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 11 times
Been thanked: 2 times
Contact:

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

Post by Sim »

Я на днях на телефоне с Android установил редактор QuickEdit так он открыл файл с длиннющими строками размером больше 1МБ и раскрасил полностью без зависаний. Да открытие заняло у него несколько секунд, но он справился.
Я к тому что от колорера мы ждем нормального функционирования, не хуже чем во многих других приложениях, но по факту он не справляется. Надо либо чинить его либо искать достойную замену.
Случайности не случайны.
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 »

NightRoman wrote: Sun 22 Oct, 2017 14:44У Vim какой-то свой формат?
Судя по статье Подсветка синтаксиса в VIM: полное погружение, в Vim используется упрощённый вариант того, что есть в Colorer в более полном виде.
siberia-man
Posts: 131
Joined: Sat 28 Jun, 2014 23:07
Has thanked: 2 times
Been thanked: 9 times

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

Post by siberia-man »

Почему-то развитие приостановлено. Последнее слияние было в конце июня. С того времени накопилось достаточно много исправлений и запросов на слияние. Хотелось бы, чтобы настоящие авторы нашли время для code review существующих предложенных исправлений и поместили их в основную ветку.
Last edited by siberia-man on Mon 23 Oct, 2017 08:59, edited 1 time in total.
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 можно. это вынос парсинга/раскраски во внешний поток от самого far. но тут не хватает времени и опыта под это. я в последние годы больше читатель чужого кода, чем писатель. что накладывает последствия. мне проще найти ошибку в чужом коде, чем написать свой кусок .

если кто собирается на ближайший highload , можем там встретиться, обсудить.
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

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

Post by cmd.exe »

NightRoman, первое что пришло в голову, просто подсветка работает очень шустро и стабильно.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
Alexander84
Posts: 144
Joined: Fri 01 May, 2009 06:38
Has thanked: 16 times
Been thanked: 2 times

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

Post by Alexander84 »

После откровения ctapmex стало грустно. Ведь альтернатив для подсветки синтаксиса в Фаре нет, верно? Получается, в ожидании героя, который продолжит развитие FarColorer, нам остаётся мириться с тем, что есть, либо вешать на F4 внешний редактор, так?
Last edited by Alexander84 on Tue 31 Oct, 2017 13:02, edited 1 time in total.
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

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

Post by HaRT »

Alexander84 wrote: Tue 31 Oct, 2017 13:01альтернатив для подсветки синтаксиса в Фаре нет, верно?
Air Brush
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
Sim
Posts: 435
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 11 times
Been thanked: 2 times
Contact:

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

Post by Sim »

HaRT, К сожалению с Air Brush тоже все грустно
Случайности не случайны.
User avatar
techie
Posts: 795
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 35 times
Been thanked: 6 times

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

Post by techie »

Если портировать на Rust, то там с мультипоточностью вроде как всё в порядке. Плюс есть некоторая доля фана. Но не очень понятно, как писать плагины на Rust под Far.
User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 114 times
Been thanked: 12 times

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

Post by sToLp »

John Doe wrote: Thu 11 Jan, 2018 08:27
sToLp wrote: Wed 10 Jan, 2018 18:49 и при автоматическом обновлении плагина настройки слетают
Значит неправильно настраиваете.
Возможно.
А не подскажете ли как правильно настроить раскраску Колорером файлов с расширениями, например, "lu_*"? Чтобы не слетала.
Полагаю, что не мне одному это было бы полезно узнать.
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

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

Post by HaRT »

sToLp wrote: Thu 11 Jan, 2018 12:48как правильно настроить раскраску Колорером файлов с расширениями, например, "lu_*"?
Многократно обсуждалось. Ищите в данной теме proto_user.hrc.

Вот мой
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

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

Post by John Doe »

sToLp wrote: Thu 11 Jan, 2018 12:48Полагаю, что не мне одному это было бы полезно узнать.
Поэтому я в шапку и добавил (сто лет как).
Попробуйте, если не получится, то будем разбираться.

proto_user это только один из вариантов, с папкой auto наверно проще
kyodzou
Posts: 2
Joined: Thu 11 Jan, 2018 14:34

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

Post by kyodzou »

подскажите пожалуста!
сделал схему разметки для своего типа файлов. все заработало, но есть один нюанс:
строки коментария на моем формате начинаются с символа $ в первом символе

<import type="def"/>
<region name="ftComment" parent="Comment"/>
...
<!-- Linear Comments -->
<regexp start="/^([$].*$)/i" region0="ftComment"/>

Colorer коректно подсвечивает закоментированную строку, но если в этой строке есть числа - они подсвечиватся как числа а не как коментарий.
Я такпонял, это свойства родительского стиля parent="Comment".
Что мне надо изменить чтобы вся строка подсвечивалась как комментарий вне зависимости от содержимого?
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

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

Post by HaRT »

kyodzou, выложите, пожалуйста, минимальную полную схему (т.е. только с описанием комментариев), которая воспроизводит проблему.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

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