Re: Cudatext Code tree
Posted: 29.04.2025 13:14
Еще раз поясню, зачем нужно "замораживаеть" обновление Code tree.
Пусть у вас файл-календарь:
+ годы
++ месяцы
+++ даты
Вы работаете с 2-3 разными месяцами и вам нужно, чтобы работать с январем и сентябрем,
а иногда и заглядывать в март.
Т.е. три узла второго нужно держать открытым.
Code tree обновляет фолдинг после перемещения в другой узел, свораяивая остальные узлы.
Запоминать программно состояние дерева программно сложно, хотя есть программы, которые это делают.
Возможно, есть какие-то простые алгоритмы или API для запоминания дерева.
CherryTree помнит все состояние дерева, но где хранит, я не нашел!
GitHub - giuspen/cherrytree: cherrytree
https://github.com/giuspen/cherrytree
В xml-файле нет (или я не увидел) параметра свернтутости узла.
Возникла идея "заморозить" обновление Code tree.
Для этого подходит параметр
//Delay after text change (in milliseconds), after which code-tree
//starts to fill.
"ui_tree_time_fill": 2000,
По умолчанию дерево обновляется через 2 сеунды после измениия состояния или текста заголовка/заголовков, перемещения каретки в другой блок.
Если установить параметр "ui_tree_time_fill": 2000000,
с помощью app_proc(PROC_CONFIG_READ, '{"ui_tree_time_fill": 2000000}')
то фолдинг будет возможен вручную, но его обновление происходить не будет,
вернее, через 2000 секунд.
К сожалению, макроса для app_proc нет, поэтому делаем простенький плагин для этой функции.
Идеи и вопросы по нему в теме Вопросы по плагинам, начиная с 3 страницы.
(259) CudaText. Вопросы по плагинам - Страница 3 - UVviewsoft forums
https://synwrite.sourceforge.net/forums ... 2&start=20
Сам текст плагина я размещу после здесь и, думаю, на Гитхабе.
Пусть у вас файл-календарь:
+ годы
++ месяцы
+++ даты
Вы работаете с 2-3 разными месяцами и вам нужно, чтобы работать с январем и сентябрем,
а иногда и заглядывать в март.
Т.е. три узла второго нужно держать открытым.
Code tree обновляет фолдинг после перемещения в другой узел, свораяивая остальные узлы.
Запоминать программно состояние дерева программно сложно, хотя есть программы, которые это делают.
Возможно, есть какие-то простые алгоритмы или API для запоминания дерева.
CherryTree помнит все состояние дерева, но где хранит, я не нашел!
GitHub - giuspen/cherrytree: cherrytree
https://github.com/giuspen/cherrytree
В xml-файле нет (или я не увидел) параметра свернтутости узла.
Возникла идея "заморозить" обновление Code tree.
Для этого подходит параметр
//Delay after text change (in milliseconds), after which code-tree
//starts to fill.
"ui_tree_time_fill": 2000,
По умолчанию дерево обновляется через 2 сеунды после измениия состояния или текста заголовка/заголовков, перемещения каретки в другой блок.
Если установить параметр "ui_tree_time_fill": 2000000,
с помощью app_proc(PROC_CONFIG_READ, '{"ui_tree_time_fill": 2000000}')
то фолдинг будет возможен вручную, но его обновление происходить не будет,
вернее, через 2000 секунд.
К сожалению, макроса для app_proc нет, поэтому делаем простенький плагин для этой функции.
Идеи и вопросы по нему в теме Вопросы по плагинам, начиная с 3 страницы.
(259) CudaText. Вопросы по плагинам - Страница 3 - UVviewsoft forums
https://synwrite.sourceforge.net/forums ... 2&start=20
Сам текст плагина я размещу после здесь и, думаю, на Гитхабе.