LINUX.ORG.RU

Вышла DlangIDE 0.8

 , ,


1

3

Вышел новый релиз кроссплатформенной IDE DLangIDE. DlangIDE основана на графическом тулките dlangui, который к настоящему моменту позволяет создавать достаточно сложные графические приложения.

В новом релизе DlangIDE исправлено более 50 ошибок и завершена интеграция с DCD обеспечивающего автодополнение кода. В следующих версиях планируется интеграция инструментов для проверки кода в режиме реального времени таких как DScanner.

>>> Подробности

★★

Проверено: Shaman007 ()

Вижу, автор этого IDE ещё и автор dlangui. Зачем было пилить dlangui? Почему не взять готовый Qt какой-нибудь?

И где сборки для онтопика?

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

Не нашёл сравнения производительности dlangui и Qt.

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

Вижу, автор этого IDE ещё и автор dlangui. Зачем было пилить dlangui? Почему не взять готовый Qt какой-нибудь?

Нативная реализация GUI удобней - проще делать свои виджеты, чем на биндинге.

dlangui статически линкуется, добавляет ~1Mb веса (включает ресурсы темы внутрь бинарника)

Минимизация внешних зависимостей - тоже плюс.

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

На скриншотах выглядит как Eclipse. Оно точно не на его основе? Вы уверены? Зачем они тогда под него косят?

Тема сделана на основе скриншотов Eclipse. (Обработка в GIMP -> файлы ресурсов темы).

Вначале была копия Visual Studio. Но выглядело это не очень.

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

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

Не собирается что то

../../.dub/packages/dlangui-0.9.151/dlangui/src/dlangui/graphics/ftfonts.d(322,20): Error: cannot implicitly convert expression delta.x >> 0 of type long to int dmd failed with exit code 1.

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

На 32-хбитной платформе собираете или автор наоборот на 32-хбитной собирал? Ах эти милые ошибки преобразования переменных переменного типа в D..

Автор, что же вы не проверили сборку на обоих платформах?

unDEFER ★★★★ ()
Последнее исправление: unDEFER (всего исправлений: 1)
Ответ на: комментарий от Xroft

А почему он не тяжелый?

Вот в Qt, QtCore - это попытка сделать нормальную std, которой до сих пор нет в C++. А QtGui и QtWidgets - это вполне себе чистый GUI. Там особо и выкидывать нечего. А они вместе весят чуть больше 10МБ.

Каким образом dlangui это решает?

Buggins, у вас случаем нету статейки с описанием подхода и архитектуры dlangui?

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

Не собирается что то

Поломалась сборка dlangui 64bit. Починил. Нужно подождать, когда обновление dlangui проиндексируется DUB. Тогда - обновить dlangide до v0.8.3 (или ~master), обновить зависимости и пересобрать.

git pull --tags origin master
dub upgrade --force-remove
dub run
Buggins ()
Ответ на: комментарий от RazrFalcon

Buggins, у вас случаем нету статейки с описанием подхода и архитектуры dlangui?

Статейки нет.

Много идей взято из Android. Layouts, measure+layout. Темы/стили/ресурсы. Поддержка разных DPI.

Вообще, это порт GUI библиотеки от Cool Reader GL c C++.

Есть еще DML - похоже на QML, но нельзя писать код обработчиков событий. Только для создания иерархии виджетов / задание значений свойств.

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

Нужно подождать, когда обновление dlangui проиндексируется DUB.

Или не ждать.

Склонировать dlangui в соседнюю директорию с dlangide и указать DUB локальный пакет.

git clone https://github.com/buggins/dlangui.git
git clone https://github.com/buggins/dlangide.git
cd dlangide
dub add-local ../dlangui
dub run
Buggins ()
Ответ на: комментарий от Buggins

Жаль. Очень интересно. Особенно в сравнении с конкурентами.

Что там у андроида - хз. Но лайоуты и стили есть и у Qt. Жаль про DPI он ничего не знает и всё в пикселях. Но когда его писали - это не было проблемой.

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

Qt хороший, но тяжелый.

Во-первых Qt модульный, во-вторых есть QtLite.

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

Я хочу сказать, что в Qt (не QML), основная единица измерения - пиксель

Да, только это условный пиксель, а не аппаратный.

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

Погоди! Ты хочешь сказать, что Qt не дружит с ретиной и большими мониторами?

Дружит, после нескольких простых движений. Как минимум на маке, больше негде было проверить.

anonymous ()

Очень интересно. Спасибо.

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

наверное потому, что qt сильно разжирел и забагован

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

Ну, вот даже в этой теме обсуждается одна из таких альтернатив: dlangui. Если с помощью него написано IDE, то это многое значит.

Эх, жаль не было такого лет эдак так 10-15 назад, или когда там язык D заставил обратить многих на себя внимание. Признаюсь, тогда я немного фанател от этого языка времен еще первой версии, как, видимо, до сих пор фанатеет отписавшийся здесь автор IDE

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

Это не альтернатива. Ему до Qt как до луны. Начиная с поддержки системной темы, что сразу увеличит его размер на порядок.

Вообще не перестаю поражаться такой логике. «Смотрите, эта либа меньше жирного Qt.» Конечно меньше. Ничего не умеет, вот и меньше.

Прямо как в срачах Rust vs Go.

RazrFalcon ★★★★★ ()

Написали бы хоть что это для D.

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

Ему до Qt как до луны.

Да ладно заливать. Qt и сейчас на маке выглядит так себе. На гномьих дистрибутивах - тоже. Остается KDE. На винде тоже не особо фонтан, но конкретно это больше зависит уже от кривизны рук программиста

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

Так а на каких системах оно вообще работает? в релизе только сборки под венду...

Linux, OSX, BSD (sdl2 или x11), Windows (win32 api или sdl2).

Также может работать в текстовом терминале - с текстовым GUI.

Сборки под другие платформы выкладывать нет особого смысла.

Всегда можно скачать + запустить с помощью

dub fetch dlangide && dub run dlangide

(Для этого нужны DUB и компилятор D, например DMD - но они все равно понадобятся для работы в IDE)

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

Buggins, а как работает Qt? Он все сам рисует или как-то нативные контролы использует? Просто уж очень софт на нем нативно смотрится.

dlangui этого очень не хватает...

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

Buggins, а как работает Qt? Он все сам рисует или как-то нативные контролы использует? Просто уж очень софт на нем нативно смотрится.
dlangui этого очень не хватает...

Насколько я понимаю, сам рисует. Просто очень похоже.

В dlangui тоже можно темы нарисовать, надергав скриншоты с нативных контролов.

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

На маке - да. Но из всех тулкитов что есть, не считая cocoa, он выглядит лучше всех.

В гноме он выглядит ещё терпимо. А вот GTK+ в кедах выглядит адово.

На винде тоже не особо фонтан

Пруфы или не было. Он шикарно там выглядит. И не имеет болячек mfc(или как его там) с мерцанием и прочим. Это ода из причин, почему те же battle.net и gog написаны на Qt.

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

Qt вызывает системные методы отрисовки. Если хочется странного - переключается на собственную отрисовку.

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

А в качестве редактора что-то готовое используется или свой написан?

Самодельный - EditBox из dlangui.

Buggins ()

Нравятся мне новости и официальные страницы без скриншотов. Для IDE особенно скриншоты не нужны. Сразу появляется интрига: что хотят скрыть авторы?

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

Ты не поверишь, но если перейти по ссылке «Подробности» и полистать страницу на гитхабе, то там внизу скриншот есть.

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

Для этого нужны DUB и компилятор D, например DMD - но они все равно понадобятся для работы в IDE

GDC поддерживается?

И ещё: dub 1.2.0 из реп дебиана подойдёт, или нужно что-то поновее?

hobbit ★★★★★ ()
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от Xintrea

Нравятся мне новости и официальные страницы без скриншотов. Для IDE особенно скриншоты не нужны. Сразу появляется интрига: что хотят скрыть авторы?

Промотай страницу по ссылке пониже.

UPD: добавил скриншот темной темы и консольного приложения. Переместил скриншоты повыше.

Прямые ссылки на скриншоты:

http://buggins.github.io/dlangui/screenshots/screenshot-dlangide.png

http://buggins.github.io/dlangui/screenshots/screenshot-dlangide-dark.png

http://buggins.github.io/dlangui/screenshots/screenshot-dlangide-console-win3...

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

На Linux выглядит точно так же?

Везде выглядит так же (если выбрать точно те же шрифты - с точностью до пикселя).

Отличаются рамки окна.

Если экран HighDPI, шрифты и иконки будут крупнее.

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

На скриншотах freetype 2.8.1. При других версиях freetype может отличаться отрисовка текста.

Если из windows версии удалить libfreetype-6.dll то будет использоватьcя win32 API для шрифтов - текст будет выглядеть немного по-другому.

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

GDC поддерживается?

gdc 0.5.3 не поддерживается - в нем нет std.experimental.allocator

gdc 6.3.0 на фронтенде 2.068.2 проверить не удалось.

И ещё: dub 1.2.0 из реп дебиана подойдёт, или нужно что-то поновее?

Должен подойти. Даже 0.9.24 работает.

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

У меня как раз 6.3.0. Попробую, как время будет.

LDC свежий должен нормально собирать.

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