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

DV
Posts: 355
Joined: Mon 07 Aug, 2006 08:23
Has thanked: 10 times
Been thanked: 3 times

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

Post by DV » Thu 07 Jul, 2011 20:40

Latest post of the previous page:

Недавно обратил внимание, что в исходниках C++ не подсвечиваются парные скобки внутри #define. Например:

Code: Select all

#define abs_val(x) (((x) < 0) ? (-(x)) : (x))
Поначалу думал, что это только с последней версией Colorer, но проверил с версией 1,0,3,0 - всё точно так же, не подсвечиваются.

User avatar
DJ-Andrey-sXe
Posts: 50
Joined: Wed 21 Sep, 2005 10:33
Location: Тольятти
Contact:

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

Post by DJ-Andrey-sXe » Sat 09 Jul, 2011 20:45

Нашёл похожую на проблему в раскраске JavaScript. На этот раз символ $

Код рабочий, . Убираем знак доллара — подсветка нормализуется.

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

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

Post by ctapmex » Sun 10 Jul, 2011 08:48

погляжу , что я явой можно сделать.

сейчас заинтересовал вопрос с тормозами колорера. я так понимаю, они есть. интересует не скорость раскраски всего файла, а тормоза при изменении текста.
опишите, кто наблюдает такое
1. тип файла
2. количество строк в нем
3. как проявляется.

на текущий момент поправил в ядре работу с строками, что дало на тестах выигрыш от 14 до 32 процентов, в зависимости от типа файла.
так же думаю стоит поправить открытие файла в far - открывать его сразу, а раскрашивать начинать после открытия.

User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 1 time

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

Post by Centaur » Sun 10 Jul, 2011 11:32

DV wrote:Недавно обратил внимание, что в исходниках C++ не подсвечиваются парные скобки внутри #define. Например:

Code: Select all

#define abs_val(x) (((x) < 0) ? (-(x)) : (x))
И это правильно, потому что макрос не обязан разворачиваться в сбалансированное по скобкам выражение.

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

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

Post by HaRT » Mon 11 Jul, 2011 10:48

sonar wrote:погляжу , что я явой можно сделать.
На всякий случай обращаю внимание, что там не Java, а JavaScript.
Centaur wrote:макрос не обязан разворачиваться в сбалансированное по скобкам выражение.
Да, не обязан.
Однако если в пределах макроса есть парная скобка, было бы удобно, чтобы она всё-таки подсвечивалась.
Легко ли этого добиться — отдельный вопрос.
Фар есть инструмент, а не нянька. © 2009 DrKnS

Zzzz
Posts: 88
Joined: Sat 13 Oct, 2007 10:12
Been thanked: 1 time

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

Post by Zzzz » Mon 25 Jul, 2011 17:06

1.0.3.4 падает при попытке открыть редактором любой *.nut (даже пустой), если прототип прописан в proto.hrc и squirrel.hrc.
Закомментировал его в squirrel.hrc - перестало падать; 1.0.3.1 не падал.
Пробовал с far /p"C:\Program Files\Far2\Plugins\colorer" .
Attachments
crash_colorer_1_0_3_4_double_proto.zip
(13.8 KiB) Downloaded 96 times
W7U SP1 x64

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

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

Post by ctapmex » Mon 25 Jul, 2011 17:25

в squirrel.hrc удали prototype.

topmo3
Posts: 135
Joined: Mon 21 Aug, 2006 15:36
Has thanked: 7 times
Been thanked: 5 times

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

Post by topmo3 » Wed 03 Aug, 2011 15:31

Кто-нибудь пользуется схемой PHP?
Когда-то давно я часто редактировал PHP файлы, и колорер прекрасно их расцвечивал.
Сейчас пришлось взяться за это опять, и в colorer 1.0.3.2 очень неприятно во многих местах внутри синтаксиса PHP
пробелы расцвечиваются синим цветом, как цвет HTML за пределами кода <?php ... ?>.
Например пробел между параметрами функции после запятой и строка после точки с запятой:

Code: Select all

explode("\n", $my_list);
             ^          ^

У меня Far 2.1 build 1807 bis19 x64

Где бы что поправить? Помогите, пожалуйста, очень мешает...

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

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

Post by ctapmex » Wed 03 Aug, 2011 16:30

обнови колорер до 1.0.3.4

topmo3
Posts: 135
Joined: Mon 21 Aug, 2006 15:36
Has thanked: 7 times
Been thanked: 5 times

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

Post by topmo3 » Thu 04 Aug, 2011 06:48

Большое спасибо, помогло.
FarColorer_far3_1.0.3.4_2095 - падает вместе с Far
FarColorer_far2_1.0.3.4 - работает

Maximus5
Posts: 3292
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 4 times
Contact:

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

Post by Maximus5 » Thu 04 Aug, 2011 06:59

Может вы запускали FarColorer_far3_1.0.3.4_2095 в Far2?

Кстати, есть мнение, что хотя в апи Far3 и не описана функция GetMinFarVersionW, тем не менее ее экспортить, во избежание...

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

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

Post by ctapmex » Thu 04 Aug, 2011 08:09

хорошая мысль. сделаю так.
надо уже заводить правила хорошего тона при написании плагина

topmo3
Posts: 135
Joined: Mon 21 Aug, 2006 15:36
Has thanked: 7 times
Been thanked: 5 times

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

Post by topmo3 » Thu 04 Aug, 2011 09:54

Maximus5 wrote:Может вы запускали FarColorer_far3_1.0.3.4_2095 в Far2?
точно :wacko:
Last edited by topmo3 on Thu 01 Jan, 1970 01:00, edited 0 times in total.
Reason: Исправлено форматирование цитаты

Maximus5
Posts: 3292
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 4 times
Contact:

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

Post by Maximus5 » Sun 07 Aug, 2011 00:10

Еще раз пожалуюсь...
В xml файле, указываемом в "Users file of color styles" нельзя использовать переменные окружения, в частности %FARHOME%.
:(
Можно что-нибудь сделать?


Maximus5
Posts: 3292
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 4 times
Contact:

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

Post by Maximus5 » Mon 08 Aug, 2011 12:43

И еще напомню, что "Change background editor" - не по английски

User avatar
NightRoman
Posts: 5911
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 10 times
Been thanked: 11 times
Contact:

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

Post by NightRoman » Mon 08 Aug, 2011 13:46

Вопрос по схемам регулярных выражений. Так называемые "встроенные опции" в принципе не поддерживаются и считаются ошибками или это как-то настраивается? (интересует вариант без редактирования схем колорера).

Пример: в этом регулярном выражении isx подсвечены как ошибки:

Code: Select all

(?isx:blah)
А во многих современных реализациях регулярок - это опции (например, i - это IgnoreCase). Особенно полезные, где все-про-все надо задать просто одной строкой без всяких дополнительных уловок.

Post Reply

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