Базовый шаблон для создания редактора, с поддержкой вкладок
Модератор: Модераторы
>>Кстати, а есть ли возможность, техническая и юридическая
Тут все возможности есть. Кроме "умственной". В смысле делать так очень не умно, с какой стороны не глянь
>>в отдельное приложение и уже его развивать
А может попробовать развивать лазарус? Что за мания форкать? Форкать надо то что умирает
Добавлено спустя 48 минут 32 секунды:
Re: Базовый шаблон для создания редактора, с поддержкой вкладок
Deimos
Кстати, нехватает пункта меню с перечнем открытых вкладок и навигацией по ним. В меню "файл" перечня последних открытых файлов.
Тут все возможности есть. Кроме "умственной". В смысле делать так очень не умно, с какой стороны не глянь
>>в отдельное приложение и уже его развивать
А может попробовать развивать лазарус? Что за мания форкать? Форкать надо то что умирает
Добавлено спустя 48 минут 32 секунды:
Re: Базовый шаблон для создания редактора, с поддержкой вкладок
Deimos
Кстати, нехватает пункта меню с перечнем открытых вкладок и навигацией по ним. В меню "файл" перечня последних открытых файлов.
- Ichthyander
- энтузиаст
- Сообщения: 701
- Зарегистрирован: 04.04.2007 08:32:43
- Откуда: Астрахань
- Контактная информация:
zub писал(а):>>Кстати, а есть ли возможность, техническая и юридическая
Тут все возможности есть. Кроме "умственной". В смысле делать так очень не умно, с какой стороны не глянь
>>в отдельное приложение и уже его развивать
А может попробовать развивать лазарус? Что за мания форкать? Форкать надо то что умирает
Так ведь мне редактор кода нужен не столько и не только для кодинга в Lazarus! В основном html и php, а также xml файлы, ini файлы, просто txt файлы. Ради этого загружать Lazarus?.. да и неудобно это!
Из всех просмотренных универсальных редакторов кода мне более менее понравился PSEditor, но он несвободный, хоть и бесплатный и есть серьезный глюк
а что вы хотите форкнуть? synedit? он отдельным пакетом - пилите не форкая
чтото из иде? имхо гораздо лучше попробовать это чтото выделить внутри лазаря в отдельный пакет или просто в юнит который не потянет за собой всю остальную ide. и пилить внутри лазаря.
С форком возможно 2 варианта:
1 - пару месяцев наслаждаемся какие мы крутые - форкнули лазаря! потом расходимя ниче не сделав
2 - форкаем, активно пилим. лазарь тем временем тоже активно пилится. через пару месяца имеем две какието разные штуки, которые между собой хз как синхронизировать.
чтото из иде? имхо гораздо лучше попробовать это чтото выделить внутри лазаря в отдельный пакет или просто в юнит который не потянет за собой всю остальную ide. и пилить внутри лазаря.
С форком возможно 2 варианта:
1 - пару месяцев наслаждаемся какие мы крутые - форкнули лазаря! потом расходимя ниче не сделав
2 - форкаем, активно пилим. лазарь тем временем тоже активно пилится. через пару месяца имеем две какието разные штуки, которые между собой хз как синхронизировать.
zub писал(а):Кстати, нехватает пункта меню с перечнем открытых вкладок и навигацией по ним.
Не это ли?
zub писал(а):В меню "файл" перечня последних открытых файлов.
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
zub писал(а): имхо гораздо лучше попробовать это чтото выделить внутри лазаря в отдельный пакет или просто в юнит который не потянет за собой всю остальную ide. и пилить внутри лазаря.
угу... как же... не потянет.
Код: Выделить всё
unit SourceEditor;
{$mode objfpc}
{$H+}
interface
{$I ide.inc}
{ $DEFINE VerboseIDECompletionBox}
uses
{$IFDEF IDE_MEM_CHECK}
MemCheck,
{$ENDIF}
SynEditMouseCmds, Classes, SysUtils, types, Math,
Controls, Forms, ComCtrls, StdCtrls, Graphics, Dialogs, Extctrls, Menus,
ExtendedNotebook, LCLProc, LCLType, LResources, LCLIntf, FileUtil, LazFileUtils,
Translations, ClipBrd, HelpIntfs,
LConvEncoding, Messages, LazLoggerBase, lazutf8classes, LazLogger, AvgLvlTree,
LazFileCache, LazUTF8,
// codetools
BasicCodeTools, CodeBeautifier, CodeToolManager, CodeCache, SourceLog,
LinkScanner, CodeTree, SourceChanger,
// synedit
SynEditLines, SynEditStrConst, SynEditTypes, SynEdit, SynRegExpr,
SynEditHighlighter, SynEditAutoComplete, SynEditKeyCmds, SynCompletion,
SynEditMiscClasses, SynEditMarkupHighAll, SynEditMarks,
SynBeautifier, SynPluginMultiCaret,
SynPluginSyncronizedEditBase, SourceSynEditor,
SynExportHTML, SynHighlighterPas, SynEditMarkup, SynEditMarkupIfDef,
// Intf
SrcEditorIntf, MenuIntf, LazIDEIntf, PackageIntf, IDEHelpIntf, IDEImagesIntf,
IDEWindowIntf, ProjectIntf, MacroDefIntf, ToolBarIntf,
// IDE units
IDECmdLine, IDEDialogs, LazarusIDEStrConsts, IDECommands,
EditorOptions, EnvironmentOpts, WordCompletion, FindReplaceDialog, IDEProcs,
IDEOptionDefs, IDEHelpManager, MacroPromptDlg, TransferMacros,
CodeContextForm, SrcEditHintFrm, etMessagesWnd, etSrcEditMarks, InputHistory,
CodeMacroPrompt, CodeTemplatesDlg, CodeToolsOptions,
editor_general_options,
SortSelectionDlg, EncloseSelectionDlg, EncloseIfDef, InvertAssignTool,
SourceEditProcs, SourceMarks, CharacterMapDlg, SearchFrm,
FPDocHints, EditorMacroListViewer, EditorToolbarStatic, editortoolbar_options,
DbgIntfBaseTypes, DbgIntfDebuggerBase, BaseDebugManager, Debugger, MainIntf,
GotoFrm;
....
При том, что само меню совсем в другом месте.
zub писал(а):2 - форкаем, активно пилим. лазарь тем временем тоже активно пилится. через пару месяца имеем две какието разные штуки, которые между собой хз как синхронизировать.
Никак не синхронизировать. это будет просто текстовый редактор для исходных программ.
zub писал(а):Кстати, нехватает пункта меню с перечнем открытых вкладок и навигацией по ним. В меню "файл" перечня последних открытых файлов.
Услышал )
Добавлю
Лекс Айрин
>>угу... как же... не потянет.
что не так?
>>Никак не синхронизировать. это будет просто текстовый редактор для исходных программ.
нда... а через годик реализуют в лазаре какуюнибудь очень нужную возможность - будешь снова форкать?
sign
>>Не это ли?
я не про лазарус имел ввиду
>>угу... как же... не потянет.
что не так?
>>Никак не синхронизировать. это будет просто текстовый редактор для исходных программ.
нда... а через годик реализуют в лазаре какуюнибудь очень нужную возможность - будешь снова форкать?
sign
>>Не это ли?
я не про лазарус имел ввиду
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
zub писал(а):что не так?
Просто редактор "растворен" в Lazarus. Как минимум, его код встречается в двух местах: меню и в указанном ранее фрагменте. Ну а часть кучи зависимостей я указал. Подозреваю, что в результирующем проекте половины не будет, а в части оставшихся будут полурабочие (с точки зрения Lazarus) заглушки.
zub писал(а):а через годик реализуют в лазаре какую-нибудь очень нужную возможность - будешь снова форкать?
Смотря где реализуют. С другой стороны, в процессе выпиливания я, если все же форкну, лучше узнаю структуру самого лазаря (с кучей заметок, на случай повторного форка), да и само понятие форка как бы подразумевает одноразовое действие.
Плюс, подозреваю, в Lazarus очень много, с точки зрения текстового редактора лишнего кода. возможно, легче и быстрее использовать его в качестве пособия.
Вообще, руки чешутся создать прогу анализирующую текст программы и составляющую граф ее текста и/или ее части. Но пока я явно не тяну.
Лекс Айрин
Ты както выборочно читаешь
>>имхо гораздо лучше попробовать это чтото выделить внутри лазаря в отдельный пакет или просто в юнит который не потянет за собой всю остальную ide. и пилить внутри лазаря.
Ты както выборочно читаешь
>>имхо гораздо лучше попробовать это чтото выделить внутри лазаря в отдельный пакет или просто в юнит который не потянет за собой всю остальную ide. и пилить внутри лазаря.
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
zub, да нет. Я как раз про это. Текстовый редактор это отдельная сущность, но ее довольно таки тяжело выпилить из-за того, что она довольно плотно использует остальные возможности Lazarus. Если это все же удастся, не разрушая целостности RAD, то это и будет полноценным форком Lazarus.
Ну или мы друг друга совсем не поняли.
ЗЫ: в любом случае, это не будет пустым времяпровождением. По крайней мере, прокачаются навыки работы со сложным проектом.
Ну или мы друг друга совсем не поняли.
ЗЫ: в любом случае, это не будет пустым времяпровождением. По крайней мере, прокачаются навыки работы со сложным проектом.
-
eastorwest
- новенький
- Сообщения: 57
- Зарегистрирован: 23.07.2009 20:21:46
- Откуда: Н-ск
Предлагаю рассмотреть другой проект на Lazarus - CudaText. Открытый исходный код на github, кроссплатформенность (Windows, Linux, MacOS), разработчик отзывчивый русскоязычный. Редактор поддерживает вкладки, подсветку синтаксиса, расширения на Python. Используется самописный компонент редактирования текста ATSynEdit.
Zub писал(а): нехватает пункта меню с перечнем открытых вкладок и навигацией по ним
добавил
- Ichthyander
- энтузиаст
- Сообщения: 701
- Зарегистрирован: 04.04.2007 08:32:43
- Откуда: Астрахань
- Контактная информация:
eastorwest писал(а):Предлагаю рассмотреть другой проект на Lazarus - CudaText. Открытый исходный код на github, кроссплатформенность (Windows, Linux, MacOS), разработчик отзывчивый русскоязычный. Редактор поддерживает вкладки, подсветку синтаксиса, расширения на Python. Используется самописный компонент редактирования текста ATSynEdit.
Большое спасибо за ссылку. Редактор на первый взгляд неплох.
Ну тогда до кучи https://yadi.sk/d/2eAG8bFLxiDEN
Добавлено спустя 4 минуты 23 секунды:
Re: Базовый шаблон для создания редактора, с поддержкой вкладок
Скрины Win-Lin
Добавлено спустя 4 минуты 23 секунды:
Re: Базовый шаблон для создания редактора, с поддержкой вкладок
Скрины Win-Lin
sa_t_an
Вижу в исходниках некий dockmanager.pas, а в приложении докинга не наблюдаю(( это у меня лыжи не едут или так и задумано?
По сути: зачем всё вформошлепывать в один "монолит" имхо надо както "порасширяемей" стараться
Вижу в исходниках некий dockmanager.pas, а в приложении докинга не наблюдаю(( это у меня лыжи не едут или так и задумано?
По сути: зачем всё вформошлепывать в один "монолит" имхо надо както "порасширяемей" стараться
