CudaText. Порядок табов в Recents
Posted: 07.08.2023 13:36
Проблема со списком Recents:
Пока работаешь в редакторе, закрытые пользователем вкладки попадают в список Recents в порядке их закрытия.
Но при открытии они не удаляются оттуда, что было бы логично.
Но, что кажется неудобным, при закрытии CudaText gорядок табов в Recents нарушается:
то, что было недавно закрыто пользователем вверху, оказывается в низу списка.
Так как CudaText, закрывая табы справа налево, записывает их и в сессию, и в список Recents сверху вниз.
После открытия недавно закрытые пользователем файлы оказываются либо внизу, либо вытеснены.
Пожелание: сохранить закрытые пользователем табы и их порядок.
Вот что по этом вопросу в другой теме:
UVviewsoft forums • Просмотр темы - Разные недочеты/баги
https://synwrite.sourceforge.net/forums ... 639#p17639
Сообщение mix-7 » 01.08.2023 00:26
Отсюда (и выше)
Пока работаешь в редакторе, закрытые пользователем вкладки попадают в список Recents в порядке их закрытия.
Но при открытии они не удаляются оттуда, что было бы логично.
Но, что кажется неудобным, при закрытии CudaText gорядок табов в Recents нарушается:
то, что было недавно закрыто пользователем вверху, оказывается в низу списка.
Так как CudaText, закрывая табы справа налево, записывает их и в сессию, и в список Recents сверху вниз.
После открытия недавно закрытые пользователем файлы оказываются либо внизу, либо вытеснены.
Пожелание: сохранить закрытые пользователем табы и их порядок.
Вот что по этом вопросу в другой теме:
UVviewsoft forums • Просмотр темы - Разные недочеты/баги
https://synwrite.sourceforge.net/forums ... 639#p17639
Сообщение mix-7 » 01.08.2023 00:26
mix-7 wrote: переоткрыл из recents 3, 4.
Потом их закройте перед закрытием Куда.
Они при старте окажутся внизу.
У меня 1-P вкладок.
Открываю файл1, файл2, файл3
Закрываю файл3, файл2, файл1
файл1, файл2, файл3 наверху списка Recents
Закрываю Куд
Открываю - эти файлы на позициях M, N, O - внизу.
Понятно, что Куд при закрытии добавляет свои вкладки в список Recents в порядке справа налево.
Там цвета, другие атрибуты вкладок.
Понятно, сложно отделить закрытые пользователем от закрытых Кудой.
Но в идеале хотелось бы сохранения порядка, что был перед закрытием, чтобы последние закрытые файлы оставались наверху.
Это небольшое неудобство.
Оно не мешает, его нет при работе, список Recent не тасуется.
Но он перемешивается при закрытии Куд.
И в следующий раз порядок Recent не восстанавливается, к сожалению.
Отсюда (и выше)
main Alexey wrote:не знаю как это решить. табы которые вы руками не закрывали все равно же надо в Resents положить.Но он перемешивается при закрытии Куд.
И в следующий раз порядок Recent не восстанавливается, к сожалению.
А можно как-то программно их различать?
Тек, которые закрыли руками и те, что закрыл редактор после закрытия?
По событию on_exit, если такое есть.
В первом приближении.
Табы, что закрыли руками, помечать в Resents битовым/символьным флагом.
(Может, эта лишняя сущность и не понадобится, если:)
И/Или
При закрытии табов редактором CudaText записывать табы в обратном порядке снизу вверх.
(Сейчас закрывается, начиная, с правого таба сверху вниз)
Тогда:
Табы, закрытые пользователем, останутся наверху, что удобно: он с ними работал, закрыл недавно, возможно, захочет вскоре вернуться к ним или посмотреть, что редактировал последним.
А это очень удобно, и порядок не нарушается при последующих открытиях, табы не тасуются вниз.
А запись в Resents (снизу вверх) закрываемых по завершении CudaText табов в порядке слева направо логичнее и удобнее,
хотя и потребует записать их в обратном порядке в массив.
Или переписать цикл закрытие с 0 до n, а не с конца с n до 0.
Открываются же табы все равно не из Resents, а из сохраненной сессии.
Да, небольшая проблема в том, если размер списка Resents больше нужного для записи количества табов, и если писать снизу вверх, то будут пустые места в середине.
Тогда, наверное, все-таки понадобится признак закрытых вручную табов?
Или смотреть, чего нет в сессии?
Как это реализовать красиво и компактно?
Да, можно, наверное, ставить разделитель в Resents '----------------': сверху "ручные" табы (закрытые пользователем), сниу от разделителя и вниз закрытые справа налево табы при завершении CudaText.