OberonCore https://forum.oberoncore.ru/ |
|
#022 Добавить второй уровень рабочих папок https://forum.oberoncore.ru/viewtopic.php?f=134&t=6554 |
Страница 3 из 5 |
Автор: | Иван Денисов [ Воскресенье, 28 Март, 2021 18:19 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Comdiv писал(а): Идея всё та же, что уже озвучивалась Просто /USE остаётся неизменным, а вместо /USE2 Dir2 /USE Dir1 пишем /USE Dir2:Dir1 Фёдор Васильевич и Евгений Эдуардович такую постановку раскритиковали. И согласен, что тут и новый механизм для парсера. И возможность перепутать. Я вот только сделал не так, что Ф.В. предлагал сделать USE2 для промежуточной. И я перепутал ещё на этапе внедрения Может для промежуточной какое-то более читаемое название вроде /LIBS ? |
Автор: | Info21 [ Понедельник, 29 Март, 2021 07:51 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Иван Денисов писал(а): Я вот только сделал не так, что Ф.В. предлагал сделать USE2 для промежуточной. И я перепутал ещё на этапе внедрения Иван Андреевич, это же элементарно -- будет огромный баттхёрт с совместимостью. Подумайте, сколько уже есть рабочих папок.Исправляйте скорее, пока у Вас бета. На таком пустяке такую засаду устраивать. |
Автор: | Иван Денисов [ Понедельник, 29 Март, 2021 09:49 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Проблем с совместимостью нет, так как, если нет средней папки, то третья становится рабочей. Так что с обычным /USE все как обычно работает. Название /USE2 не понятное, в общем. Предлагайте какие-нибудь альтернативы, пожалуйста. |
Автор: | adimetrius [ Понедельник, 29 Март, 2021 11:59 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
CUSTOM? |
Автор: | Comdiv [ Понедельник, 29 Март, 2021 13:27 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Иван Денисов писал(а): Фёдор Васильевич и Евгений Эдуардович такую постановку раскритиковали. И согласен, что тут и новый механизм для парсера. Если проблема заключается в разборе списка , можно повторно задействовать /USE, то есть не /USE Dir2:Dir1, а /USE Dir2 /USE Dir1. Нет, конечно, для "рабочего каталога" было бы логично использовать /WORKDIR, но это же не так, как было раньше. Цитата: И возможность перепутать. Перепутать будет возможность всегда, а концепция PATH, вроде бы, большинству понятна? Из того, что сделано в GNU/Linux я скорее ожидал бы, что файлы сохраняются и ищутся сначала в $BB_PRIMARY_DIR, ведь это же primary.
|
Автор: | Trurl [ Понедельник, 29 Март, 2021 13:54 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Comdiv писал(а): Перепутать будет возможность всегда, а концепция PATH, вроде бы, большинству понятна? А представьте, если при записи файла он будет размещен где-то в PATH. |
Автор: | Comdiv [ Понедельник, 29 Март, 2021 14:18 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Не где-нибудь, а в первом каталоге, прямо как сейчас с поправкой на то, что не только первом, но и единственном |
Автор: | Wlad [ Понедельник, 29 Март, 2021 16:29 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Пётр Кушнир писал(а): На пути в мир java-пакетов бесконечной глубины, фу. В чём плохость? |
Автор: | Иван Денисов [ Понедельник, 29 Март, 2021 17:08 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Comdiv писал(а): Цитата: И возможность перепутать. Перепутать будет возможность всегда, а концепция PATH, вроде бы, большинству понятна? Из того, что сделано в GNU/Linux я скорее ожидал бы, что файлы сохраняются и ищутся сначала в $BB_PRIMARY_DIR, ведь это же primary.Да, это напрягает. Я бы предпочёл такие названия: Код: $BB_START_DIR $BB_LIBS_DIR /LIBS $BB_USE_DIR /USE Вторая и третья - опциональны... Если задана /LIBS но не зазада /USE , то /LIBS - считается рабочей. |
Автор: | adimetrius [ Понедельник, 29 Март, 2021 20:16 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Иван Денисов писал(а): Я бы предпочёл такие названия: Код: $BB_START_DIR $BB_LIBS_DIR /LIBS $BB_USE_DIR /USE Вторая и третья - опциональны... Если задана /LIBS но не зазада /USE , то /LIBS - считается рабочей. Ненастойчиво предлагаю: 1) если рабочая папка /USE не задана - то и не работать вовсе... или работать из "рабочей папки ОС" - той, из которой запущена команда (хотя не знаю, к чему привыкли в Вин) 2) И уж точно не считать LIBS рабочей, если это не задано напрямую (т.е. LIBS # USE) - а то как наворотишь дров, накомпилируешь модулей... С LIBS возникает вопрос: а что такое библиотека? Со START тоже напутано путаницы: стартовая директория в ОС - это ведь та, из которой запускается программа, при этом она вовсе не та, в которой находится программный файл... и еще учесть, что исполнимый blackbox может вовсе лежать не вместе с остальными штатными файлами (при экспериментах с ядром и HostFiles я компоную и запускаю отдельный исполнимый файл blackbox) Может STANDARD CUSTOM USE Или STD (стандарт - штатный набор файлов ББ) EXT (расширения - у нас же есть такое понятие, хоть и недоопределенное; как раз для расширений эта папка, кмк) USE |
Автор: | Александр Ильин [ Понедельник, 29 Март, 2021 20:34 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Может быть, что-то типа /READ и /USE (=read/write)? |
Автор: | Иван Денисов [ Вторник, 30 Март, 2021 07:13 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
READ - не вполне понятно. Вот так годится, на мой взгляд Код: $BB_STANDARD_DIR
$BB_CUSTOM_DIR /CUSTOM $BB_USE_DIR /USE |
Автор: | Info21 [ Вторник, 30 Март, 2021 14:24 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Иван Денисов писал(а): Проблем с совместимостью нет, так как, если нет средней папки, то третья становится рабочей. Речь о ситуации, когда средняя папка добавляется: /USE по-прежнему должен соответствовать рабочей папке.
Так что с обычным /USE все как обычно работает. |
Автор: | Пётр Кушнир [ Вторник, 30 Март, 2021 14:49 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Иван Денисов писал(а): Бесконечной глубины вроде не предвидится. Речь, про трёхуровневую систему 1. уровень = эталонный Блэкбокс, который легко обновить 2. уровень = надстройки 3. уровень = проект А, то есть это скорее https://ru.wikipedia.org/wiki/Aufs |
Автор: | Иван Денисов [ Вторник, 30 Март, 2021 17:21 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Супер! Теперь мы может называть это явление в Блэкбоксе технически точным термином "каскадно-объединённое монтирование"! /READ тут вписывается тогда вместо /CUSTOM, кстати |
Автор: | Wlad [ Четверг, 01 Апрель, 2021 11:58 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Пётр Кушнир писал(а): А, то есть это скорее https://ru.wikipedia.org/wiki/Aufs Надо внимательно присмотреться, имеет ли смысл делать "полное объединение" логического деления проектов и самой (модульной) системы КП с конкретным вариантом реализации локации элементов файловой системы... Например, можно поступать как в проектах некоторых IDE или в GoboLinux: практически вводится "промежуточный слой", который позволяет адресоваться в "двух слоях логики доступа" к некоторым информационным единицам (структура проекта и структура подлежащей файловой системы). |
Автор: | Info21 [ Пятница, 02 Апрель, 2021 13:36 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Иван Денисов писал(а): Вот так годится, на мой взгляд Так нормально.
Код: $BB_STANDARD_DIR $BB_CUSTOM_DIR /CUSTOM $BB_USE_DIR /USE |
Автор: | Иван Денисов [ Понедельник, 05 Апрель, 2021 12:54 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Обсудил ещё лично с многими заинтересованными людьми. Утверждаем значит такое именование! Для примера вот так сейчас работает. Код: C:\Users\Иван\Desktop\WINDOWS\BlackBox.exe /CUSTOM C:\Users\Иван\Desktop\libs /USE C:\Users\Иван\Desktop\projects Для Linux Код: #!/bin/sh # ulimit -s 32000 # ulimit -a rn=`readlink -f "${0}"` standardDir=`dirname "${rn}"` useDir=`readlink -f .` exe="blackbox" # fix Ubuntu-specific problems: unset UBUNTU_MENUPROXY unset GTK_MODULES export LIBOVERLAY_SCROLLBAR=0 # export LD_DEBUG=all exec env \ BB_STANDART_DIR="${standardDir}" BB_CUSTOM_DIR="./libs" BB_USE_DIR="${useDir}" \ BB_PACKED_NAME="${exe}" \ "${standardDir}"/${exe} "${@}" Исправил недочёт в StdApi из-за которого документация из CUSTOM папки не открывалась. В документации к Files.FileList указано, что "Процедура может изменять loc.res." А в StdApi.PathToSpec это не учитывалось. Так что loc.res не был равен 0 в ThisDialog, и поэтому документация не открывалась. Проверил и в Windows 7 и в Linux Mint 20.1. |
Автор: | Иван Денисов [ Понедельник, 05 Апрель, 2021 21:03 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Обновил пакет в хранилище. Вот такой скрипт теперь кладу в ~/.local/share/nemo/scripts чтобы удобно запускать Блэкбокс с расширениями в любой удобной директории. Все расширения и надстройки теперь удобно хранить отдельно от базовой обновляемой автоматически версии. Код: #!/bin/sh
bbStdDir="/usr/lib/blackbox" bbCustomDir="/home/ivan/blackbox" unset UBUNTU_MENUPROXY unset GTK_MODULES export LIBOVERLAY_SCROLLBAR=0 env \ BB_STANDARD_DIR="${bbStdDir}" \ BB_CUSTOM_DIR="${bbCustomDir}" \ BB_USE_DIR="$PWD" \ ${bbStdDir}/blackbox $* & |
Автор: | Иван Денисов [ Понедельник, 05 Апрель, 2021 22:36 ] |
Заголовок сообщения: | Re: #022 Добавить второй уровень рабочих папок |
Допустил недочёт в Windows версии, в 60-ой сборке поправил: https://blackbox.oberon.org/unstable/de ... a1.060.zip |
Страница 3 из 5 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |