PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » OpenSource » Доработки PureBasic IDE


Доработки PureBasic IDE

Сообщений 1 страница 13 из 13

1

С тех пор, как Фред выложил исходники IDE, появилась возможность «допиливать» её под себя.
Предлагаю делиться своими наработками.
Если они, конечно, у кого-то есть...

П.С.
Вот только не уверен, что раздел «OpenSource» подходит для темы. С другой стороны, IDE теперь тоже opensource.

0

2

Для затравки.

Доработка 1.
Не совсем доработка исходного кода, но доработка непосредственно IDE. В папке Compilers есть файл APIFunctionListing.txt Там список функций WinApi. IDE при вводе преобразует регистр имён функций на основе этого списка. Но, во-первых, в этом списке есть, как минимум, неточности. Во-вторых, лично для меня подобные преобразования не всегда желательны, особенно когда имена моих собственных функций находятся в этом списке, но регистр мне требуется другой. Поэтому я этот список обнуляю - в первую строчку этого файла (счётчик) ставлю 0, вторую на всякий случай оставляю пустой, остальные строки удаляю. Профит.
Подобное можно сделать и в исходном коде, добавив, скажем, проверку на существование этого файла. Я такую проверку делал, это работало, но потом плюнул, проще файл скопировать.

Доработка 2.
Второе, что мне не нравится в плане автоматического преобразования регистра и подсветки, это инструкции ассемблера. Инструкций много. Я бы даже сказал очень много. Обязательно какая-нибудь переменная, поле структуры и т.п. совпадут. Мелочь, но неприятная. Я предпочитаю для инструкций ассемблера использовать синтаксис с !, а остальное нафиг. Поэтому в файле PureBasicIDE\AssemblyOperandsX86.pb оставляю одну строку Data.l 0, остальные удаляю.

Доработка 3.
При выполнении в IDE Compile\Compile/Run вместе с оператором Debug, открывается окно с выводом. Неприятным моментом является то, что это окно хоть и выскакивает на передний план (при установке соответствующей опции), но остаётся неактивным. Неудобно. Неудобно переключаться на него с клавиатуры. Неудобно закрывать с клавиатуры. Особенно, когда руки на клавиатуре, надо всё бросать и хватать мышь.
Решение:
В файле PureBasicDebugger\DebugOutput.pb в процедуре OpenDebugWindow заменяем вызов SetWindowforeGround_NoActivate на SetWindowforeGround
В файле PureBasicIDE\IDEDebugger.pb в конце процедуры Debugger_Ended удаляем (комментируем) строчку с ActivateMainWindow.
Возможно, в каких-то сценариях использования IDE это может оказаться не удобно. Мне так в самый раз.
Надо будет только закрытие окна добавить по Esc и CtrlW.

0

3

Лучший вариант — это сделать эти окна отладчика панелями как в студии с автоскрытием.

Отредактировано Замабувараев (07.11.2023 23:34:15)

0

4

Замабувараев написал(а):

Лучший вариант — это сделать эти окна отладчика панелями как в студии с автоскрытием.

Формально основа уже есть - панель Error log, куда можно направить вывод Debug. Но без автоскрытия, без вкладок (всё идёт сплошным списком - сообщения, ошибки, вывод Debug).

0

5

Похоже, исходники IDE древние - выложены 3 года назад, а сами ещё древнее, т.к. FormDesigner уже давно нет.
И неполные - не собираются (у меня), не хватает иконок - требуется допиливание. В 2023г некоторые сидят (допиливают и обновляют) на jaPBe..

0

6

bizdon написал(а):

Похоже, исходники IDE древние

Где?

Смотрю обновлённый гит. в папке у меня c:\Work\PB_Git\PureBasic\PureBasicIDE\
самый свежий файл ToolsPanel.pb от 2023.10.12

0

7

Исходники свежие.
А вот файлы MakeWindows.cmd написаны не совсем грамотно. Поэтому IDE может собраться без ресурсов.
Для исправления установку переменных среды сделать так:

Код:
set "PUREBASIC_HOME=%~1"
set "PATH=%PUREBASIC_HOME%\Compilers;%PUREBASIC_HOME%;%PATH%"

И далее в обоих MakeWindows везде, где используется переменная PUREBASIC_HOME, параметры заключать в кавычки.

Отредактировано Smitis (08.11.2023 16:33:10)

0

8

Smitis
я рукажоп, собрать не получается по дефолту. Что за файлы "MakeWindows.cmd" - в папке нет таких! Имеется в виду "Window-x86.cmd"? Добавление строк не помогает.
Где должен стоять PB и какой версии? (5.70?). Зачем в этих файлах Visual Studio 12 и DirectX SDK? - их тоже надо ставить? Где должна быть папка "purebasic-master" - на диске С:\ или в каталог "C:\Program Files (x86)\PureBasic" копировать? Компиляция должна проходить при исполнении Window-x86.cmd или из ИДЕ PB файла PureBasicIDE.pbp?

0

9

bizdon написал(а):

Где должен стоять PB и какой версии? (5.70?).

Что значит какой версии?
Исходники наисвежайшие  https://github.com/fantaisie-software/purebasic естественно под 6.03

Я поэтому и спрашивал о том где вы берёте "древние".

0

10

bizdon
Идём по ссылке https://github.com/fantaisie-software/purebasic
Зелёная кнопка Code / Download zip
Внутри zip папка purebasic-devel с последними исходниками.
Распаковываем.
purebasic-devel\PureBasicIDE\MakeWindows.cmd для сборки PureBasic.exe
purebasic-devel\PureBasicDebugger\MakeWindows.cmd для сборки PBDebugger.exe
В качестве параметра передать полный путь к папке PureBasic (x86 или x64).
В случае удачной компиляции, если всё правильно, файлы PureBasic.exe и PBDebugger.exe будут переписаны, поэтому на всякий случай их лучше сохранить.

0

11

bizdon
https://www.purebasic.fr/english/viewto … 08#p592308

0

12

Зелёная кнопка Code / Download zip

Никогда так не делайте.
Исходные коды с гитхаба следует получать через «git clone», иначе у вас окажутся неверными символы перевода строки и возврата каретки.

0

13

Замабувараев написал(а):

Никогда так не делайте.
Исходные коды с гитхаба следует получать через «git clone», иначе у вас окажутся неверными символы перевода строки и возврата каретки.

Тогда придётся ещё объяснять, как git ставить, как с ним работать. И зачем? Всё прекрасно скачивается и компилируется. Проверено.

0


Вы здесь » PureBasic - форум » OpenSource » Доработки PureBasic IDE