Russian Qt Forum
Ноябрь 22, 2024, 11:16
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Дополнительные компоненты
>
Создаю QBS плагин для VS Code
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Создаю QBS плагин для VS Code (Прочитано 21690 раз)
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Создаю QBS плагин для VS Code
«
:
Октябрь 22, 2020, 16:39 »
Народ, всем не хворать.
Тут недавно решил попытать счастья в Node.js и создать плагин
для всеми любимго VS Code с поддержкой QBS.
И вуаля, что уже можно:
* Открыть папочку с файлом проекта QBS.
* Выбрать нужный проект для сборки (если в папочке несколько файлов).
* Выбрать профиль для сборки (по рабоче-крестьянскому - комплект с компиляторами).
* Выбрать конфигурацию сборки (по рабоче-крестьянскому - дебаг/релиз).
* Выбрать продукт для сборки (или все продукты).
* Выбрать продукт для запуска.
* Выбрать продукт для отладки.
Работает автоматическая "интеллектуальная" подсветка хидеров компилятора
и прочее.
Я пока еще не релизил ничего в маркет VS Code, т.к. пока все еще в
процессе тестирования/разработки.
Парни, нужна Ваша помощь в/на потестинге, генерации новых идей и прочего.
Вот сам исходный код плагина (делал на основе плагина CMake):
*
https://github.com/denis-shienkov/vscode-qbs
Вот сам бинарь плагина, который достаточно только
установить в VS Code:
*
https://github.com/denis-shienkov/vscode-qbs/releases/tag/v0.0.5
PS: По крайней мере я смог собрать QtCreator и сам QBS при помощи этого плагина
на Windows && MSVC. Также тестил и на Linux - вроде работает.
PS2: В аттаче тоже предкомпилированный плагин, просто надо переименовать расширение в *.vsix
«
Последнее редактирование: Октябрь 22, 2020, 16:52 от kuzulis
»
Записан
ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #1 :
Ноябрь 01, 2020, 11:00 »
Выкатил новую «developer-preview» версию 0.0.6:
*
https://github.com/denis-shienkov/vscode-qbs/releases/tag/v0.0.6
Список изменений тут:
*
https://github.com/denis-shienkov/vscode-qbs/blob/master/CHANGELOG.md#006
Репортить баги сюда:
*
https://github.com/denis-shienkov/vscode-qbs/issues
Кому интересно - просьба не лениться, по-тестировать, по-написать в трекер баги.
PS: Спасибо всем кто помогал в тестировании и прочему.
Записан
ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #2 :
Ноябрь 03, 2020, 16:12 »
Добавил статью на хабр:
https://habr.com/ru/post/526256/
Записан
ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #3 :
Ноябрь 10, 2020, 13:55 »
Добавил в маркет версию 0.0.8. Теперь можно установить по-нормальному.
Используйте на здоровье, товарищи! ))
Записан
ArchLinux x86_64 / Win10 64 bit
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Создаю QBS плагин для VS Code
«
Ответ #4 :
Ноябрь 10, 2020, 13:58 »
огонь!
Записан
alex312
Хакер
Offline
Сообщений: 606
Re: Создаю QBS плагин для VS Code
«
Ответ #5 :
Ноябрь 12, 2020, 22:19 »
Цитата: kuzulis от Ноябрь 10, 2020, 13:55
Добавил в маркет версию 0.0.8. Теперь можно установить по-нормальному.
Более того, оно у меня само обновилось.
Записан
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #6 :
Декабрь 19, 2020, 14:46 »
Выкатил новую девелоперскую версию 0.0.9. Список изменений
тут
.
В след релиз 1.0.0 планирую добавить:
1) Автоматический запуск резолва когда определенные *.qbs/*.js файлы меняются.
Тут проблем особых не вижу, сама QBS дает список этих файлов за которыми надо наблюдать.
2) Отображать "отключенные" продукты и группы в дереве проекта как-то (сейчас там отображаются все).
Тут есть проблемки с АПИ самой VSCode, кажется там нет возможности как-то менять цвет кастомных айтемов дерева.
Хотя, VSCode предоставляет некое АПИ называемое Decorations API, но оно только для реальных файлов,
и как его прикрутить к кастомному TreeView я пока хз.
У меня есть идея отображать отключенные айтемы, например с зачеркнутым текстом но я опять хз,
можно ли в VSCode как-то задать шрифт зачеркнутый генерируя имя айтема.
3) Добавить возможность переопределять проперти продуктов, проектов и пр. (по аналогии как в QtC).
Думаю повесить это на какую-нить новую команду, и дать возможность пользователю вводить эти проперти через селекторы.
ЗЫ: Народ, есть тут кто нить, кто писал плагины для VSCode и/или знает node.js/electron? Интересует именно возможность по п.2.
Есть у кого еще какие может идеи, что бы еще пофиксить/добавить?
Записан
ArchLinux x86_64 / Win10 64 bit
alex312
Хакер
Offline
Сообщений: 606
Re: Создаю QBS плагин для VS Code
«
Ответ #7 :
Декабрь 20, 2020, 13:26 »
Цитата: kuzulis от Декабрь 19, 2020, 14:46
2) Отображать "отключенные" продукты и группы в дереве проекта как-то (сейчас там отображаются все).
Тут есть проблемки с АПИ самой VSCode, кажется там нет возможности как-то менять цвет кастомных айтемов дерева.
Хотя, VSCode предоставляет некое АПИ называемое Decorations API, но оно только для реальных файлов,
и как его прикрутить к кастомному TreeView я пока хз.
У меня есть идея отображать отключенные айтемы, например с зачеркнутым текстом но я опять хз,
можно ли в VSCode как-то задать шрифт зачеркнутый генерируя имя айтема.
Что-то похожее есть, сам я не знаю, но cmake плагин разукрашивает итемы, и цепляет иконки. (картинка во вложении)
Как видно, запускаемый таргет обозначен ракетой, а uninstall - зелененький.
«
Последнее редактирование: Декабрь 20, 2020, 13:30 от alex312
»
Записан
alex312
Хакер
Offline
Сообщений: 606
Re: Создаю QBS плагин для VS Code
«
Ответ #8 :
Декабрь 20, 2020, 13:38 »
Цитировать
Есть у кого еще какие может идеи, что бы еще пофиксить/добавить?
Как я писал в дискорде. Есть небольшая проблемка, когда плагин пытается использовать протухший тулчейн.
При парсинге проекта выдается ошибка, но билд рапортует что все Ок.
Это все msvc, почему-то они после упдейта помирают. Не знаю как это решается в креаторе, но, похоже, они детектят их при старте.
Ну, т.е. надо бы как-то сообщать что тулчейн протух, и не запускать билд.
Записан
alex312
Хакер
Offline
Сообщений: 606
Re: Создаю QBS плагин для VS Code
«
Ответ #9 :
Декабрь 20, 2020, 14:02 »
Еще идея, не знаю насколько реализуемая.
Сейчас окошко "outline" отображается строго в файлэксплорере.
Было бы замечательно если бы его можно было отобразить во вкладке с деревом проекта.
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Создаю QBS плагин для VS Code
«
Ответ #10 :
Декабрь 20, 2020, 16:00 »
kuzulis, QBS, конечно, не нужен
Но тебе огромное спасибо за твой вклад в свободное ПО!
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #11 :
Декабрь 21, 2020, 15:58 »
Цитата: alex312
Сейчас окошко "outline" отображается строго в файлэксплорере.
А что это за окошко? Моешь заскринить? В СМаке плагине оно есть (где)?
Цитата: alex312
Как я писал в дискорде. Есть небольшая проблемка, когда плагин пытается использовать протухший тулчейн.
Тут я хз, надо разбираться почему тут successfully ))
Цитата: alex312
Как видно, запускаемый таргет обозначен ракетой
Нашел ракету, но сюда ее не вставить - она портит тут сообщение.
Цитата: alex312
а uninstall - зелененький.
А что это за таргет? Почему он зеленый? Может это просто ты забыл в Гит добавить его? (т.к. оно вроде зеленым помечает новые файлы/директории, которые еще не запушены в гит).
«
Последнее редактирование: Декабрь 21, 2020, 16:18 от kuzulis
»
Записан
ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #12 :
Декабрь 21, 2020, 17:32 »
UPD: По поводу "отключенных" узлов в дереве проекта пока сделал их отображение в виде зачеркнутого текста (см. картинку).
Но как-то смотрится не очень.
Может какие-нить "кошерные" юникод символы для таких узлов в конце вставлять?
Типа могилки, крестиков и прочих? )
Типа: ❌ , ✗, † , ✂,
«
Последнее редактирование: Декабрь 21, 2020, 17:42 от kuzulis
»
Записан
ArchLinux x86_64 / Win10 64 bit
alex312
Хакер
Offline
Сообщений: 606
Re: Создаю QBS плагин для VS Code
«
Ответ #13 :
Декабрь 21, 2020, 18:22 »
Цитата: kuzulis от Декабрь 21, 2020, 15:58
Цитата: alex312
Сейчас окошко "outline" отображается строго в файлэксплорере.
А что это за окошко? Моешь заскринить? В СМаке плагине оно есть (где)?
Это окошко
https://code.visualstudio.com/docs/getstarted/userinterface#_outline-view
, и оно отображается в файлвьювере.
А было бы прикольно если бы оно или аналогичное показывалось всесте с деревом проекта.
Записан
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Создаю QBS плагин для VS Code
«
Ответ #14 :
Декабрь 21, 2020, 20:01 »
Цитата: alex312
А было бы прикольно если бы оно или аналогичное показывалось всесте с деревом проекта.
Ахх, ясно.
Тут по ходу можно конечно, но придется пере-реализовывать всю логику:
*
https://code.visualstudio.com/api/references/vscode-api#registerDocumentSymbolProvider
Из плагина 'cpp-tools' (а там не мало, честно сказать):
*
https://github.com/microsoft/vscode-cpptools/blob/main/Extension/src/LanguageServer/Providers/documentSymbolProvider.ts
Может поэтому тоже этой фичи нет и в cmake плагине (по крайней мере у меня нет outline в дереве проекта cmake).
Записан
ArchLinux x86_64 / Win10 64 bit
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...