PureBasic - форум

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

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


Вы здесь » PureBasic - форум » PureBasic для Windows » PureBasic сборка


PureBasic сборка

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

1

PureBasic сборка

Скачать для Windows
Скачать для Linux

Сборка PureBasic с настройками, с инструментами, но без самого дистрибутива. В общем скачать, прочитать несложную инструкцию (извлечь в папку "C:\PB\" и поместить свои дистрибутивы туда). И будет работать как у меня, то есть подсветка, все инструменты, хоткеи.

Если есть идеи как улучшить, что включить/выкинуть пишите.

Архив размером 16 Мб. Выкинул справку WinAPI - 50 Мб, из-за неё сборка подскочила в размере до 64 Мб, поэтому смело избавился. Добавлен AkelPad как доп.инструмент, то же удалил плаг проверки орфографии, так как в написании кода я его 100% не использую и сторонние справки, тоже заметно сэкономив, но если нужно кому можете скачать полную сборку, она в паблике. Справку я переложил в папку инструмента Help, то есть не так как у себя, чтобы не подменять английскую и не конфликтовать с ней при копировании.

Отредактировано AZJIO (20.01.2024 00:11:06)

0

2

а чё за спрака по апи?
в каком она формате?

0

3

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

а чё за спрака по апи?
в каком она формате?

Формат chm, с удобным указателем и вроде как официальная, скачиваестся с их сайта, выложена на официальном форуме пурика в теме где я обьяснял как искать апи функции с помощью гугла выложив виндовые названия элементов окна,  смотри ссылку в этой теме: https://www.purebasic.fr/english/viewto … 82#p603182
Он там пишет как скачать пользователь с аватаром аватара. Я на работе, а то бы выложил архив с этой справкой

Отредактировано AZJIO (05.12.2023 19:42:20)

0

4

newJS
Вот скачай. Посмотрел тему, на которую я давал ссылку, там сказано PDF, теперь я запутался и не понимаю где её скачал, возможно на официальном форуме кто-то выкладывал.

Отредактировано AZJIO (06.12.2023 13:29:31)

0

5

1. Вопрос как устроить каталоги?
Есть папка "C:\ProgramData\PureBasic\Examples", но если честно мне не нравится что они где-то отдельно, что приходится в неё и обратно переходить используя специальную фичу от "AnVir Task Manager", встраиваемую кнопку "История".
Как на счёт такого дерева - папка Sources\ и в ней следующие папки:
CodeArchive - тут известные архивы CodeArchiv_v4-Beta, winapi_library, PB-CodeArchiv-Rebirth-master
Downloads - тут скачанные файлы, хотя лучше поместить её уровнем выше, так как по папке Sources захочется сделать поиск, а он будет проходит и в мусорке под названием Downloads. То есть загрузки связаные с PureBasic.
Examples - тут примеры, всё что идёт в комплекте с PureBasic
Projects - или My_projects - папка готовых проектов программ
Sources - тут собственные исходники

То есть в сборку можно сразу поместить CodeArchive, на счёт Examples сам пользователь решает перетащить ли сюда официальные примеры, но я бы перетащил. В Sources могут находится папки, например 2023/12 и по дате хранить временные/тестовые файлы.

2. Как лучше сжать архив? Я сжал содержимое папки PB, поступило предложение сжимать папку PB, но проблема что диск C: имеет запрет копирование в него файлов и извлекать проблемно, так как нужно из другого каталога запустить извлечь указав папку, а мне нравится кинул архив в папку PB и там "Извлечь здесь". Всё рядом и контент и архив сборки.

3. Может иные предложения? Было предложения вернуть некоторые клавиши, но я не хочу, мой вариант доказуемо идеален. Я даже забыл старые клавиши, помню что сразу назначил F5 на запуск вместо Shift+F5, так как без компиляции файл не запустится, а нажимать лишнюю клавишу, если ты компилишь прогу 1000 раз на дню нафиг надо. И тестить приходится именно после правки исходника, а смысл запускать скомпилированный если он и так работает. Форматирование кода Ctrl+i вроде, но пальцы то от Ctrl до i не дотягиваются и у меня Alt+Z и Ctrl+Alt+Z инструмент Tidy. Также Ctrl+Q -комент и Ctrl+W (рядом) отмена комента. В общем по горячим клавишам изменения вряд ли будут. F1 - запуск справки через плаг "Help", Alt+F1 - запуск официальной англоязычный, которую я запускаю ради своих же примеров, которые были добавлены. Единственная клавиша что мне не нравится Ctrl+1 - запуск автозавершения фрагментами, использую часто но устал пальцы выгинать, а все другие клавиши заняты.

Кстати, перезалил удалив историю файлов, историю поиска и историю сессий.

Отредактировано AZJIO (18.12.2023 19:49:01)

0

6

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

1. Вопрос как устроить каталоги?

Можете посмотреть, как у меня. На руборде выкладывал.
Структура примерно такая:
PureBasic - разные версии PureBasic, справка
Source - исходные тексты
Tools - инструменты
Apps - программы
В любое место распаковал, без заморочек "можно на диск писать, нет нельзя на этот диск писать", запустил нужную версию и работай.
Не понравилось место - перенёс в любое другое, хоть на флешку, запустил, всё открылось и работает.

0

7

Smitis
портабельный мне не нужен, в этом не суть, мне тоже надо будет сменить каталог там работы на 5 минут, раз в 2 года если мне не понравится папка я могу поменять. Я с 2017 года ничего не менял и тут за 6 лет 1 раз поменял ради сборки. Просто пробежался по конфигу инструментов да и вообще по папке конфигов и заменил один путь другим "C:\PB\" на любой другой и всё также будет работать, да ещё и ассоциациями и конт.меню.

Проблема, что сколько я ни выкладывал инструкций если человек руками не потрогал, то не понимает всех фишек, скопировал справки и тупо открывает её кликом по файлу почитать, а я предлагаю подменить родной вызов на продвинутый, вызов справки сразу русской, с встроенной доп. справкой в отдельном процессе с отдельной кнопкой на панели задач, когда ты нажимаешь на неё то сразу активируешь PureBasic, а не выбор из двух окон. И также работающие примеры открываемые кликом прям из справки. И вставка фрагментов, также пока не потрогаешь кажется нафиг они нужны, а когда они у тебя из коробки работают то назад уже не вернёшься в вариант где нет фишек. Юзеру сразу предлагается оценить запуск AkelPad прямо с панели с открытым текущим исходником, и другие кнопки и инструменты.

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

Можете посмотреть, как у меня

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

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

Отредактировано AZJIO (19.12.2023 01:34:52)

0

8

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

установит и мою сборку

Мне кажется, в этом и проблема - сборку надо УСТАНАВЛИВАТЬ, причём в чётко фиксированное место без возможности выбора.

Все ссылки на руборде либо битые либо архив какой-то dll

Не какой-то, а dll для портабелизации
Выкладывал здесь сборку с файлами для PurePortable https://forum.ru-board.com/topic.cgi?fo … tart=380#5

портабельный мне не нужен

Ненужен так ненужен.

0

9

Smitis
У нас разные задачи. Если у сборки нет пути, значит её не запустишь методом клика на исходнике или методом нажатия F5 в AkelPad. Если у вас есть необходимость таскать сборку на работу на флешке, то да, вам это нужно. У меня на работе даже нет компа, он есть, но я туда не лезу, он выполняет рабочие функции, у меня нет времени, меня не поймут люди работающие за этим компом и начальник пославший меня выполнять задание. Нет физической/технической возможности и вторая причина мой вариант в моём компе более интерактивный за счёт ассоциаций.

Отредактировано AZJIO (20.12.2023 05:30:15)

0

10

AZJIO

Добавлен AkelPad как доп.инструмент

Если у сборки нет пути, значит её не запустишь методом клика на исходнике или методом нажатия F5 в AkelPad

Чувствуется явное противоречие.

0

11

AZJIO

Если есть идеи как улучшить, что включить/выкинуть пишите.

Я с 2017 года ничего не менял и тут за 6 лет 1 раз поменял ради сборки.

Я вот ещё что подумал, интересный казус возникает. Вы хотите советов, что улучшить в сборке. Но кто может дать такие советы? Естественно, достаточно опытные пользователи, которые знают, что надо делать. Нуб не знает, что надо делать, потому что он нуб. Нубу надо инсталятор, зупустил Setup, всё установилось, всё работает без проблем типа "на этот диск запись запрещена". И чтобы дать советы, надо хотя бы немного попользоваться Вашей сборкой. Допустим, я хочу посмотреть Вашу сборку. Надеюсь я достаточно опытный пользователь PureBasic? Я её скачиваю, устанавливаю и уже с самого начала удивляюсь нелепому с моей точки зрения размещению файлов. Отсутствию нужных мне инструментов и присутствию кучи ненужных. Даже клавиши переназначены не так, как у меня и совершенно, с моей точки зрения, нелогично, кто бы что ни говорил. Поэтому первое, что я сделаю, это буду перенастраивать под себя и все мои советы сведутся к советам, как сделать мне удобнее. А Вам, как я понял, это не нужно. Вам нужны советы, как доработать сборку под Вас лично, под Ваши предпочтения и сделать Вам удобнее... Но никто, кроме Вас не сможет это знать.

0

12

Smitis
Вчера перед работой успел только посмотреть что в папке Tools всего 1 инструмент. Сейчас запустил, получил

Код:
---------------------------
PureBasic
---------------------------
Could not find Toolbar Icon:

P:\PureBasic\Tools\DateTime1.png
---------------------------
ОК   
---------------------------

Диска P: вообще нет.

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

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

Отсутствию нужных мне инструментов и присутствию кучи ненужных

Присутствие ненужных инструментов лучше чем отсутствие нужных. Сборка где нет автоматизации, даже спорить не интересно, у меня штук 5 инструментов активно используются и если они не нужны, что тогда вообще нужно? Мне нужны и я вижу в них смысл сокращения ручной работы и концентрации на программировании. И хотел бы больше инструментов, но их надо делать.

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

Чувствуется явное противоречие.

Если сборка позиционируется как портабельная, то она изначально не имеет ассоциаций, то есть не прописана в реестр, а значит клик по pb-файлу в проводнике не откроет его в PureBasic. Если сборка всё же прописывается в реестр, то какой смысл делать её портабельной? Тогда пусть она пишет по всем своим путям файлов нужную ей информацию. С тем же успехом можно сделать файл-скрипт, который подчистит следы после использования на чужом компе.

Отредактировано AZJIO (20.12.2023 18:30:53)

0

13

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

Сейчас запустил, получил

Завтра проверю. Если это ошибка, исправлю.

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

Так и задумано. Учтите, эта сборка достаточно специфичная, заточена на решение одной задачи, точнее даже в помощь в решении этой задачи. Как универсальная она не задумывалась, хотя вполне себе рабочая.

Сборка где нет автоматизации, даже спорить не интересно

У меня автоматизацией занимается PurePProcessor. Именно автоматизацией. Просто под автоматизацией мы понимаем разные вещи.

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

Глубоко ошибочное мнение. Сама по себе портабелизация отношения к ассоциациям не имеет. Портабельность - это свойство программы. Ассоциации - это функционал системы и он существует независимо от того, что по этому поводу "думает" портабельная программа.

П.С.
У меня сложилось впечатление, что Вы решили, будто я убеждаю Вас делать портабельную сборку. Но я вроде ничего такого и не предлагал.
Собственно, Вы спросили, как можно организовать папки, я привёл пример, как сделано у меня.

Отредактировано Smitis (20.12.2023 23:26:45)

0

14

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

У меня сложилось впечатление, что Вы решили, будто я убеждаю Вас делать портабельную сборку

да, есть такое, как будто обвинение в не полноценности моей сборки.

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

Портабельность - это свойство программы.

Да, она вся в себе, но это свойство подразумевает полное отсутствие следов в системе, а так как она изначально не делает ассоциаций, то она и есть достигающая этой цели. Сейчас многие программы пишутся таким образом, либо передаётся через ком-строку, либо отдельная версия, либо по наличию маркера рядом с исполняемым файлом. Если у меня не стоит цель программы перетаскиваемой на флешке, а полное взаимодействие с ОС, то я изначально и позиционирую и обвинять что у меня прямой путь нет смысла, хотя в идеале конечно было бы удобней не ограничивать этой свойство, то есть сделать скрипт, который перепишет все пути на текущий путь в котором находится исполняемый файл и сам скрипт. Вот с этим уже интересно поработать, всего то нужно сделать поиск и замену, взяв в файлах настройки все пути и заменив на текущие, возможно перед запуском показать будущие пути например для папки примеров и переназначить их, а также пути инструментов, да вообще позволить пользователю задать все эти пути, так как у него может быть своя структура папок.

2. На счёт того что у меня плохие пути (структура папок). Надо подумать, почему инструменты должны лежать в "приложения"? Почему папка PureBasic должна быть отдельно? У вас 4 папки, и 4 PureBasic они укладываются в один столбец на экране и не дают запутаться, я тоже группирую, но когда групп много, а тут у нас 4 дистриба и они не разбросаны, поэтому и не вижу смыла их в отдельной папке, они по сортировке в кучке. Можно и так, можно и так, нет особых плюсов, например при открытии папки PureBasic нужно лишний клик чтобы войти во вложенный каталог, при  долгом использовании эти клики могут надоесть. Вот папка "Examples", которую можно назвать Source, а в ней уже сделать папку Examples, то да, но я изначально говорил что нахрапом, в быстром действии лишь бы выложить быстро придумал папку и это можно будет поменять. Вот в ней уже можно создавать кучу папок, а верхний уровень нет смысла особо группировать, там мало папок и она не будет развлетвлятся, если конечно же вам не захочется иметь тучу версий PureBasic с десяток, тогда можно сгруппировать.
Если делать изначально сложную систему, в которой будет развиваться, то код-архив тоже можно вынести из Source и сделать в верхнем уровне, так как при поиске захочется иногда искать свой код, а иногда в код архиве, а если они будут в одной папке, то сложнее делать поиск разделяя, ну или добавить ещё уровень вложенности папка Source не развивается, в ней только папка примеров, папка своих исходников и папка код-архива, тогда папка своих примеров развивается отдельно, в которой папка с датами, папка загрузок, папка проектов и папка особых готовых избранных примеров, возможно папка инклудов. Просто из-за большого количества вложенностей будет неюзабельное использование, лишние клики меня тоже достают, вот поэтому баланс между неоправданными вложенностями и неидеальной группировкой. Возможно это зависти от уровня и готовности использовать сложную структуру или простую. В любом случае у меня есть меню на панели задач, где я имею быстрое открытие избранных папок, например папка "Мои проекты" и папка PureBasic. Если папка находится на расстоянии одного клика от  "Мои проекты" то открываю её, если рядом с PureBasic то открываю её.

0

15

AZJIO

но это свойство подразумевает полное отсутствие следов в системе

Вот опять нет. Конечно, есть портабельщики-экстремисты (а может это портабельщики-шпионы), так считающие. Но на самом деле портабельность это просто свойство программы хранить все настройки в своей папке. А следы всё равно останутся - Винда так устроена.

На счёт того что у меня плохие пути (структура папок)

Я этого не говорил. Вы спросили про папки, я показал как у меня. И у меня инструменты не в Apps, а в Tools. Apps предназначена для "подопытных" программ.

4 PureBasic они укладываются в один столбец на экране и не дают запутаться

Раньше так и было. Потом поменялось, потому что количество версий PureBasic может доходить до десятка и больше и есть ещё много дополнительных папок, например, для скачанных и неразобранных файлов, для разных полезных исходников, для тестирования... Много чего. Естественно, в сборку весь хлам я пихать не стал. Более того, в сборке совсем другая структура, чем та, которая я использую.

Отредактировано Smitis (21.12.2023 15:45:59)

0

16

Smitis
Ваша сборка переписала мой конфиг в %APPDATA%

0

17

AZJIO

Ваша сборка переписала мой конфиг в %APPDATA%

Судя по поведению (переписывает конфиг, не меняет путь к иконке) это не моя сборка.
В моей сборке должны присутствовать winmm.dll в папках PureBasic-а соответствующей разрядности.

0

18

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

Судя по поведению (переписывает конфиг, не меняет путь к иконке) это не моя сборка.
В моей сборке должны присутствовать winmm.dll в папках PureBasic-а соответствующей разрядности.

Файл winmm.dll в ней есть. Но стандартный PureBasic как раз таки не переписывает конфиг, а загружает какой есть. Сейчас опять проверил, после вашей сборки мой конфиг остался моим. Пока не понимаю как он поменялся, я имел конфиг со стилем именно вашей сборки (как будто он подменился копированием), причём я хотел вернуть цвет, думая что проблема только в цвете, но при сравнении с конфигом из моей сборки в программе сравнения, там столько различий, что я не стал ничего восстанавливать, а просто скопировал свой конфиг взамен (который прошёл стерилизацию) и поправил некоторые пути.
Кстати, можно просто попросить авторов вместо-того чтобы прописывать ключ \portable проверить некий файл метку или сам конфиг использовать как метку, что если он присутствует рядом, то подхватывать конфиг из локальной папки, тогда не придётся придумывать костыли. И поддержку относительных путей для папки Tools.

0

19

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

Кстати, можно просто попросить авторов вместо-того чтобы прописывать ключ \portable проверить некий файл метку или сам конфиг использовать как метку, что если он присутствует рядом, то подхватывать конфиг из локальной папки, тогда не придётся придумывать костыли.

Можно решить перекомпиляцие IDE, благо она в исходниках: в файле Commandline.pb в процедуре ParseCommandline строки блока обработки Case "/PORTABLE" перенести в самый конец процедуры.

А вот возможности использовать относительных путей явно не хватает.
В моём портабелизаторе (через dll) используется PureBasicPortable.prefs в котором задаются относительные пути.

0

20

Обновил сборку. Добавил структуру папок и описание. PureBasic`и переложил в папку "PureBasic". Естественно исправил пути в reg-файле, в PureBasic.prefs. Задал новый каталог для сохранения исходников. Добавил все компиляторы в PureBasic.prefs, то есть в IDE есть выбор всех 4-х компиляторов (64/86, asm/c)

В примерах для справки использовал путь "C:/ProgramData/PureBasic/Examples/Sources/" и они попали в официальную справку (AddPackFile), поэтому эту папку не рекомендуется переносить, но всё же в IDE изменить путь к папке примеров можно, то есть и примеры будут рабочими и выбор исходников будет начинаться с приемлемой папки.

Перезалил добавив описание инструментов - ReadmeTools.txt.

Отредактировано AZJIO (24.12.2023 01:29:48)

0

21

Добавил в сборку conf_replace.exe с исходником, который заменяет все пути на текущий в конфигах и файле реестра, пересоздаёт ярлыки. Теперь по сути нет жёсткой привязки к абсолютному пути. Но при создании ярлыков учитывается длина пути с аргументами 260 символов, поэтому если превышено из-за длинного пути, то часть ком-строки обрежется в ярлыке. Также conf_replace.exe не просто заменяет пути, а ещё очищает истории файлов и поиска, то есть обезличивает конфиг.

Перезалил. Ещё улучшение conf_replace.exe
1. Предлагает скопировать конфиги в %APPDATA%, так как если прикрепить прогу к панели задач, то конфиги будут использоваться из %APPDATA%. И для других версий при запуске без параметров.
2. Замена пути в плаге справки.
3. Сигнализирует о завершении.

Отредактировано AZJIO (25.12.2023 08:14:58)

0

22

Аналогичное сделал для Linux (ссылка в первом посте). Хотя это требует установку некоторых инструментов как отдельных программ. Но зато намного легче поднять среду, чем настраивать ручками. Первая проба показала, что надо заранее создать ярлык и добавить скрипт ассоциации.
Тоже надо писать код поиска и замены путей, где домашняя папка имеет другое имя юзера.

Отредактировано AZJIO (20.01.2024 00:27:15)

0

23

Обновил инструменты для Linux, добавлено 6 инструментов и один обновлён. В Readme указано установить ещё 3 программы как инструмент, которые добавлены на панель инструментов. И поставил галки, чтобы не отображать в меню инструменты, которые на панели инструментов добавлены в виде значков, так как меню уже не умещается на экране.

0

24

Обновил инструменты для Windows
Добавлены новые инструменты (CodeLocalization, CommentLocalization, Tidy2, TextReplace, IncludeHelper, alignment_of_comments)
Обновлены FindAllReferences, RegExp, no_comment, get_local, AutoCompletionIDE, IceDesign
Обновлена справка до 5.73 с включением нескольких функций из 6.10
Удалил rexman, 6 МБ слишком много

0

25

Я задался вопросом (иногда возникает) выложить ли сборку на официальном сайте? Взвешиваю плюсы и минусы...
плюсы: отзывы, может кому то поможет
минусы: русскоязычная и скажут зачем это здесь. И также лицензия, из самых критичных Au3Info.exe из дистрибутива AutoIt3, хоть и бесплатный, но не уверен что можно распространять в сборке (но всем будет ровно). IceDesign - демоверсия, думаю не критично, автор против не должен, аналогично pbOptimizer.exe может даже будут рады распространению. Остальные либо мои, либо выкладываемые с исходниками, т.е. ещё более низкий порог критичности. Dbgview, но MS не заметят, а на офсайте всем будет ровно, да и LiveCD же выкладывают, а оно побольше контента содержит, сейчас уже это законно если Windows купленная.

Отредактировано AZJIO (Сегодня 20:26:12)

0


Вы здесь » PureBasic - форум » PureBasic для Windows » PureBasic сборка