Гайд VSCode как C++ IDE

SR_team

like pancake
Автор темы
BH Team
4,822
6,526
Сегодня смерджили API clangd, который дает full-доступ к LSP-серверу - будет обновление без модифицированного клиента - перекину все с него на отдельные плагины


UPDATE: Расширения готовы: 1, 2, 3. Но в PR обнаружился баг, ждем исправения в основной ветке


UPDATE: fix, ждем релиза новой версии на маркетплейсах
 
Последнее редактирование:
  • Вау
Реакции: whyega52

SR_team

like pancake
Автор темы
BH Team
4,822
6,526
в виде отдельного расширения можно не ждать?
Можно сделать, но надо будет дефолтный ховер отключать
1739303790279.png



UPD Хотя по идее можно попробовать похукать middleware клиента через API, что бы сделать без отключения
 

nikkymen

Новичок
2
0
Спасибо, очень полезная информация!
Есть ли какое-то решение для запуска таргетов?
У меня большой cmake проект и много таргетов.
Хочется уметь запускать их с различными аргументами.
Расширение cmake не дает возможность запускать их с аргументами, а в launch.json запускается только через gdb/lldb.
Неудобно капец
 

SR_team

like pancake
Автор темы
BH Team
4,822
6,526
Спасибо, очень полезная информация!
Есть ли какое-то решение для запуска таргетов?
У меня большой cmake проект и много таргетов.
Хочется уметь запускать их с различными аргументами.
Расширение cmake не дает возможность запускать их с аргументами, а в launch.json запускается только через gdb/lldb.
Неудобно капец
В VSCode есть встроеная команда для запуска таргетов из launch.json без отладчика (workbench.action.debug.run). Ты так же прописываешь конифиг с отладчиком, а потом просто используешь ее вместо начала отладки
 

nikkymen

Новичок
2
0
В VSCode есть встроеная команда для запуска таргетов из launch.json без отладчика (workbench.action.debug.run). Ты так же прописываешь конифиг с отладчиком, а потом просто используешь ее вместо начала отладки
Если посмотреть на вывод консоли, то видно, что запускается все равно через gdb, просто без брейкпоинтов. Т.е отладочные символы все равно грузятся
 

SR_team

like pancake
Автор темы
BH Team
4,822
6,526
Если посмотреть на вывод консоли, то видно, что запускается все равно через gdb, просто без брейкпоинтов. Т.е отладочные символы все равно грузятся
Можешь cmake аналогичную команду использовать, но она только для cmake проектов и нельзя задать аргументы, рабочую папку и переменные среды

UPD: Из того что начитал по workbench.action.debug.run - оно использует отладчик как лаунчер, но не аттачится к процессу. Сделано, что бы соблюсти все правила описаные в launch.json, т.к. там могут быть поля специфичные для отладчика. Думаю для запуска на локальной машине можно поискать расширения с дебагером-заглушкой, который будет юзать launch.json просто как конфиг для запуска. Но для кейсов с деплоем, например apk, такое вряд ли есть. Так что встроенное решение в VSCode наверно самое нормальное в этом плане
 
Последнее редактирование: