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

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

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

Post by Garrett » Thu 10 Oct, 2019 11:40

Latest post of the previous page:

Far Manager, version 3.0.0.5485 x64

Файл t.txt 85мб, 573172 записи. Открыл в редакторе, скакнул в конец файла. Конец файла отобразился через 1мин и 14-15сек.

Win 10, 16Gb, i7-8700k

PS. Отключил раскраску - наступило счастье)))

Имхо не надо раскрашивать файл в фоне, надо раскрашивать только тот кусок, что светится на экране...
Last edited by Garrett on Thu 10 Oct, 2019 12:25, edited 2 times in total.

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

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

Post by Sim » Sun 03 Nov, 2019 04:36

buniak_a_h wrote:
Thu 10 Oct, 2019 11:07
"Фоновая" раскраска появилась не так давно
Я что-то пропустил? где включить фоновую раскраску? почему-то не вижу чтобы раскраска производилась в фоне и не мешала перемещаться по файлу, и редактировать его.
Far 3.0.5503 x86
Случайности не случайны.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 07:41

Sim wrote:
Sun 03 Nov, 2019 04:36
buniak_a_h wrote:
Thu 10 Oct, 2019 11:07
"Фоновая" раскраска появилась не так давно
Я что-то пропустил? где включить фоновую раскраску? почему-то не вижу чтобы раскраска производилась в фоне и не мешала перемещаться по файлу, и редактировать его.
Far 3.0.5503 x86
Тут была длинная дискуссия по поводу стррашных тормозов на больших файлах. В конце концов кто-то из разработчиков нашёл, почему фоновая раскраска пропала (в 1.75 была!) и восстановил. Искать совсем не хочется. Можете сами поэкспериментировать: с включённым Colorer-ом откройте на редактирование файл строк этак тысяч в 20. Когда-то ато приводило к зависанию. Ну, т.е. редактор не принимал никакие события, пока весь файл не раскрасит. Теперь можно работать сразу. Ну, правда, если перейти в конец файла, то там он будет не раскрашенный какое-то время. Потом раскрасится. И никаких дополнительных усилий для этого не требовалось. Я, конечно, "внутренней кухни" ФАР-а не знаю, но чем объяснить такое поведение кроме как "фоновой раскраской" и уж точно не знаю. И, конечно, она появилась раньше Вашей версии.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 07:50

Sim, посмотрите переписку примерно отсюда Тогда фоновой раскраски не было. Теперь есть. Если просмотрите от упомянутого сообщения и дальше, то найдёте, где заменили Colorer 4 на Colorer 5 (хотя не уверен, что я правильно применяю терминологию)
Особенно вот это моё сообщение. Там я специально исследовал этот вопрос.После этого довольно быстро всё восстановилось.
Last edited by buniak_a_h on Sun 03 Nov, 2019 07:53, edited 1 time in total.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 07:59

Sim, нашёт таки я сообщение, начиная с которого появилась фоновая раскраска!
ctapmex wrote:
Fri 25 Jan, 2019 05:23
в 2015 году в far отключили генерацию пустых событий, за счет которых colorer брал управление для прокраски в фоне. исправление - генерация этих событий внутри colorer
И было это в январе 2019 …
Last edited by buniak_a_h on Sun 03 Nov, 2019 08:00, edited 1 time in total.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 08:05

Sim,
%FARHOME%\Plugins\FarColorer\history.ru.txt: wrote: Версия 1.2.10.0 . 23.01.2019
1. не работала фоновая раскраска файла

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

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

Post by Sim » Sun 03 Nov, 2019 08:48

buniak_a_h, т.е. сейчас должна работать фоновая раскраска? почему же я ее не наблюдаю? может быть дело в x86? следует выкинуть старые ANSI плагины и перейти полностью на 64bit версии?
Случайности не случайны.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 09:05

Sim wrote:
Sun 03 Nov, 2019 08:48
buniak_a_h, т.е. сейчас должна работать фоновая раскраска? почему же я ее не наблюдаю? может быть дело в x86? следует выкинуть старые ANSI плагины и перейти полностью на 64bit версии?
Ну это точно вопрос не ко мне. Но у меня стоит и x86, и x64. И к обоим подключён multiarc - старый, из 1.74. И ещё парочка ANSI-плагинов... (LookDBF, FTP Client).
А что, у Вас редактор "вешается" при больших файлах?

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 09:07

Ну Вы опытный чел,

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

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

Post by Sim » Sun 03 Nov, 2019 09:11

buniak_a_h wrote:
Sun 03 Nov, 2019 09:05
А что, у Вас редактор "вешается" при больших файлах?
Да, пока полностью не раскрасится файл я сижу и смотрю на файловые панели, ничего делать не могу при этом, если отключаю раскраску в Colorer то файлы открываются моментально и никаких тормозов нет вообще.
Также до сих пор осталась проблема раскраски файлов с оочень длинными строками, раскраска таких файлов тоже морозит интерфейс, и каждое внесение изменений в таком файле вызывает новый тормоз, реально написал одну букву и ждешь пока она напечатается и раскраска файла обновится.
Вот приложил 2 файла, редактирование которых вызывает тормоза и дискомфорт
main1.js - открывается около 5 секунд, но при попытке внесения каких-либо изменений интерфейс морозится на несколько секунд (видимо Colorer обновляет раскраску). Также наблюдаю притормаживания просто перемещая курсор стрелками.
main2.js - первый раз открывается около минуты, повторное открытие происходит за 7 секунд.

Кстати, в 64bit версии фара все тоже самое.
Attachments
JavaScript.7z
(397.69 KiB) Downloaded 6 times
Last edited by Sim on Sun 03 Nov, 2019 09:59, edited 3 times in total.
Случайности не случайны.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 10:15

Sim wrote:
Sun 03 Nov, 2019 09:11
проблема раскраски файлов с оочень длинными строками,
Эта проблема решается настройками.

Оттуда Scheme settings , получаете
В нём надо указать схему default (в выпадающем списке можно фильтровать для удобства поиска) (на картинке цифра 1; параметр maxlinelenght (цифра 2) и поменять значение (цифра 3 (увы, сейчас уже не помню, как его менять. По-моему,можно уменьшить; тогда очень длинные строки раскрашиваться не будут. Но это не точно. "Поиграйтесь" с настройками)

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

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

Post by Sim » Sun 03 Nov, 2019 10:25

buniak_a_h, maxlinelength не решает проблему долгой раскраски, какие бы значения я не ставил все остается ровно так как и было.
Last edited by Sim on Sun 03 Nov, 2019 10:25, edited 1 time in total.
Случайности не случайны.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 10:35

Я попробовал на Вашей main2.js . Дефолтные настройки - открытие секунд 20. Задал 1000 - секунды 3 (правда, не вся строка раскрашивается, есессно). Задал 50 000 - больше минуты открывается. Так что зависит. Проблема именно в настройке.
Хотя в плагине, по-моему, ошибка: после изменения настройки захожу всё в то же окно - а там опять дефолтное значение!
Когда не было фоновой раскраски, я менял эти параметры прямо в файле …\Plugins\FarColorer\bin\hrcsettings.xml . Правда, при обновлении приходилось снова менять. после редактирования этого файла выгрузите и снова загрузите плагин (unload:colorer.dll и load:colorer.dll в командной строке)

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

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

Post by Sim » Sun 03 Nov, 2019 10:57

Однако, так я и не увидел никакой раскраски в фоне, интерфейс морозится и я вынужден ждать
Случайности не случайны.

buniak_a_h
Posts: 1230
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 88 times
Been thanked: 68 times
Contact:

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

Post by buniak_a_h » Sun 03 Nov, 2019 11:20

Sim wrote:
Sun 03 Nov, 2019 10:57
Однако, так я и не увидел никакой раскраски в фоне
Откройте %FARHOME%\changelog (33245 строки), перейдите в конец -раскраски нет. Подождите неск секунд (у меня - 15) - раскрасится. Раньше - до январской версии - пока не раскрасится Вы бы и в конец не перешли. А теперь и править можете.
Если у Вас не так - ищите, кто мешает. Может, сам Colorer у Вас старый? Или оба есть - и старый, и новый? И ставились в разные папки?
Ну, в общем, фоновая раскраска по строкам есть (т.е. при переходе к другой строке отдаёт управление). А вот одну строку раскрашивает непрерывно-монопольно. Надеюсь, авторы Вам подробнее расскажут.

User avatar
John Doe
Бюрократ
Posts: 12526
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 230 times

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

Post by John Doe » Sun 03 Nov, 2019 11:27


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

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

Post by Sim » Sun 03 Nov, 2019 11:51

buniak_a_h, поставил чистый Far 64bit, со стандартным набором плагинов, это чтобы исключить вероятность попадания в него старого Colorer. Открываю changelog жму Ctrl+PgDn для перехода в конец и жду несколько секунд, Far висит и ждет пока будет раскрашен весь файл до конца, потом я вижу что осуществлен переход в конец файла и там все уже раскрашено.
Случайности не случайны.

Post Reply

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