CppInsight – это расширение для Visual Studio Code, предназначенное для анализа C++ кода с помощью Lizard и clang-format. Оно помогает разработчикам поддерживать качество кода, выявлять проблемы стиля и сложности.
📋 Features
Анализ метрик кода: Использует Lizard для расчета метрик:
Проверка на соответствие Google C++ Style Guide: Интеграция с clang-format для автоматической проверки и исправления проблем стиля.
Проверка именования переменных и функций: Поддержка стилей snake_case и camelCase с исключениями для встроенных функций и типов данных.
Подсветка проблем: Подсветка кода с проблемами стиля или метрик.
Очистка Output-панели: Очистка панели перед новым анализом для лучшего восприятия.
🟎️ Screenshots
Анализ кода на метрики
Автоматическое исправление стиля
Подсветка функции с проблемной метрикой
⚙️ Requirements
Установленный Lizard:
pip install lizard
Установленный clang-format (для проверки и исправления стиля кода):
Убедитесь, что clang-format доступен в PATH.
Visual Studio Code версии 1.60.0 или новее.
🛠️ Extension Settings
CppInsight добавляет следующие настройки:
cppinsight.enableAnalysisOnSave(boolean):
Автоматически запускать анализ при сохранении файла. Default: true.
cppinsight.styleFixPrompt(boolean):
Показывать диалоговое окно для исправления стиля автоматически. Default: true.
cppinsight.highlightIssues(boolean):
Включить подсветку проблем в коде. Default: true.
🚀 Usage
Анализ файла C++
Откройте C++ файл в Visual Studio Code.
При сохранении файла (Ctrl+S или Cmd+S) будет автоматически запущен анализ:
Метрики кода с помощью Lizard.
Проверка стиля с помощью clang-format.
Проверка именования переменных и функций.
Результаты анализа отображаются в Output панели:
Исправление стиля вручную
Если были обнаружены проблемы стиля, в Output-панели будет предложено автоматически исправить стиль.
Нажмите "Yes, Fix" в диалоговом окне.
clang-format применит исправления в соответствии с Google C++ Style Guide.
🔍 Known Issues
Lizard может выдавать предупреждения для больших файлов.
Решение: Разделите крупные файлы на более мелкие модули.
Некорректные результаты именования в строковых литералах.
Решение: Обновите расширение до последней версии.
Если возникли другие проблемы, сообщите о них на странице Issues.
🗒️ Release Notes
1.0.0
Добавлена интеграция Lizard для анализа метрик кода.
Встроенная поддержка clang-format для проверки и исправления стиля кода.
Проверка соответствия именования переменных и функций (snake_case и camelCase).
Автоматический анализ при сохранении файлов.
Подсветка проблем и вывод отчетов в Output-панели.
📚 Following Extension Guidelines
Данное расширение разработано с соблюдением рекомендаций для расширений Visual Studio Code.