Page 1 of 3
Пара идей про сессии
Posted: 26.03.2025 11:35
by main Alexey
@mix-7, выскажите ваше мнение, как активный юзер сессий.
1) поменять дефолтное имя сессии 'history session.json' -> 'default.cuda-session'. это почти не нарушит совместимость.
2) при передаче параметра filename.cuda-session в командной строке, НЕ загружать этот файл как сессию. пока что оно загружается! что ведет к неудобству - я хочу просто поредактировать файл, поискать в нем данные, а Куд грузит его как сессию.
Re: пара идей про сессии, ломающих совместимость
Posted: 26.03.2025 12:34
by mix-7
2 - да, не загружать!
И в cli, и при клике на файл в файловом менеджере.
Так как кто-нибудь, как я недавно, захочет его просмотреть, но не gedit'ом, к примеру, а CudaText по умолчанию.
И тогда сессия собьется, и если не было "тренинга", дезориентируешься и можешь потерять данные, нить работы, порядок вкладок и т.п.
А через несколько минут, пока разбираешься, и бэкапы сессий.
Поэтому предлагаю в этом случаем запрос - "это файл сессии, открыть для редактирования/просмотра или как сесию"
1 а это зачем?
А, чтобы отличать 'history session.json' от файла 'history.json', чтобы меньше путаницы было?
Я подумал, как мне кажется, самое простое:
Если по какой-то причине нет файла 'history session.json'
(а вот сегодня не понял, как он исчез, ведь сбоев не было!),
дать msg-box с предупреждением
"файл сессии пустой, вкладки будут потеряны, восстановить сессию из бэкапа?"
И предложить на выбор бэкапы сессий, может, со списком/количеством вкладок, (в том числе тех, в которых есть несохраненные изменения) датой-временем или какой другой дополнительной информацией.
Re: пара идей про сессии, ломающих совместимость
Posted: 26.03.2025 13:37
by main Alexey
>чтобы отличать 'history session.json' от файла 'history.json', чтобы меньше путаницы было?
да, и чтобы все файлы сессий были легко находимы глазом.
вобщем, я сделал эти 2 идейки. будут в обновлении.
Re: пара идей про сессии, ломающих совместимость
Posted: 26.03.2025 13:43
by mix-7
ОК, спасибо!
А кейс с отсутствующим/пропавшим файлом 'history session.json'/'default.cuda-session'?
Если его нет, то warning msg-box.
Re: пара идей про сессии, ломающих совместимость
Posted: 26.03.2025 13:49
by main Alexey
планирую это делать (на этой или след. неделе).
Re: Пара идей про сессии
Posted: 30.03.2025 21:07
by main Alexey
взялся за это дело (юзать бекап сессии если файл сесии удален).
нарастил код.
можно пока что почитать логику кода тут:
https://github.com/Alexey-T/CudaText/bl ... .inc#L1117
c указанной строки где-то 20 строк.
завтра выложу бету для вас.
Re: Пара идей про сессии
Posted: 31.03.2025 07:50
by main Alexey
бета:
https://github.com/Alexey-T/CudaText/di ... t-12673308
- как видно по коду, бекап всегда берется из <name>.1.cuda-session
- никаких вопросов юзеру, все делает Куд сама. или что-то спрашивать надо?
Re: Пара идей про сессии
Posted: 03.04.2025 08:17
by mix-7
> - никаких вопросов юзеру, все делает Куд сама. или что-то спрашивать надо?
Думаю, надо.
Пусть Куда сделает, но предупредит.
В CudaText 1.222.5.0, linux-x86_64-qt6, fpc 3.2.3
во время работы default.1.cuda-session
После завершения default.1.cuda-session
переименовывается в default.cuda-session,
откуда, видимо, и берется текущая информация.
При завершении (закрытии) Куды
default.1.cuda-session переименовывается зачем-то
в default.cuda-session
И резервной остается default.2.cuda-session
Пока по CudaText 1.222.5.0, linshutdown -P nowux-x86_64-qt6, fpc 3.2.3, бету скачал, еще не запускал.
Неудобно то, что вручную приходится переименовывать бэкап вместо клика.
Но и открывать сессию вместо редактирования без предупреждения тоже опасно.
Посмотрю, как в бете это реализовано.
Пока очень непонятно для CudaText 1.222.5.0, linux-x86_64-qt6, fpc 3.2.3
почему команда shutdown -P now вызывает потерю файла сессии,
и какой должна быть CLI команда отключения компьютера для безопасного завершения CudaText.
Возможно, shutdown -P now может повреждать данные и других программ?!
Re: Пара идей про сессии
Posted: 03.04.2025 08:19
by mix-7
> - как видно по коду, бекап всегда берется из <name>.1.cuda-session
В CudaText 1.222.5.0, linux-x86_64-qt6, fpc 3.2.3 при его завершении
default.1.cuda-session переименовывается в
default.cuda-session
Re: Пара идей про сессии
Posted: 03.04.2025 08:37
by main Alexey
>почему команда shutdown -P now вызывает потерю файла сессии,
не хорошо, поищу как обработать сигнал SIGTERM.\
пока что SIGTERM вызывает аварийное завршение без сохр.истории.