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

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

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

Post by ctapmex » Wed 04 May, 2005 14:45

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 (в теме)
  • Тонкая настройка подсветки для отдельной схемы: в теме.

buniak_a_h
Posts: 1135
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 49 times
Contact:

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

Post by buniak_a_h » Tue 22 Jan, 2019 22:25

Latest post of the previous page:

Но... Готовьтесь к тормозам. Если на первом ФАРе колорер работал в фоновом режиме (т.е. можно было перейти в конец файла и продолжить работу, а раскраска "проявится" по готовности), то теперь колорер работает синхронно. Т.е. пока не раскрасит, редактор "мёртвый". Насколько я понимаю, именно это и есть та недоделка (уж извините, авторы, но правда дороже), из-за которой копья ломают...

siberia-man
Posts: 98
Joined: Sat 28 Jun, 2014 23:07
Has thanked: 1 time
Been thanked: 3 times

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

Post by siberia-man » Wed 23 Jan, 2019 05:48

buniak_a_h, спасибо. Как-нибудь попробую.

Garrett
Posts: 150
Joined: Mon 01 Aug, 2005 10:23

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

Post by Garrett » Wed 23 Jan, 2019 06:16

buniak_a_h, в Фаре 1.75 Колорер чуть тормозил при первом запуске(1-2сек), потом любые файлы и любой длины открывались раскрашенными мгновенно.
buniak_a_h wrote:
Tue 22 Jan, 2019 22:25
(т.е. можно было перейти в конец файла и продолжить работу, а раскраска "проявится" по готовности)
Это неправда, раскраска была сразу во всём файле. Возможно старый колорер раскрашивал не весь файл, а то, что видно в окне редактора, поэтому и был мгновенный. Но текущий колорер работает либо не так, либо что-то в нём поломали.

2useven10
Posts: 3967
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 169 times

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

Post by 2useven10 » Wed 23 Jan, 2019 09:45

Garrett, AFAIK...
В 1.75 использовалась другая версия библиотеки Colorer.
В старой версии плагин не ждал раскраски всего файла, просто отступал немного назад от начала экрана и красил оттуда.
С новой библиотекой так делать нельзя, поэтому плагину надо ждать раскраски всего файла.
У старой версии, несмотря на скорость, были свои недостатки. О причинах изменения поведения спрашивайте здесь.
Last edited by 2useven10 on Wed 23 Jan, 2019 09:47, edited 1 time in total.

User avatar
Sim
Posts: 402
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 3 times
Been thanked: 1 time
Contact:

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

Post by Sim » Wed 23 Jan, 2019 10:01

2useven10, а нельзя никак прикрутить старую версию плагина к Far3?
Случайности не случайны.

2useven10
Posts: 3967
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 169 times

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

Post by 2useven10 » Wed 23 Jan, 2019 11:00

Sim, Старая версия неюникодная. Для редактора это критично.

User avatar
Sim
Posts: 402
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 3 times
Been thanked: 1 time
Contact:

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

Post by Sim » Wed 23 Jan, 2019 11:10

2useven10, ну может переделать его на поддержку юникода можно?
Случайности не случайны.

2useven10
Posts: 3967
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 169 times

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

Post by 2useven10 » Wed 23 Jan, 2019 11:50

Конечно можно. Осталось найти того кто это сделает.

User avatar
DrKnS
Posts: 5405
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 240 times

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

Post by DrKnS » Wed 23 Jan, 2019 12:48

2useven10 wrote:
Wed 23 Jan, 2019 11:00
Для редактора это критично
Так он же не меняет ничего. В худшем случае раскраска где-то поплывёт из-за внезапных ?.

buniak_a_h
Posts: 1135
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 82 times
Been thanked: 49 times
Contact:

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

Post by buniak_a_h » Wed 23 Jan, 2019 17:14

Garrett wrote:
Wed 23 Jan, 2019 06:16
Это неправда, раскраска была сразу во всём файле.
К счастью, у меня есть FAR 1.74 и я смог проверить.
Файл 34618 строк
Перехожу в конец - раскраски нет, все действия доступны.
Через 75 секунд раскраска появляется.
Ответственнее надо быть с обвинениями! :evil:

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

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

Post by ctapmex » Wed 23 Jan, 2019 17:41

если все как написано в баге на мантисе, то похоже на то, что в плагин не приходят события "пустышки". idle вроде. кажется их удаляли когда то в прошлом. посмотрю


разницы между 1 и 2 версией особой нет. кроме юникода. движок не менялся. всё что отваливается в последнее время в первую очередь связано с изменениями в самом фаре
Last edited by ctapmex on Wed 23 Jan, 2019 17:43, edited 1 time in total.

2useven10
Posts: 3967
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 169 times

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

Post by 2useven10 » Wed 23 Jan, 2019 17:44

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: 3967
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 169 times

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

Post by 2useven10 » Wed 23 Jan, 2019 17:46

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: 1010
Joined: Fri 11 Apr, 2008 07:53
Been thanked: 4 times
Contact:

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

Post by ctapmex » Wed 23 Jan, 2019 17:53

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

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

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

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

Post by zg » Wed 23 Jan, 2019 18:05

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: 3967
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 169 times

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

Post by 2useven10 » Wed 23 Jan, 2019 18:22

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

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

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

Post by ctapmex » Wed 23 Jan, 2019 19:06

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

Post Reply

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