OberonCore
https://forum.oberoncore.ru/

#022 Добавить второй уровень рабочих папок
https://forum.oberoncore.ru/viewtopic.php?f=134&t=6554
Страница 2 из 5

Автор:  Info21 [ Вторник, 25 Февраль, 2020 11:46 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Ищется сначала в рабочей, потом в промежуточной, потом в базовой.
Сохраняется в рабочей.

Автор:  Иван Денисов [ Вторник, 25 Февраль, 2020 12:57 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Евгений Темиргалеев писал(а):
Если только для меню, то вопрос, на мой взгляд открытый.

Например, у меня настроено какое-то меню. Например, в Attributes добавил какие-то еще команды. Или в контекстное для "Text". Это же мое право как пользователя его настроить? И тут какое-то расширение это меню заменяет .... на что?

Если же речь идет о расширении меню, то пересечения не возникает.


Настроенный ББ в промежуточной папке может иметь отличия от дистрибутива в том числе и в модулях, а не только в меню. Это и для отладки разных правок полезно. В промежуточной папке применяем исправление. И тестируем в рабочих папках на реальных проектах, как оно работает.

Автор:  Евгений Темиргалеев [ Вторник, 25 Февраль, 2020 13:36 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Понимаю. :) Веток в гитах не хватает. Для ББ хочется использовать родные средства.

Автор:  adimetrius [ Вторник, 25 Февраль, 2020 21:40 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Лично мне нужно вот так:

База0: эталонная из репо
База1: тут мои правки к эталону, напр, в подсистеме Text я кое-что направил для себя; и тут же - мои добавки к эталону, которые тоже связаны с ИДЕ и редактором текстов: доп команды для установки комментариев, работы с цветами, складками.
Проект: тут мой текущий проект лежит, и я не хочу его файлы перемешивать с База1

И тут мне пишет Иван, и говорит: Антон, попробуйте Пакет. Я: не вопрос!

База0 / База1 / Пакет

Глючит! Пробую без своих добавок:
База0 / Пакет

Я: Иван, все равно глючит! Иван: А вы pull Сделали? Я: футы-нуты!

База0' / База1 / Пакет
Зарработало!

Возвращаюсь к своей работе:
База0' / База1 / Проект

И это, кмк, вполне себе может заменить Git stash


Как автоматически меню за меня заменять - не знаю; как разрешать противоречия и отдавать приоритеты.

Автор:  adimetrius [ Вторник, 25 Февраль, 2020 21:46 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Евгений Темиргалеев писал(а):
Понимаю. :) Веток в гитах не хватает. Для ББ хочется использовать родные средства.


Вот-вот!

Автор:  Info21 [ Среда, 26 Февраль, 2020 14:42 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Евгений Темиргалеев писал(а):
Понимаю. :) Веток в гитах не хватает. Для ББ хочется использовать родные средства.
Гиты ни причём.

Автор:  Info21 [ Воскресенье, 01 Март, 2020 13:48 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

А если вместо промежуточной рабочей папки иметь возможность указывать в рабочей папке некие link-и на модули (и/или целые подсистемы), хранящиеся где угодно (в другой рабочей папке).
Но модификации сохранять только в текущей рабочей папке.

Схема "базовая папка + рабочая папка" узковата. Найти ясный способ расшить это дело было бы очень неплохо.

Автор:  Иван Денисов [ Четверг, 11 Март, 2021 08:06 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Хотелось бы сказать "не прошло и года", но год прошёл.

Демонстрация прототипа решения для трёх каталогов.

Теперь базовый Блэкбокс можно хранить отдельно, все надстройки от него хранить во вторичной папке, а работать в третичной.

Windows:
https://blackbox.oberon.org/unstable/de ... a1.056.zip
Использовать USE2


Linux:
https://blackbox.oberon.org/unstable/de ... .56.tar.gz
Использовать BB_TERTIARY_DIR

Вложение:
третичныеПапки.png
третичныеПапки.png [ 279.82 КБ | Просмотров: 6674 ]


Обнаружил недочёт, связанный с тем, что русская документация не открывается из вторичной папки... Если язык английский стоит, то проблем пока не обнаруживал.
Прошу потестировать.

Автор:  Иван Денисов [ Понедельник, 15 Март, 2021 18:54 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Товарищи, если кто-то будет тестировать в Ubuntu, то не забывайте добавить волшебные строки
Код:
unset UBUNTU_MENUPROXY
unset GTK_MODULES
export LIBOVERLAY_SCROLLBAR=0


У меня на скриншоте они не приведены, потому что использую Linux Mint с окружением Cinnamon. Там такие три строчки возможно не добавлять в скрипт запуска.

Автор:  Comdiv [ Понедельник, 15 Март, 2021 19:33 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Раз они так уж нужны, может, выполнять их внутри исполняемого файла в момент инициализации (unsetenv(), setenv())?

Автор:  Иван Денисов [ Среда, 17 Март, 2021 11:03 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Comdiv писал(а):
Раз они так уж нужны, может, выполнять их внутри исполняемого файла в момент инициализации (unsetenv(), setenv())?

Не знаю, как лучше. Это ведь только на одном частном линуксе такая проблема. Стоит ли ради этого включать в код Блэкбокса что-то...

Автор:  Илья Ермаков [ Среда, 17 Март, 2021 11:18 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

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

Я думаю, можно включать.

Автор:  adimetrius [ Четверг, 18 Март, 2021 00:12 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Хочу сказать некатегорично: речь о нескольких заклинаниях. Глядя на модули, которые стыкуются в исполнимый файл - ума не приложу, в который из них запихивать эти заклинания... Не в ядро же? Хранители ядра не позволят )) (и справедливо!)
Заклинаниям лучшее место - в заклинательном файле на заклинательном языке Шиш/Башиш. То, что я эти заклинания не произнес - мой косяк: расслабился, понимаешь, привык, что Компилятор за мной присматривает... а когда имеешь дело с Шиш, расслабляться никак нельзя!

Опробовал сегодня для сына под Вин10. Ярлык делал ручками. В названиях не разобрался - которая из них рабочая папка, USE или USE2? Пришлось залезть в Global Variables, выяснил, что USE2. Может, принять более осмысленные названия - рабочая, какаято(средняя), базовая(эталонная)?
Свой проект Ed (с несколькими подсистемами) удалось скомпилировать в двухпапочном режиме, потом ручками перенес в среднюю папку, перезашел в ББ в трехпапочном режиме - и в конце концов все появилось, средняя папка дополнила и перекрыла базовую. Все как хотелось! Ура! Спс!
Но слегка что-то пришлось пошаманить; сейчас вот вспомнил, что Вин10 что-то мухлюет с папками; завтра перепроверю, может, дело в этом было, а не в ББ. Мухлеж отключается, когда в ярлыке ставится режим совместимости с ВинХР - возможно ли, чтобы эта настройка была "из коробки" инсталлятора? (сын таковым пользовался)

Автор:  Comdiv [ Четверг, 18 Март, 2021 01:16 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

adimetrius писал(а):
Глядя на модули, которые стыкуются в исполнимый файл - ума не приложу, в который из них запихивать эти заклинания... Не в ядро же? Хранители ядра не позволят )) (и справедливо!)
В специально созданный модуль, предшествующий соответствующему проблемному коду. Так можно?

Автор:  Пётр Кушнир [ Четверг, 18 Март, 2021 01:27 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

На пути в мир java-пакетов бесконечной глубины, фу. :cry:

Автор:  Иван Денисов [ Четверг, 18 Март, 2021 03:21 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Бесконечной глубины вроде не предвидится. Речь, про трёхуровневую систему
1. уровень = эталонный Блэкбокс, который легко обновить
2. уровень = надстройки
3. уровень = проект

Автор:  adimetrius [ Воскресенье, 21 Март, 2021 01:20 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Подвал-Этаж-Чердак.

Автор:  Artyemov [ Понедельник, 22 Март, 2021 00:48 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

adimetrius писал(а):
Подвал-Этаж-Чердак.

Куртуазнее "Цоколь-...-Пентхаус"

Автор:  Иван Денисов [ Воскресенье, 28 Март, 2021 11:59 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

А какие-то может есть ещё идеи кроме /USE и /USE2 ?
/USE уже достаточно привычный устоявшийся ключ для рабочих папок в Windows, но вот насколько понятно название /USE2 ?

Автор:  Comdiv [ Воскресенье, 28 Март, 2021 15:55 ]
Заголовок сообщения:  Re: #022 Добавить второй уровень рабочих папок

Идея всё та же, что уже озвучивалась
Просто /USE остаётся неизменным, а вместо /USE2 Dir2 /USE Dir1 пишем /USE Dir2:Dir1

Страница 2 из 5 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/