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
Sim
Posts: 435
Joined: Fri 12 Jun, 2009 09:43
Has thanked: 11 times
Been thanked: 2 times
Contact:

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

Post by Sim »

Latest post of the previous page:

ctapmex wrote: Sat 18 Jul, 2020 18:07 сделал, в ночной сборке будет
что-то нет пока новой ночной сборки :(
Случайности не случайны.
User avatar
abelenki
Posts: 502
Joined: Thu 02 Jul, 2009 07:39
Location: Perm, Russia
Has thanked: 174 times
Been thanked: 23 times
Contact:

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

Post by abelenki »

Sim wrote: Sun 19 Jul, 2020 03:49что-то нет пока новой ночной сборки :(
https://github.com/FarGroup/FarManager/ ... .5641.1666
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 wrote: Mon 15 Jun, 2020 19:57 в версии 1.3.13 решил проблему зависания редактора при работе с длинными строками.
Уже лучше, но на больших файлах все равно есть тормоза, даже при перемещении курсора по тексту, видимо пока плагин не закончит раскраску он не отдает управление фару и делать ничего нельзя. Эх вот бы он полностью в фоне работал, и совсем не блокировал экран. Пусть медленно красит и показывает раскраску не сразу, но ввод с клавиатуры не должен тормозить.
Случайности не случайны.
S.A.
Posts: 61
Joined: Mon 17 Nov, 2014 19:52
Been thanked: 7 times

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

Post by S.A. »

Чистый профиль, 5641x64. В редакторе: F11 -> FarColorer -> Configure -> Main Settings -> [ ] Enabled (отключаю плагин) -> OK -> Main Settings -> [x] Enabled (включаю плагин) -> OK -> Exception occurred ­-> катаклизм.
Last edited by S.A. on Sun 19 Jul, 2020 19:59, edited 3 times in total.
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

S.A., да, накосячил. поправлю
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 20 Jul, 2020 11:16 S.A., да, накосячил. поправлю
исправлено
S.A.
Posts: 61
Joined: Mon 17 Nov, 2014 19:52
Been thanked: 7 times

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

Post by S.A. »

Спасибо, все работает. Тем временем я увидел в history, что плагин можно (или можно было) включать-выключать более элегантно, чем я это делаю (посылая макросом нажатия клавиш). Но при исполнении Plugin.Call("D2F36B62-A470-418D-83A3-ED7A3710E5B5","Enable") (или --//--,"Disable") ничего не происходит. Я что-то делаю не так или оно уже упразднено?
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

S.A.,
включение - Plugin.Call("D2F36B62-A470-418d-83A3-ED7A3710E5B5","Settings",Status, true)
информация в help файле , в разделе макросов
S.A.
Posts: 61
Joined: Mon 17 Nov, 2014 19:52
Been thanked: 7 times

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

Post by S.A. »

ctapmex,
Спасибо, вечно смотрю немного не там или чего-то не замечаю.
Поправлю опечатку для информативности — Status должен быть в кавычках.
Plugin.Call("D2F36B62-A470-418D-83A3ED7A3710E5B5","Settings","Status",true)
Plugin.Call("D2F36B62-A470-418D-83A3ED7A3710E5B5","Settings","Status",1)
Или false/0 в обратную сторону.
S.A.
Posts: 61
Joined: Mon 17 Nov, 2014 19:52
Been thanked: 7 times

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

Post by S.A. »

5647.1683
F11 -> FarColorer -> Configure -> Main Settings -> [ ] Enabled (отключаю плагин) -> OK -> Esc -> F11 -> FarColorer -> меню не открывается, происходит возврат к редактированию.

Если плагин выключен, то
Plugin.Call("D2F36B62-A470-418D-83A3ED7A3710E5B5","Editor","Status",1) ничего не делает (если должен, конечно).
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

первый кейс - ошибка. исправил.
второй кейс - так и должно быть. управление статусом конкретного редактора только если плагин включен

собрал x64 версию отдельно
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

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

Post by lost »

Открываем на редактирование текстовый файл (colorer включен); Ctrl-Tab на панели; F10 (выход). Результат:

Code: Select all

                      Исключение:  0xC0000094 - EXCEPTION_INT_DIVIDE_BY_ZERO
Подробности: {EXCEPTION}  Integer division by zero.
errno:       0x00000000 - No error
LastError:   0x00000002 - The system cannot find the file specified.
NTSTATUS:    0xC0000034 - Object Name not found.
Адрес:       0x0002C989 - colorer.dll!ProcessSynchroEventW
Функция:     ProcessEditorEventW
Источник:
Файл:        C:\Program Files\Far3\Plugins\FarColorer\bin\colorer.dll
Плагин:      FarColorer 1.3.21.0 (Syntax highlighting in Far editor, Igor Ruskih, Dobrunov Aleksey,
Eugene Efremov)
Far:         3.0.0.5649 x64 (7314fa8)
ОС:          6.1.7601.2.1.0.256.1

0x0002C989 colorer.dll!ProcessSynchroEventW
0x0002BAAA colorer.dll!ProcessSynchroEventW
0x0002C350 colorer.dll!ProcessSynchroEventW
0x000042E0 colorer.dll!<unknown> (get the pdb)
0x0001501E colorer.dll!<unknown> (get the pdb)
0x0002166C colorer.dll!ProcessEditorEventW
0x002DB40E Far.exe!<unknown> (get the pdb)
0x001B0248 Far.exe!<unknown> (get the pdb)
0x002D7C0E Far.exe!<unknown> (get the pdb)
0x003082CB Far.exe!<unknown> (get the pdb)
0x001889BC Far.exe!<unknown> (get the pdb)
0x001C538C Far.exe!<unknown> (get the pdb)
0x0032CDC3 Far.exe!<unknown> (get the pdb)
0x002A4C94 Far.exe!<unknown> (get the pdb)
0x002A450B Far.exe!<unknown> (get the pdb)
0x002A3F5D Far.exe!<unknown> (get the pdb)
0x002A3CB5 Far.exe!<unknown> (get the pdb)
0x002A01B8 Far.exe!<unknown> (get the pdb)
0x0014415D Far.exe!<unknown> (get the pdb)
0x0029E4A6 Far.exe!<unknown> (get the pdb)
0x0029E9B0 Far.exe!<unknown> (get the pdb)
0x0029EE4A Far.exe!<unknown> (get the pdb)
0x001B0248 Far.exe!<unknown> (get the pdb)
0x0029EB07 Far.exe!<unknown> (get the pdb)
0x00387E30 Far.exe!<unknown> (get the pdb)
0x0001556D kernel32.dll!BaseThreadInitThunk
0x0005372D ntdll.dll!RtlUserThreadStart
User avatar
HaRT
Moderator
Posts: 10863
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

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

Post by HaRT »

lost wrote: Sun 09 Aug, 2020 21:36Результат
То же в x86. Уточню, что приведённый текст выводится прямо в консоль, притом красным.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

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

Post by ctapmex »

это https://bugs.farmanager.com/view.php?id=3812 , в списке известных багов в history.txt описан. Причем это поведение достаточно старое.
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,
Почитал про этот баг, ситуация грустная складывается, да.
Можно однако придумать Луа-костыль оповещения плагинов о выходе из ФАРа,
и таким образом каждый сможет стать кузнецом своего счастья :) чем и хорош Луа.

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

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

Post by ccaid »

после сортировки имен тем сами темы оказались перепутаны
Фар делают добрые люди
Post Reply

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