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

Здесь можно обсудить ваш любимый плагин.
User avatar
ctapmex
Posts: 1015
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 6 times
Contact:

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 (старые версии доступны тут)



Что не разжёвано в документации плагина:
  • Как подключить собственные цветовые стили *.hrd
  • Как подключить собственную схему:
    • используя пользовательский файл прототипов:
    • используя папку auto:
    • через пользовательский catalog.xml:
  • Как переопределить существующую схему
  • Как правильно "удалить" какую-либо стандартную схему
  • Как использовать относительные пути и переменные окружения
  • Если раскраска неправильна:
  • Неочевидные настройки: maxlinelength (в теме)
  • Тонкая настройка подсветки для отдельной схемы: в теме.

2useven10
Posts: 4024
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 181 times

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

Post by 2useven10 »

Latest post of the previous page:

buniak_a_h, FarColorer какой (take5 или take44ever)?
Last edited by HaRT on Wed 23 Jan, 2019 18:35, edited 2 times in total.
Reason: Исправлено название Colorer 4

2useven10
Posts: 4024
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 181 times

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

Post by 2useven10 »

ctapmex wrote:
Wed 23 Jan, 2019 17:41
что в плагин не приходят события "пустышки"
Не приходят. zg настаивает, что плагин сам должен о себе позаботится - timer, ACTL_SYNCHRO, ProcessSynchroEventW() ...
Last edited by 2useven10 on Wed 23 Jan, 2019 17:52, edited 1 time in total.

User avatar
ctapmex
Posts: 1015
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 6 times
Contact:

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

Post by ctapmex »

ну да, так и есть
zg 15.03.2015 03:02:46 +0200 - build 4305

1. в ProcessEditorInput не посылаются псевдоклавиши KEY_IDLE и KEY_NONE.

User avatar
zg
zero-gravity
Posts: 5773
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 142 times
Contact:

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

Post by zg »

2useven10 wrote:
Wed 23 Jan, 2019 17:46
Не приходят. zg настаивает, что плагин сам должен о себе позаботится - timer, ACTL_SYNCHRO, ProcessSynchroEventW() ...
ну реально, запустить тред в котором крутить цикл while(true){Info.AdvControl(ACTL_SYNCHRO);Sleep(1000);} и в ProcessSynchroEventW дёргать уже готовый обработчик idle не должно занять сильно больше времени, чем потрачено на обсуждение этого здесь, не?

2useven10
Posts: 4024
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 181 times

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

Post by 2useven10 »

Если сохранять текщую логику, в обработчике надо проверять как давно была нажата 'нормальная' клавиша.
Но да, всё делается не так уж сложно.

User avatar
ctapmex
Posts: 1015
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 6 times
Contact:

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

Post by ctapmex »

в ночном билде проверяйте.

buniak_a_h
Posts: 1610
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 109 times
Been thanked: 141 times
Contact:

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

Post by buniak_a_h »

2useven10 wrote:
Wed 23 Jan, 2019 17:44
buniak_a_h, FarColorer какой (take5 или take44ever)?
Я не понял, про какой Вы спрашиваете. Но:
Far 3.0.5355 x64 с FarColorer версии 1.2.9 (build 1) - пока не докрасит, редактор "висит" (недоступен).
Far 1.75 с Colorer видимо Take5 (не знаю, как в 1-м ФАРе получить версию плагина, но архив назывался farcolorer-take5.beta2.zip - докрашивает в фоне (но намного дольше).

Garrett
Posts: 177
Joined: Mon 01 Aug, 2005 10:23
Been thanked: 1 time

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

Post by Garrett »

Еще заметил такой баг. Допустим открыл файл, раскраска есть. Поискал что-то через research, найденное выделилось, а раскраска пропала. если сдвинуть курсор, чтобы выделение пропало, то раскраска возвращается.
На 1.75 такого не было, хотя я там пользовался SandR от Спинозы.
Использую в старом Фаре colorer4ever.far.rar и colorer4ever.lib.rar от 2001г.

Garrett
Posts: 177
Joined: Mon 01 Aug, 2005 10:23
Been thanked: 1 time

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

Post by Garrett »

Пробовал как-то на старом Фаре такую библиотеку, Colorer-take5.beta4, но нужная мне раскраска там сменилась, а сам Игорь не смог доделать её по моим пожеланиям, и я вернулся на старую, безукоризненную библиотеку.

buniak_a_h
Posts: 1610
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 109 times
Been thanked: 141 times
Contact:

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

Post by buniak_a_h »

Garrett wrote:
Wed 23 Jan, 2019 20:04
Еще заметил такой баг
Видимо, тот же баг:
Есть файл qqq.qqq, внутри - текст на LUA. "Насильно" назначаем из списка тип файла lua. Раскраска "проявится" только после любой клавиши. Как будто refresh не выполняется.

buniak_a_h
Posts: 1610
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 109 times
Been thanked: 141 times
Contact:

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

Post by buniak_a_h »

Garrett wrote:
Wed 23 Jan, 2019 20:08
Пробовал как-то на старом Фаре такую библиотеку, Colorer-take5.beta4, но нужная мне раскраска там сменилась, а сам Игорь не смог доделать её по моим пожеланиям, и я вернулся на старую, безукоризненную библиотеку.
А сравнить ...\hrc\common.jar от обеих версий и поправить в новом то, что Вам надо - не? Там, вроде, стандартные xml-файлы с регэкспами...

User avatar
HaRT
Moderator
Posts: 9331
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 99 times
Been thanked: 213 times

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

Post by HaRT »

buniak_a_h wrote:
Wed 23 Jan, 2019 20:16
Там, вроде, стандартные xml-файлы с регэкспами...
У версий 4ever и take5 существенно разная XML-схема, т.е. раскраска описывается во многом по-другому.
Фар есть инструмент, а не нянька. © 2009 DrKnS

2useven10
Posts: 4024
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 5 times
Been thanked: 181 times

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

Post by 2useven10 »

ctapmex,
zg wrote:
Wed 23 Jan, 2019 18:05
ну реально, запустить тред в котором крутить цикл
Imho таймер более подходящий инструмент. Тем более исполнено буквально - неубиваемый поток, 'неаккуратнеько'.
Может лучше при создании EditorSet запустить таймер (например: CreateTimerQueue(), CreateTimerQueueTimer()),
а при уничтожении - DeleteTimerQueueEx() ?

buniak_a_h
Posts: 1610
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 109 times
Been thanked: 141 times
Contact:

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

Post by buniak_a_h »

John Doe wrote:
Tue 22 Jan, 2019 13:22
Давно есть запись.
Что-то я нашёл только запись от 23.01.19 ... Наверно, хотели поместить, да забыли. Может, потому и не исправляется?

User avatar
ctapmex
Posts: 1015
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 6 times
Contact:

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

Post by ctapmex »

2useven10 wrote:
Wed 23 Jan, 2019 22:13
ctapmex,
Imho таймер более подходящий инструмент. Тем более исполнено буквально - неубиваемый поток, 'неаккуратнеько'.
Может лучше при создании EditorSet запустить таймер (например: CreateTimerQueue(), CreateTimerQueueTimer()),
а при уничтожении - DeleteTimerQueueEx() ?
попробую с таймером. но разницы с точки зрения "неубиваемо" не будет. EditorSet - общий класс, уничтожается только при выгрузке плагина/остановке фара.

User avatar
ctapmex
Posts: 1015
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 6 times
Contact:

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

Post by ctapmex »

да, с таймером лучше получилось, судя по process explorer

Post Reply

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