LINUX.ORG.RU

Как нам обустроить Lazarus?

 ,


0

5

Приветствую.

После Eclipse и NetBeans хочу освоить Lazarus хотя бы на уровне знаний Delphi 3…7, с которых начинал.

Сразу скажу, что среда Lazarus мне показалась неудобной в плане загромождения перекрывающимися окнами и модальными сообщениями с кнопками [OK], «бьющих по рукам», если что-то не то делаешь — ощущение такое, что среда тебя воспитывает, как делать не надо. В общем, возврат в конец 1990-х - начало нулевых.

Поэтому первый вопрос на повестке дня: есть ли возможность сделать все окна в среде в стиле MDI (англ. multiple document interface), как принято в современных средах разработки, работает ли докирование окон, или это потребует переделки самой среды на уровне исходных текстов и пересборки?

★★★★★

модальными сообщениями с кнопками [OK], «бьющих по рукам», если что-то не то делаешь — ощущение такое, что среда тебя воспитывает, как делать не надо.

Можно пример?

все окна в среде в стиле MDI

Вспомни сколько GIMP просили так сделать? Вот столько же надо ждать и тут.

anonymous
()
Ответ на: комментарий от anonymous

в нормальной операционной системе лазарус, как ранее гимп, отправляется на отдельный рабочий стол

anonymous
()
Ответ на: комментарий от static_lab

Спасибо.

Получилось сделать основные окна среды примкнутыми друг к другу.

Однако окно формы, на котором осуществляется дизайн внешнего вида оконного приложения, почему-то висит в воздухе перед интегрированными окнами среды либо за ними (при переключении с редактора кода на визуальный дизайнер и обратно не удобно вызывать его из главного меню). Можно как-то и его примкнуть к редактору кода в виде второй вкладки, чтобы было под рукой?

iZEN ★★★★★
() автор топика
Ответ на: комментарий от static_lab

Оба установлены:

AnchorDocking

Автор: Mattias Gaertner mattias@freepascal.org
Описание или аннотация: Docking manager for LCL aplications

Лицензия: modified LGPL-2 like LCL

Имя файла:  /usr/local/share/lazarus-2.0.10/components/anchordocking/anchordocking.lpk
Текущее состояние: установлен, RunAndDesignTime

AnchorDockingDsgn (это основной)

Автор: Mattias Gaertner mattias@freepascal.org
Описание или аннотация: Installs the anchor docking manager in the IDE

Лицензия: GPL2 as the IDE

Имя файла:  /usr/local/share/lazarus-2.0.10/components/anchordocking/design/anchordockingdsgn.lpk
Текущее состояние: установлен, RunAndDesignTime
iZEN ★★★★★
() автор топика
Ответ на: комментарий от bormant

По F12 переход между формой/кодом не происходит разве?

Нет — Xfce4 перехватывает эту клавишу и запускает встроенный терминал.

iZEN ★★★★★
() автор топика
Ответ на: комментарий от iZEN

дак отключи в xfce или измени в лазаре

anonymous
()
Ответ на: комментарий от iZEN

Xfce4 перехватывает эту клавишу и запускает встроенный терминал

Есть смысл переназначить терминал на что-то другое...

bormant ★★★★★
()
Ответ на: комментарий от bormant

Не переназначается — можно удалить всё это назначение и будет работать переключение код<–>дизайнер в Lazarus.

iZEN ★★★★★
() автор топика

После Eclipse и NetBeans

Только я один увидел боль в этих словах? :)

p.s. Тоже вернулся в Delphi/Lazarus, причем в Delphi7, так что отлично понимаю, о чем речь.

Novator ★★★★★
()
Ответ на: комментарий от Novator

Я никуда не возвращался. Просто ещё раз захотелось ощутить дух времени начала 2000-х и вот оно здесь.

iZEN ★★★★★
() автор топика

А чего-то не понравился этот MDI, был какой-то пакет. Окно с сообщениями вниз узкой полосой поверх всех окон, остальное под редактор, всякие инспекторы и свойства по горячим кнопкам и закрывать после использования или на задний план. Весь лазарь на отдельном рабочем столе.

ilovewindows ★★★★★
()
Ответ на: комментарий от iZEN

F12

Нет — Xfce4 перехватывает эту клавишу и запускает встроенный терминал.

Вангую у тебя и рендер в Blender не «работает»?

anonymous
()
Ответ на: комментарий от iZEN

F12

Нет — Xfce4 перехватывает эту клавишу и запускает встроенный терминал.

А это какой пакет так настраивает? Довольно давно пользуюсь xfce, никогда терминал по умолчанию на хотей не вешался.

COKPOWEHEU
()
Ответ на: комментарий от COKPOWEHEU

Xfce4 -> Настройки -> Клавиатура -> вкладка Комбинации клавиш.

Команда | Комбинация клавиш

iZEN ★★★★★
() автор топика
Ответ на: комментарий от iZEN

Xfce4 -> Настройки -> Клавиатура -> вкладка Комбинации клавиш.

Нет, вручную-то настроить не проблема. Меня удивило что у вас оно настроилось само.

COKPOWEHEU
()
Ответ на: комментарий от COKPOWEHEU

Меня удивило что у вас оно настроилось само.

Там дефолтные настройки сочетаний клавиш на команды. Ничего не менял.

iZEN ★★★★★
() автор топика
Ответ на: комментарий от zamtmn

Какой лазарус?

2.0.10

В каталоге /usr/local/share/lazarus-2.0.10/components/ куча доступных для установки пакетов. Среди них есть AnchorDockingDsgn. Вот его-то добавил в список установленных, после чего среда пересобралась и запустилась в MDI-формате.

iZEN ★★★★★
() автор топика
Ответ на: комментарий от iZEN

Там дефолтные настройки сочетаний клавиш на команды. Ничего не менял.

Да, именно про это и спрашиваю. Поскольку в xfce по дефолту хоткея на терминал нет, его вам настроил какой-то другой пакет.

COKPOWEHEU
()
Ответ на: комментарий от iZEN

AnchorDockingDsgn - не затрагивает редактор форм, только остальной интерфейс. ставь spartaЧетоТам форма будет в окне с кодом, переключение кнопками

zamtmn ★★
()
Ответ на: комментарий от zamtmn

Не получается:

/usr/home/igor/.lazarus/lib/sparta_Generics/lib/x86_64-freebsd/generics.collections.ppu:generics.collections.pas(163,52) Note: (5071) Private type "TCustomPointersEnumerator$2<SPARTA_MULTIPLYRESIZER.TMultiplyResizer,SPARTA_MULTIPLYRESIZER.TCustomList$1$crc82E2E703.PT>.T" never used
/usr/home/igor/.lazarus/lib/sparta_Generics/lib/x86_64-freebsd/generics.collections.ppu:generics.collections.pas(163,52) Note: (5071) Private type "TCustomPointersEnumerator$2<SPARTA_MULTIPLYRESIZER.TPair$2<SPARTA_INTERFACESMDI.IDesignedForm,SPARTA_MULTIPLYRESIZER.TMultiplyResizer>,SPARTA_MULTIPLYRESIZER.TCustomList$1$crc62370E1D.PT>.T" never used
/usr/home/igor/.lazarus/lib/sparta_Generics/lib/x86_64-freebsd/generics.collections.ppu:generics.collections.pas(163,52) Note: (5071) Private type "TCustomPointersEnumerator$2<SPARTA_MULTIPLYRESIZER.TResizerRec,SPARTA_MULTIPLYRESIZER.TCustomList$1$crc02F087F8.PT>.T" never used
/usr/home/igor/.lazarus/lib/sparta_Generics/lib/x86_64-freebsd/generics.collections.ppu:generics.collections.pas(163,52) Note: (5071) Private type "TCustomPointersEnumerator$2<SPARTA_MULTIPLYRESIZER.TPair$2<SPARTA_INTERFACESMDI.IDesignedForm,SPARTA_MULTIPLYRESIZER.TResizerRec>,SPARTA_MULTIPLYRESIZER.TCustomList$1$crc750C8D2C.PT>.T" never used
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(10,3) Hint: (5023) Unit "sparta_BasicResizeFrame" not used in sparta_MDI
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(10,28) Hint: (5023) Unit "sparta_InterfacesMDI" not used in sparta_MDI
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(10,50) Hint: (5023) Unit "sparta_BasicResizer" not used in sparta_MDI
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(11,3) Hint: (5023) Unit "sparta_MDI_StrConsts" not used in sparta_MDI
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(11,25) Hint: (5023) Unit "sparta_BasicFakeCustom" not used in sparta_MDI
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(11,49) Hint: (5023) Unit "sparta_FormBackgroundForMDI" not used in sparta_MDI
/usr/local/share/lazarus-2.0.10/components/sparta/mdi/sparta_mdi.pas(12,27) Hint: (5023) Unit "sparta_AbstractResizer" not used in sparta_MDI
(1008) 2817 lines compiled, 2.3 sec
(1021) 17 warning(s) issued
(1022) 81 hint(s) issued
(1023) 10 note(s) issued
gmake: Entering directory '/usr/local/share/lazarus-2.0.10'
/usr/local/bin/gmake -C ide idepkg
gmake[1]: Entering directory '/usr/local/share/lazarus-2.0.10/ide'
/usr/local/bin/gmake --assume-new=lazarus.pp lazarus OPT=' @/usr/home/igor/.lazarus/idemake.cfg'
gmake[2]: Entering directory '/usr/local/share/lazarus-2.0.10/ide'
/usr/local/bin/fpc -gl -vbqewnhi -Sci -dlclgtk2 -Fu../designer -Fu../debugger -Fu../debugger/frames -Fu../converter -Fu../packager -Fu../packager/frames -Fu../components/custom -Fuframes -Fu. -Fu/usr/local/lib/fpc/3.2.0/units/x86_64-freebsd/rtl -Fiinclude -Fiinclude/freebsd -Fi../images -FE.. -FU../units/x86_64-freebsd/gtk2 -Cg @/usr/home/igor/.lazarus/idemake.cfg -dx86_64 lazarus.pp
Hint: (11030) Start of reading config file /usr/local/etc/fpc.cfg
Hint: (11031) End of reading config file /usr/local/etc/fpc.cfg
Hint: (11030) Start of reading config file /usr/home/igor/.lazarus/idemake.cfg
Hint: (11031) End of reading config file /usr/home/igor/.lazarus/idemake.cfg
Free Pascal Compiler version 3.2.0 [2021/05/28] for x86_64
Copyright (c) 1993-2020 by Florian Klaempfl and others
(1002) Target OS: FreeBSD for x86-64
(3104) Compiling lazarus.pp
(10001) PPU Loading /usr/local/lib/fpc/3.2.0/units/x86_64-freebsd/chm/chmreader.ppu
(10011) PPU Source: chmreader.pas not available
(10028) Recompiling chmreader, checksum changed for /usr/home/igor/.lazarus/lib/sparta_Generics/lib/x86_64-freebsd/generics.collections.ppu
gmake[2]: *** [Makefile:4144: lazarus] Error 1
gmake[1]: *** [Makefile:4574: idepkg] Error 2
gmake: *** [Makefile:3605: idepkg] Error 2
/usr/local/lib/fpc/3.2.0/units/x86_64-freebsd/chm/chmreader.ppu:chmreader.pas(80,12) Fatal: (10022) Can't find unit chmreader used by ChmLangRef
Fatal: (1018) Compilation aborted
Error: /usr/local/bin/ppcx64 returned an error exitcode
gmake[2]: Leaving directory '/usr/local/share/lazarus-2.0.10/ide'
gmake[1]: Leaving directory '/usr/local/share/lazarus-2.0.10/ide'
iZEN ★★★★★
() автор топика
Ответ на: комментарий от iZEN

Тогда забей на встроенный редактор форм. всеравно спарта - сырой ибольше не развивается, его переработанный форк докедформедитор пока еще сырой

zamtmn ★★
()
Последнее исправление: zamtmn (всего исправлений: 1)

Поэтому первый вопрос на повестке дня: есть ли возможность сделать все окна в среде в стиле MDI (англ. multiple document interface), как принято в современных средах разработки

Это которое окна внутри окон? Это вроде бы везде закопали в том числе в продуктах Microsoft. Сейчас везде тайловый интерфейс.

X512 ★★★★★
()

Ребята обсуждают что круче, поп ит или симпл димпл. Тут врывается iZEN неистово вращая спинером

pornandme
()

Советую освоить Prolog

Владимир

anonymous
()

Lazarus говно с лопаты, а сам фпц норм. Хочется чёт оконного уж лучше монодевелоп он приятней, не Паскаль, но тоже неплохо. Ну или куте с дизайнером.

anonymous
()

Ну и как ты будешь теперь его обустраивать?

anonymous
()

Разом чухнуть в разные стороны. Под воздействием естественной эрозии Lazarus быстро придет в подобающее состояние.

t184256 ★★★★★
()

В средах NetBeans и Eclipse классы принято обмазывать unit-тестами. Это делается легко и просто, буквально по щелчку ПКМ.

Как с этим обстоят дела в Lazarus?

iZEN ★★★★★
() автор топика

Как нам обустроить Lazarus?

Для начала, прекратить трахать его труп. Потом взять и закопать поглубже, накрыв тяжелой могильной плитой. Рядом с BASIC, Perl, кофискриптами и проч

anonymous
()
Ответ на: комментарий от anonymous

А. Пардон. Речь о среде разработки. Ну, сути это не меняет - зарыть следом за паскалем.

anonymous
()
Ответ на: комментарий от pornandme

Ребята обсуждают что круче, поп ит или симпл димпл. Тут врывается iZEN неистово вращая спинером

В квотезы!!!

P.S. Вот только через несколько лет все эти страшные слова забудут, и фраза станет непонятной…

P.P.S. Как раз сегодня ребёнок упросил маму купить этот самый поп ит, а я сказал, что спиннер всё же был симпатичнее…

hobbit ★★★★★
()

очевидный anchordocking

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.