Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Syn (Lister plugin) 
Author Message
Vitalik



PostPosted: Fri Jul 14, 2006 20:41    Post subject: Reply with quote

Всем привет Smile

Кое-что обо мне и движке подсветки Batya написал правильно:
Batya wrote:
Syn и SynPlus сделаны на одном движке схем подсветки, в разработке которого участвует Vitalik - соавтор SynPlus вместе с SCHMaster именно по этой части.

А вот следующее высказывание для меня было новостью Laughing
Batya wrote:
Только SCHMaster в последнее время сильно неудовлетворен взаимодействием с Vitalik-ом и функционал схем подсветки в SynPlus правит сам, особо кардинально ничего не меняя.

И, наконец, вполне резонное предположение:
Batya wrote:
Однако, Vitalik и компания, видимо, продолжают менять движок схем подсветки. И как раз новый вариант и успользуется в Syn.


А теперь, так как в качестве компонента подсветки в Syn используется UniHighlighter, то позвольте попытаться ответить на некоторые ваши вопросы (которые касаются подсветки) Cool

Митяй wrote:
- Автор стащил у создателей SynPlus диалог настройки схем подсветки, но не догадался захватить диалог управления схемами подсветки. В результате можно по всякому настраивать свою схему, но изменить ассоциированные с ней файлы нельзя. Например, имеющаяся схема PHP ассоциирована с "PHP Files". Значит она будет использоваться при открытии PHP, но не будет при открытии PHP3, PHP4, PHTML и т.д.

В качестве временного решения данной проблемы можно просто вручную менять hgl-файлы. Найти нужный параметр не сложно, он всегда находится в секции <Info> и в зависимости от версии формата файла может называться либо FileTypeName, либо Extensions Smile
В дальнейшем планируется добавить возможность редактирования таких свойств подсветки (название, расширения, инфа об авторе) прямо в редактор подсветки (т.н. дизайнер).
Замечу, что в этом плагине для определения связей подсветки с расширениями файлов Sepa придумал очень простой механизм. При открытии файла плагином загружаются все подсветки поочереди и как только будет найдена подсветка, содержащая нужное расширение файла, то она будет выбрана для загрузки Smile

Sam Dark wrote:
2. Как не открывать плагином txt?

Учитывая то, что я написал выше - нужно просто удалить файл подсветки Txt.hgl Wink

Митяй wrote:
- Диалог настройки схем подсветки сделан коряво. При попытке скопировать диапазон и вставить в другое место выдаёт ошибку и вставляет неизвестно что

Упс... Недосмотрел Smile
Дело в том, что когда я менял механизм загрузки подсветок в компонент, я исключил один метод (GetAsStream) и временно закоментировал строку в дизайнере, которая этот метод использовала (при копировании правила в буфер обмена). Так что просто напросто сейчас ничего в буфер обмена не копируется..
Не волнуйтесь, это будет исправлено Wink

Митяй wrote:
- Одинаковые схемы в Syn и в SynPlus выглядят по разному (например схема HGL). Думаю, это от того, что SynPlus сначала подсвечивает диапазоны, а потом уже ключевые слова и группы символов, а Syn наоборот.

Нет, дело совсем не в этом..
Нужно учитывать несколько моментов. Попробую рассказать обо всем по порядку..
Существует несколько форматов файлов для подсветки, которые сложились исторически..
В первых версиях SynPlus использовался формат файла версии 1.5 (совместим с 1.0). В этом формате была возможность хранить для каждой подсветки список цветовых схем подсветки прямо в файле с подсветкой. Т.о. в одном файле было сразу несколько цветовых схем.
Новый формат 1.8 исключал эту возможность, так как предполагалось вынести эти цветовые схемы во внешний файл. Но при загрузке файлов старого формата (1.5) просто загружалась первая по списку цветовая схема, а не та, которая считалась "текущей".
В новой версии компонента исправлен этот недочет, поэтому при загрузке старых файлов (1.5) в новой версии компонента и выбирается иногда "другая" цветовая схема.
Также нужно учитывать, что новая версия компонента (которая используется в Syn и скоро будет в SynPlus) использует еще более обновленный формат (2.0) для поддержки CodeFolding'а (сворачивания кода) и мультитеговости (назначение для одного диапазона нескольких вариантов открытия/закрытия).

Митяй wrote:
Если кто хочет, могу прислать свою настроенную схему C++ (подсветка в стиле Borland CBuilder6), вместе со списком быстрой вставки по Ctrl+J и автозаполнением кода по Ctrl+Spase. В файле автозаполнения даны только основные типы, ключевые слова и директивы препроцессора без объяснений.

Если не затруднит, скинь подсветку на мыло highlighters(at)gmail(dot)com Wink
Спасибо Smile
_________________
Добро пожаловать на http://www.unihighlighter.com
View user's profile Send private message Visit poster's website Yahoo Messenger ICQ Number


Powered by phpBB © 2001, 2005 phpBB Group