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
Роман Пехов
Posts: 16
Joined: Thu 26 Aug, 2010 12:30
Location: Екатеринбург
Has thanked: 2 times

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

Post by Роман Пехов »

Latest post of the previous page:

ctapmex wrote: Sun 04 Oct, 2020 17:17 используйте плагин старой версии
Тогда мне бы исходный код самый свежий из работающих в Far 2. Раз уж вы разобрались в этой истории, наверное не составит труда дать ссылку или назвать номер последней версии, которая таки живёт в Фар 2.
Garrett
Posts: 240
Joined: Mon 01 Aug, 2005 10:23
Been thanked: 1 time

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

Post by Garrett »

Garrett wrote: Mon 21 Sep, 2020 06:08
ctapmex wrote: Sun 20 Sep, 2020 18:07 тогда будет выбираться modula
либо задать для предпочитаемого типа это расширение и вес выше
Спасибо за помощь, задал вес 2.0 для текстовых файлов, пока полёт нормальный.
А правило с модулой я задавал, чтобы удалить расширение "mod" там.
Но теперь ничего не надо.
Удачи!
К сожалению, я был не прав. Без вашей прицепки

Code: Select all

  <prototype name="dtd" group="xml" description="dtd">
    <location link="jar:../common.jar!xml/dtd.hrc"/>
    <filename>/\.(dtd|ent)$/i</filename>
    <filename weight="0.9">/\.mod$/i</filename>
  </prototype>
подавить раскраску go.mod не получается.

А почему работало уменя тогда я выяснил. Я вставил вашу прицепку в свой файл, работает, потом подумал, что если увеличу свои предпочтения до 2.0, тогда понижать не надо.
Скопировал свой старый myproto.hrc как myproto_hrc в той же(!!!) директории и в myproto.hrc осуществил задуманное. Т.е. удалил ваш код, оставил только мой с повышенным весом. И всё заработало! Оказалось как не называй файл-копию, где есть ваш код( myproto_hrc, myproto__hrc или просто myproto), ФарКолорер подхватывает и его тоже, и читает ваш код и работает типа "правильно".
Но если в директории auto не оставлять переименованные копии своих настроек, тода повышенный вес не работает.
Отсюда возникает 2 вопроса.
- Если вы в этой директории читаете все файлы подряд, зачем требовать класть как *.hrc?
- Получается "вес" больше 1 не срабатывает? раз работает принижение старого до 0.9, и текущий 1, но не работает просто текущий с весом 2.0.
User avatar
ctapmex
Posts: 1240
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

Роман Пехов wrote: Wed 07 Oct, 2020 01:32
ctapmex wrote: Sun 04 Oct, 2020 17:17 используйте плагин старой версии
Тогда мне бы исходный код самый свежий из работающих в Far 2. Раз уж вы разобрались в этой истории, наверное не составит труда дать ссылку или назвать номер последней версии, которая таки живёт в Фар 2.
https://github.com/colorer/Colorer-libr ... 250c7e59de
это еще было в svn, поэтому в отдельной репе.
файл проекта visual studio по пути far2colorer/src/
User avatar
ctapmex
Posts: 1240
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

Garrett wrote: Wed 07 Oct, 2020 20:12 Отсюда возникает 2 вопроса.
- Если вы в этой директории читаете все файлы подряд, зачем требовать класть как *.hrc?
- Получается "вес" больше 1 не срабатывает? раз работает принижение старого до 0.9, и текущий 1, но не работает просто текущий с весом 2.0.
никто не требует использовать hrc ;) так же как и блокнот не требует расширение txt для хранения текста. Но если вы хотите , чтобы подсветка под него подхватывалась автоматически, то и установите hrc. ну и само собой - единое расширение позволяет понимать что там

по второму вопросу, можно пример нового файла с повышенным весом, при котором не работает?
Garrett
Posts: 240
Joined: Mon 01 Aug, 2005 10:23
Been thanked: 1 time

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

Post by Garrett »

ctapmex wrote: Thu 08 Oct, 2020 18:35 по второму вопросу, можно пример нового файла с повышенным весом, при котором не работает?
Attachments
2020_10_09.zip
(1.39 KiB) Downloaded 33 times
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

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

Post by John Doe »

ctapmex wrote: Thu 08 Oct, 2020 18:35 никто не требует использовать hrc ;) так же как и блокнот не требует расширение txt для хранения текста. Но если вы хотите , чтобы подсветка под него подхватывалась автоматически, то и установите hrc. ну и само собой - единое расширение позволяет понимать что там
Мне показалось что человек пытался обратное сказать: сейчас из auto колорер читает все файлы невзирая на расширения, что нежелательно.
(я не проверял)
https://t.me/FarManager — Telegram чат
User avatar
ctapmex
Posts: 1240
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

John Doe wrote: Fri 09 Oct, 2020 09:30 Мне показалось что человек пытался обратное сказать: сейчас из auto колорер читает все файлы невзирая на расширения, что нежелательно.
(я не проверял)
я понял. исторически он ищет все файлы и пытается использовать . не взирая на расширение
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

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

Post by John Doe »

Ценности в таком поведении я лично не вижу, а возможность запретить загрузку изменением расширения кажется полезной.
https://t.me/FarManager — Telegram чат
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 »

ctapmex, мне часто приходится редактировать довольно огромные файлы .js но из-за того что колорер "не любит" длинные строки я решил отключить вообще раскраску файлов .js
Следуя инструкции из шапки я скопировал файл proto.hrc в user.hrc и заменил в нем код:

Code: Select all

  <prototype name="jsnet" group="main" description="JS.NET">
    <location link="jar:common.jar!base/js.net.hrc"/>
    <filename weight="0.5">/\.js$/i</filename>
  </prototype>
на такой:

Code: Select all

  <package name="jsnet" description="JS.NET">
    <location link="jar:common.jar!base/js.net.hrc"/>
  </package>
прописал в настройках путь к файлу %FARHOME%\Plugins\FarColorer\base\hrc\user.hrc и перезагрузил библиотеку схем.
Но ничего не изменилось, Колорер по прежнему определяет файлы .js и раскрашивает их
Что я делаю не так?
Случайности не случайны.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

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

Post by citRiks »

Sim,
ого, вот вы затронули тему, про которую я все забываю сам сказать.
про длинные строки, даже не важно какие.
вот на этом файле всегда убивается колорер, даже в х64.
А SciTE, например, не убивается,
и notepad++ не убивается, и обычный notepad не убивается,
и Atom не убивается, дальше проверять смысла нет,
никто не убивается, кроме ФАР+Колорер.
И становится немного обидно за державу.
Может можно вылечить?
происоединяю этот вредный файл, он хоть и называется json,
и внутри у него json, но он безз расширения, и прилеплены пара УРЛов вначале файла.
уже не знаю имеет ли это значение, какое значение,
но в общем этот файле несьедобный для ФАР+Колорер, зависает намертво
Но всем остальным редакторам пофиг.
@ctapmex ?
Attachments
json.7z
(28.7 KiB) Downloaded 38 times
Last edited by citRiks on Wed 14 Oct, 2020 18:24, 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 »

citRiks, у меня также происходит с многими js файлами, Far вешается во время раскраски и можно ждать так очень долго, в конце концов он открывает файл, но стоит хоть что-то поменять в нем как получаем опять зависание т.к. колорер заново раскрашивает все. В общем лучше вообще не красить чем так красить.
Случайности не случайны.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

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

Post by citRiks »

ctapmex, Sim,
Может быть наиболее простым для всех выходом будет если добавить в Колорер настройку "максимальная длина линии для раскраски" ?
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 »

что-то такое уже есть, но оно не помогает
я вот тут посмотрел схему "plain text", она не тормозит если переименовать файл в .txt, но отличается по раскраске не очень сильно от js, не показывает разве что зарегистрированные имена и парные элементы. Может можно как-то сделать настройку соответствий расширения файла определенной схеме или типа того?
Случайности не случайны.
User avatar
zg
zero-gravity
Posts: 6016
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

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

Post by zg »

citRiks wrote: Wed 14 Oct, 2020 18:21вот на этом файле всегда убивается колорер, даже в х64.
что это значит? я скачал последний far билда 5678 с официального сайта, запустил его с пустым профилем, открыл ваш файл — и он даже не раскрашивается. окей переименовал его в 1.json. он стал красится, при этом его можно спокойно редактировать, что в принципе совпадает с ожидаемым поведением.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

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

Post by citRiks »

zg, ой, спасибо и звинаюсь, сечас запустил без макросно (-М) и чета тоже типа нормально.
какой-то макрос шалит видать, буду выяснять
User avatar
zg
zero-gravity
Posts: 6016
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

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

Post by zg »

citRiks wrote: Wed 14 Oct, 2020 22:09ой, спасибо и звинаюсь
не могу вас извинить, у вас как минимум повторное игнорирование правил сообщения о проблемах. банить вас у меня никакого желания нет, но это последнее предупреждение.
Post Reply

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