Какая последняя версия SynEdit или клон? - PullRequest
7 голосов
/ 22 декабря 2010

Некоторое время я не использовал synEdit, но сегодня я обнаружил, что мне нужен хороший редактор для формы с поддержкой сценариев. Когда я пошел, чтобы загрузить synEdit (который мой ум застыл во времени как «верная вещь»), я обнаружил, что первоначальный автор отказался от него. Я знаю, что FreePascal имеет версию synEdit - и я слышал, что есть где-то более свежая версия Unicode - но где именно я могу получить самую новую и лучшую версию?

Я бы предпочел поддержку юникода, если это возможно, но что более важно, это поддержка динамического стиля (возможность добавлять токены для подчеркивания ключевых слов, как в Delphi, когда вы получаете доступ к переменной только что введенного вами класса). *

Ответы [ 3 ]

5 голосов
/ 22 декабря 2010

http://synedit.sourceforge.net имеет ссылку на версию Unicode.

4 голосов
/ 16 декабря 2013

SynEdit намного быстрее, чем любой другой компонент текстового редактора. См. сравнительный тест здесь .

В настоящее время я разрабатываю новую IDE для Arduino (официальной версии не хватает слишком много стандартных функций IDE), чтобы внести свой вклад в сообщество Arduino. Поскольку я хочу, чтобы моя среда IDE работала без каких-либо виртуальных машин, а кроссплатформенность не является моей целью, я взял своего хорошего друга Delphi 7 и начал поиск обновленного SynEdit VCL. Немного разочаровывает, что у него все еще нет очень важной функции: свертывание кода (которое сегодня можно назвать «стандартной функцией редактора кода»).

Но после небольшого поиска я нашел проект-потомок, основанный на SynEdit, который имеет свертывание кода: Mystix (размещен на SourceForge) . Вы можете просто перезаписать ваш предыдущий источник SynEdit этим (нет нового пакета dpk для установки). В любом случае он основан на SynEdit 2.0.1.

Документация немного расплывчата (вы должны тщательно изучить исходный код, чтобы понять, как правильно его использовать), но вот подсказка, как использовать функцию свертывания кода:

SynEdit1.CodeFolding.FolderBarColor: = clDefault; 
SynEdit1.CodeFolding.HighlighterFoldRegions: = False; 
SynEdit1.CodeFolding.FoldRegions.Add(rtChar, False, False, True, '{', '}');
SynEdit1.CodeFolding.FoldRegions.Add(rtKeyword, False, False, True, '/*', '*/');
// and don't forget to initialize...
SynEdit1.InitCodeFolding;
// ... and enable it
SynEdit1.CodeFolding.Enabled: = True;

Mystix выпускается под той же лицензией, что и SynEdit (MPL).

0 голосов
/ 22 декабря 2010

Я настоятельно рекомендую использовать Scintilla. Он имеет все функции, которые вы ищете. Это гораздо более способный и зрелый, чем SynEdit. Развитие SynEdit снизилось в последних дрожжах почти до бездействия. Единственная проблема Scintilla заключается в том, что никто не обновляет код Delphi, который к нему привязан. Проект SourceForge больше не активен. Вы можете найти код Delphi в следующих URL:

Контрольная оболочка Borland Delphi для Scintilla и Delphi Components

Последний содержит самый последний код. Нетрудно обновить его, чтобы добавить последние функции Scintilla.

...