Плагин входит в дистрибутив 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
Опционально плагин способен отображать текст в RGB режиме, и используя разные стили (bold/italic/underlined).
Этот режим называется TrueMod, для его работы в FAR 3 требуются специальный эмулятор консоли: Conemu.
Скриншоты можно глянуть странице проекта (актуальны только изображения, а описание немного устарело, в частности Console2 больше не поддерживается).
Или подключить пользовательские *.hrd в пользовательском catalog.xml
Внимание: в пользовательском файле цветовых стилей пути вычисляются относительно catalog.xml
В настройках плагина указать путь к файлу: Users file of schemes.
(Структура файла аналогична hrc\proto.hrc)
используя папку auto:
Два варианта:
Cоздать свой аналог proto.hrc и прописать туда прототипы, а в папку types положить сами схемы.
Минимальный (пустой) пример файла прототипов есть в дистрибутиве: auto/empty.hrc.
Внимание:empty.hrc служит для примера, изменять его не рекомендуется, т.к. при обновлении изменения потеряются.
Можно обойтись без отдельного файла прототипов, а разместить схемы непосредственно в папке auto.
Прототип в этом случае должен быть определён в самой схеме после тега <hrc>, без указания location
через пользовательский catalog.xml:
Вместо штатного base/catalog.xml можно использовать свой файл, указав путь к нему в настройках плагина.
В своём каталоге можно указать откуда загружать пользовательские прототипы и схемы.
Чтобы переопределять дистрибутивные схемы собственными надо пользовательский файл прототипов подключать после штатного proto.hrc:
Также в catalog.xml можно добавить пользовательские цветовые стили, см. <hrd-sets>
Как переопределить существующую схему
Для этого достаточно подключить собственную схему с тем же именем (name).
Если требуется изменить только параметры схемы (filename, firstline, parameters), то достаточно прототипа, как он указан в common.zip!hrc/proto.hrc. location схемы при этом нужно указать примерно так (для hrc-файла, находящегося в папке FarColorer\base\auto):
Как правильно "удалить" какую-либо стандартную схему
Чтобы какая-либо из стандартных схем исчезла из меню, надо в пользовательском файле прототипов "переделать" схему в пакет с тем же именем (name), например:
Кроме имени важно также сохранить значение location, потому как даже если эта схема вам не нужна, но от неё могут зависеть другие, нужные вам.
Как использовать относительные пути и переменные окружения
В настройках плагина при указании пути к catalog.xml удобно использовать переменные окружения, такие как %FARHOME%, %FARPROFILE%.
Переменные можно использовать и в самом файле catalog.xml, и в определениях прототипов.
Кроме того поддерживаются относительные пути во всех hrc файлах (путь вычисляется относительно файла, в котором он указан). Внимание: в пользовательском файле цветовых стилей (hrd) пути вычисляются относительно catalog.xml
Если раскраска неправильна:
В первую очередь нужно убедиться что тип файла определён верно (F11/FarColorer/List types).
В случае если определился не тот тип, что требуется, можно выбрать из списка более подходящий.
Или же переопределить типы, подкорректировав "условия срабатывания" схемы, заданные в атрибутах <filename> и/или <firstline>.
Часто достаточно подкорректировать атрибут weight='2', изменив умолчательное значение (2) в ту или иную сторону.
Не рекомендуется редактировать штатные прототипы и схемы, т.к. при обновлении изменения потеряются.
Как правильно переопределить схемы описано в других пунктах данного FAQ
Я на днях на телефоне с Android установил редактор QuickEdit так он открыл файл с длиннющими строками размером больше 1МБ и раскрасил полностью без зависаний. Да открытие заняло у него несколько секунд, но он справился.
Я к тому что от колорера мы ждем нормального функционирования, не хуже чем во многих других приложениях, но по факту он не справляется. Надо либо чинить его либо искать достойную замену.
Почему-то развитие приостановлено. Последнее слияние было в конце июня. С того времени накопилось достаточно много исправлений и запросов на слияние. Хотелось бы, чтобы настоящие авторы нашли время для code review существующих предложенных исправлений и поместили их в основную ветку.
Last edited by siberia-man on Mon 23 Oct, 2017 08:59, edited 1 time in total.
привет.
да, с развитием и поддержкой не получается. к сожалению, времени на это нет совсем. поэтому проект заглох. появится ли в будущем - пока сомневаюсь. поэтому если есть желающие, то дам права на репозиторий, правьте, развивайте.
еще раз обозначу, что проблема тормозов текущего движка - последовательный парсинг файла по внешним конфигам. не просто подсветка ключевых слов, а подсветка согласно структуре файла, места в файле.
ускорить работу движка в far можно. это вынос парсинга/раскраски во внешний поток от самого far. но тут не хватает времени и опыта под это. я в последние годы больше читатель чужого кода, чем писатель. что накладывает последствия. мне проще найти ошибку в чужом коде, чем написать свой кусок .
если кто собирается на ближайший highload , можем там встретиться, обсудить.
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
После откровения ctapmex стало грустно. Ведь альтернатив для подсветки синтаксиса в Фаре нет, верно? Получается, в ожидании героя, который продолжит развитие FarColorer, нам остаётся мириться с тем, что есть, либо вешать на F4 внешний редактор, так?
Last edited by Alexander84 on Tue 31 Oct, 2017 13:02, edited 1 time in total.
Если портировать на Rust, то там с мультипоточностью вроде как всё в порядке. Плюс есть некоторая доля фана. Но не очень понятно, как писать плагины на Rust под Far.
sToLp wrote: ↑Wed 10 Jan, 2018 18:49 и при автоматическом обновлении плагина настройки слетают
Значит неправильно настраиваете.
Возможно.
А не подскажете ли как правильно настроить раскраску Колорером файлов с расширениями, например, "lu_*"? Чтобы не слетала.
Полагаю, что не мне одному это было бы полезно узнать.
подскажите пожалуста!
сделал схему разметки для своего типа файлов. все заработало, но есть один нюанс:
строки коментария на моем формате начинаются с символа $ в первом символе
Colorer коректно подсвечивает закоментированную строку, но если в этой строке есть числа - они подсвечиватся как числа а не как коментарий.
Я такпонял, это свойства родительского стиля parent="Comment".
Что мне надо изменить чтобы вся строка подсвечивалась как комментарий вне зависимости от содержимого?
методом тыка подобрал решение:
<regexp start="/^([$].*$)/i" region0="ftComment"/>
заменил на
<regexp match="/^([$].*$)/i" region0="ftComment"/>
теперь все отлично.
спасибо за готовность помочь!