Плагин входит в дистрибутив 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
ну да, логично. не подумал об этом.
по сути патовая ситуация - по синтаксису xml нельзя %, но если добавить system (можно) - то это внешняя ссылка и парсер xml её пытается прочитать.
попробовал обходной вариант - плагин упал. гляну парсер xml в плагине. но схему править точно не буду
в общем пока надо смерится с "ошибкой". единственный вариант корректного исправления, это замена % на hex код. но текущий парсер xml в плагине не поддерживает работу с hex значениями.
sonar wrote:в общем пока надо смерится с "ошибкой". единственный вариант корректного исправления, это замена % на hex код. но текущий парсер xml в плагине не поддерживает работу с hex значениями.
darkmist wrote:
Это происходит из-за того, что в схеме vbasic.hrc, из которой наследуется vbscript.hrc, обрабатывающий файлы с расширением vbs, схема PairedConstructions обрабатывается до Outlines, а используемые в PairedConstructions не содержат якоря дальнейшей обработки '\M'. Если применить такой патч:
то Outlines для указанных случаев начинают работать.
не знаю как у тебя и у Yuriy2000 завелось это исправление, но конкретно на предложенном тестовом файле не работает. нужно аналогично исправить и в vbscript.hrc . учтено будет в ближайшем релизе
darkmist wrote:
Попутно: идентификаторы функций в outlines задаются как \w+. На самом деле, они, вероятно, \w[\w\d]*
он самописный, ранее устраивал всем требованиям .
смотрел библиотеки, которые тянули бы все требования. единственная подходящая , это xerces-c. она большая...
<!ENTITY catalog-console SYSTEM "hrd/catalog-console.xml">
.
я в общем то присмотрелся уже к xerces-c . мощная библиотека. еще к ней icu прицепить , так вообще мега)) но размер большой. хотя в наше время размер не так важен.
if(abc)then
-- do smth
end
function test()
for i=1, 2 do
end
end
function test ()
do return end
end
function test ()
if
a
or
b
then
print(true)
end
end
Фар3. Работал с цветами редактора своем плагине, понадобился скриптик для дампа текущих цветов редактора. С его помощью заметил про колорер, что некоторые регионы перекрываются и возможно добавлены избыточно. Может, это так и задумано. Но может и нет - я лучше спрошу.
Файл catalog.xml из поставки. Дамп первой строки (отсортировано по позициям)
С его помощью заметил про колорер, что некоторые регионы перекрываются и возможно добавлены избыточно.
Перекрываются регионы, использованы умолчания для некоторых регионов, поэтому цвета одинаковые.
Всё правильно, можно задействовать все регионы из типа def в HRD с разными цветами - кому как нравиться.
Любые оптимизации при разных регионах но одинаковых цветах - сложны и могут сломать привычное поведение колорера.
Любые оптимизации при разных регионах но одинаковых цветах - сложны и могут сломать привычное поведение колорера.
Хотя это верно, это ведь не обязательно причина не делать лучше, если можно. Другое дело, что приоритет задачи может быть невелик в силу многих причин.
Кроме того, лишние регионы навсегда занимают память (до закрытия редактора), даже есть они за пределами экрана. Во всяком случае, так было в Фар2, в Фар3, вероятно тоже, так как CopyColor работает, используя эту особенность, и в Фар3.