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

Здесь можно обсудить ваш любимый плагин.
User avatar
ctapmex
Posts: 1241
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
buniak_a_h
Posts: 4262
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 644 times
Contact:

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

Post by buniak_a_h »

Latest post of the previous page:

citRiks wrote: Fri 18 Sep, 2020 12:37 плагин Колорера ориентруется не на экранные позиции, а на реальные.
1. Плагин, есессно, использует ediotor.AddColor. Так что определением экранных позиций заведует редактор
2. Вы опять смешали в кучу редактор и диалог. Диалог не умеет раскрашивать (кроме UserControl-я). Т.е. Ваше пожелание - не к тому адресовано. Для начала надо диалог переделать. Кардинально. И я сильно сомневаюсь, что этим будут заниматься.
Garrett
Posts: 240
Joined: Mon 01 Aug, 2005 10:23
Been thanked: 1 time

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

Post by Garrett »

Привет. Не получается подавить раскраску в файле go.mod. Добавлял в правило без раскраски, которое у меня есть для текстовых файлов, но Фар упорно светит буквы черным на темнокрасном фоне. Даже добавил кусок правила для modula, где убрал расширение mod. Не помогает(((
Attachments
files.zip
(914 Bytes) Downloaded 31 times
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

Arama wrote: Fri 04 Sep, 2020 17:51 Попытался обновить FAR с 3.0.5577 до 3.0.5656 на старенькой Windows 2003 64bit SP2, и при запуске получаю сообщение:
Откатился на 5577
исправлено
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

ccaid wrote: Tue 01 Sep, 2020 14:24 после сортировки имен тем сами темы оказались перепутаны
исправлено
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

ctapmex wrote: Mon 10 Aug, 2020 05:50 это https://bugs.farmanager.com/view.php?id=3812 , в списке известных багов в history.txt описан. Причем это поведение достаточно старое.
исправлено
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

Garrett wrote: Sat 19 Sep, 2020 15:09 Привет. Не получается подавить раскраску в файле go.mod. Добавлял в правило без раскраски, которое у меня есть для текстовых файлов, но Фар упорно светит буквы черным на темнокрасном фоне. Даже добавил кусок правила для modula, где убрал расширение mod. Не помогает(((
чтобы понять, какой тип выбирается для файла, необходимо в меню плагина выбрать "List types" - текущий тип будет выделен. в схемах по умолчанию это dtd.
отключить можно так в своих схемах
тогда будет выбираться modula
либо задать для предпочитаемого типа это расширение и вес выше
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

citRiks, выглядит это всё просто "жесть" . не обещаю, но я подумаю.
Garrett
Posts: 240
Joined: Mon 01 Aug, 2005 10:23
Been thanked: 1 time

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

Post by Garrett »

ctapmex wrote: Sun 20 Sep, 2020 18:07 тогда будет выбираться modula
либо задать для предпочитаемого типа это расширение и вес выше
Спасибо за помощь, задал вес 2.0 для текстовых файлов, пока полёт нормальный.
А правило с модулой я задавал, чтобы удалить расширение "mod" там.
Но теперь ничего не надо.
Удачи!
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

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

Post by ccaid »

ctapmex, а есть планы комплектный скрипт плагина перевести на новое АПИ?
Фар делают добрые люди
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

ccaid, он создавался как пример, и возможно замена старому скрипту (без lua).
если его заменять то на что? просто старые api заменить на новые ?
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

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

Post by ccaid »

ctapmex, это вполне работающее решение. если не ошибаюсь, он воспроизводит хоткеи, уходящие в глубь веков, от предыдущих версий колорера. и это хороший базис для допиливания под индивидуальные потребности.
Фар делают добрые люди
User avatar
John Doe
Бюрократ
Posts: 13851
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

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

Post by John Doe »

Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", 13) выводить меню со списком настроек, и в новом апи соответствия этой команде пока нет.

Предлагаю Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5","Settings", "Menu").
Можно сдедать этот параметр умолчательным, чтобы работало и без явного указания:
Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5","Settings")
https://t.me/FarManager — Telegram чат
User avatar
John Doe
Бюрократ
Posts: 13851
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

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

Post by John Doe »

Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", 0) выводит главное меню колорера.
В новом апи соответствия нет.

Необходимости в общем и нет, т.к. того же эффекта можно добиться другой командой:

Code: Select all

Plugin.Menu("D2F36B62-A470-418d-83A3-ED7A3710E5B5")
Но возможно для полноты стоит добавить и в новое апи, например так: Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", "Menu").
(и тоже сделать умолчательным)
https://t.me/FarManager — Telegram чат
User avatar
John Doe
Бюрократ
Posts: 13851
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

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

Post by John Doe »

Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", 12) перезагружает библиотеку схем, а в новом апи соответствия нет.

Есть Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", "Settings", "Reload") (Перезагружает все настройки плагина и открытых редакторов).

Наверно можно было бы сделать так:

Code: Select all

Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", "Settings", "ReloadSchemes")
Или так:

Code: Select all

Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5", "Settings", "Hrc", "Reload")
https://t.me/FarManager — Telegram чат
User avatar
John Doe
Бюрократ
Posts: 13851
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

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

Post by John Doe »

Code: Select all

       "CrossVisible" - Видимость и тип креста в редакторе
         Возвращает текущий стиль креста и правила отображения для данного редактора.
          <OutParam1> Число: 0 - не отображается; 1 - вертикальный; 2 - горизонтальный; 3 - полный крест
          <OutParam2> Число: 0 - выключен; 1 - включен; 2 - согласно параметрам схемы
Тут похоже неточность: в <OutParam2> никогда не возвращается значение 2.

Code: Select all

         Если указаны дополнительные параметры, то изменяет стиль и правила отображения
          <Param1> - Число: 1 - вертикальный; 2 - горизонтальный; 3 - полный крест
А тут нет возможности указать вид креста "согласно параметрам схемы".

P.S.
Кажется выше уже обсуждалось. В этих параметрах наблюдается избыточность.
Например, если крест выключен (OutParam2=0), то первый параметр смысла не имеет.
Предалагаю поменять порядок параметров, и для удобства указать их названия:

Code: Select all

local isActive, shape = Plugin.SyncCall("...", "Editor", "CrossVisible", 0, 1)
Plugin.SyncCall("...", "Editor", "CrossVisible", isActive, shape)
https://t.me/FarManager — Telegram чат
Post Reply

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