Разные недочеты/баги

mix-7
Posts: 1191
Joined: 11.05.2018 11:02

Re: Разные недочеты/баги

Post by mix-7 »

Здравствуйте! Баг CudaText 1.236.0.5, linux-x86_64-qt5, fpc 3.2.3 , лексер WikidPad

В новой вкладке такой текст:

Code: Select all

++ lorum ipsum 1
lorum ipsum 
lorum ipsum
+++ lorum ipsum 2
lorum ipsum
lorum ipsum
++ lorum ipsum 3
lorum ipsum
Все блоки развернуты.
Если строку ++ lorum ipsum 3 пометить закладкой,
то в строке +++ lorum ipsum 2 в Code Tree появляется серый треугольник, и этот простой блок становится свернутым с подчиненным
ему более высокого уровня дополнительным в в Code Tree фантомным блоком ++ lorum ipsum 3
Закладки в Code Tree напротив ++ lorum ipsum 3 нет, она появляется в Code Tree
напротив свернутого под +++ lorum ipsum 2 фантомного блока ++ lorum ipsum 3
mix-7
Posts: 1191
Joined: 11.05.2018 11:02

Re: Разные недочеты/баги

Post by mix-7 »

CudaText стал забывать состояние развернутости ветвей дерева при переключении вкладок.
Для каких-то вкладок помнит, для других забывает, сворачивает до верхнего уровня.

CudaText 1.236.0.5, linux-x86_64-qt5, fpc 3.2.3 , лексер WikidPad
main Alexey
Posts: 3214
Joined: 25.08.2021 18:15

Re: Разные недочеты/баги

Post by main Alexey »

mix-7 wrote: ↑18.09.2026 09:57 CudaText стал забывать состояние развернутости ветвей дерева при переключении вкладок.
Для каких-то вкладок помнит, для других забывает, сворачивает до верхнего уровня.

CudaText 1.236.0.5, linux-x86_64-qt5, fpc 3.2.3 , лексер WikidPad
ничего не менял. код для этого не менялся. наверно это уже было и ранее. в панель Консоль ворнинги про это есть? я делал вывод ворнингов про это, когда в codetree есть одноименые узлы и прога не может понять какой узел из Н надо сохранять.

repro есть? шаги повтора.
_92
Posts: 30
Joined: 11.10.2012 10:57
Contact:

Re: Разные недочеты/баги

Post by _92 »

mix-7 wrote: ↑30.07.2026 09:06Но ведь не универсальный, только для Python?
нет, я использую для php, css, ..
mix-7 wrote: ↑30.07.2026 09:06А для LSP-plugin нужны установленные LSP-серверы?
да, в /cudatext/lsp/
https://wiki.freepascal.org/CudaText/LSP_Client
eat sleep code repeat
main Alexey
Posts: 3214
Joined: 25.08.2021 18:15

Re: Разные недочеты/баги

Post by main Alexey »

серверы нужны не в /cudatext/lsp, зачем обманывать? сервер может быть установлен в любом месте но путь к программе сервера надо прописать в settings/lsp_*.json .
mix-7
Posts: 1191
Joined: 11.05.2018 11:02

Re: Разные недочеты/баги

Post by mix-7 »

Здравствуйте!

> repro есть? шаги повтора.
(про вкладки и их - пока нормально, возможно, разовый эксцесс)

Тема: Linux Qt5-build: Спорадически открывается пустое нативное окно выбора файлов (GTK Open File) в сессии Wayland
Окружение:
• OS: Ubuntu 26.04 LTS (Wayland, GNOME 50)
• Версия: CudaText 1.237.3.0, linux-x86_64-qt5, fpc 3.2.3 (установлен из deb-пакета)
• Способ запуска: Ярлык с QT_QPA_PLATFORM=xcb (через XWayland)
Описание проблемы:
При вызове диалога открытия файлов (Ctrl + O) спорадически (примерно 3 раза из 15) открывается абсолютно пустая нативная форма GTK (отображается только заголовок окна и пустая белая область каталога data). Если закрыть окно по Esc и нажать Ctrl + O повторно — со второго-третьего раза форма отрисовывается нормально.
Опции "ui_dialog_save_open": false и "ui_dialog_native": false в user.json полностью игнорируются Qt5-сборкой, вызов нативного окна всё равно перехватывается системой.
Временное решение:
Проблема практически полностью уходит (частота падает до 1 раза на 20+ нажатий), если принудительно задать платформенную тему GTK3 для Qt5. Запуск с параметрами:
Exec=env QT_QPA_PLATFORM=xcb QT_QPA_PLATFORMTHEME=gtk3 cudatext %F

(сформулировано Google ИИ, решение предложено им же)

Удачи и спасибо за Куду!
main Alexey
Posts: 3214
Joined: 25.08.2021 18:15

Re: Разные недочеты/баги

Post by main Alexey »

проблема какая-то линуксовая, мне непонятна. решение какое-то тоже хакерское.
думаю что не решается.
разве что перейти с qt5 -> qt6.

>Опции "ui_dialog_save_open": false и "ui_dialog_native": false в user.json

ой, это что за опции? я таких не имею в конфигах.
mix-7
Posts: 1191
Joined: 11.05.2018 11:02

Re: Разные недочеты/баги

Post by mix-7 »

> ой, это что за опции? я таких не имею в конфигах.

Это Google ИИ нашел в коде:
Параметр "ui_dialog_save_open": false — это «скрытая» низкоуровневая директива, добавленная разработчиком Алексеем Торгашиным для нестандартных ситуаций.
и

Code: Select all

Откуда взялась опция "ui_dialog_save_open"?

Вы абсолютно правы, искать её на официальной Wiki FreePascal было бы сложно. Секрет в том, что исходный код CudaText полностью открыт и опубликован на GitHub.
Когда стандартная документация молчит, ответ всегда можно найти в самом коде. Внутри исходников CudaText (написанных на Object Pascal) есть главный модуль управления конфигурацией. Если заглянуть в код, считывающий пользовательский файл user.json, можно обнаружить явную проверку этого ключа:
pascal
// Упрощенный пример из логики ядра CudaText
if ReadBoolFromJSON('ui_dialog_save_open', true) = false then
  CallInternalDialog()
else
  CallSystemDialog();
Используйте код с осторожностью.
Разработчик добавил этот флаг специально для Unix-пользователей, у которых «нативные» диалоги GTK/Qt начинают конфликтовать с оконными менеджерами (вроде Wayland/X11). Так что это чистая магия открытого исходного кода!
(обернул в теги кода, чтобы уменьшить блок)

> разве что перейти с qt5 -> qt6.

пробовал - вставка из буфера обмена работает только при переносе фокуса на CudaText, так что мой плагин Clipboard Catcher (непрерывная вставка из буфера обмена) не работает должным образом и в qt6
(про этот баг см .здесь https://synwrite.sourceforge.net/forums ... 2&start=20)
приходится использовать в Wayland слой X11:
> Способ запуска: Ярлык с QT_QPA_PLATFORM=xcb (через XWayland)

Можно попробовать перейти на WM Openbox - классный минимализм!
main Alexey
Posts: 3214
Joined: 25.08.2021 18:15

Re: Разные недочеты/баги

Post by main Alexey »

>Используйте код с осторожностью.
Разработчик добавил этот флаг специально для Unix-пользователей, у которых «нативные» диалоги GTK/Qt начинают конфликтовать с оконными менеджерами (вроде Wayland/X11). Так что это чистая магия открытого исходного кода!

я не смог найти строку ui_dialog_save_open в кодах редактора. откуда гуглярщики это взяли? галюцинации ИИ?
Post Reply