On Fri, 26 Jul 2024 13:42:56 +0100 Anatoly Burakov <anatoly.bura...@intel.com> wrote:
> A lot of developers use Visual Studio Code as their primary IDE. This > script generates a configuration file for VSCode that sets up basic build > tasks, launch tasks, as well as C/C++ code analysis settings that will > take into account compile_commands.json that is automatically generated > by meson. > > Files generated by script: > - .vscode/settings.json: stores variables needed by other files > - .vscode/tasks.json: defines build tasks > - .vscode/launch.json: defines launch tasks > - .vscode/c_cpp_properties.json: defines code analysis settings > > The script uses a combination of globbing and meson file parsing to > discover available apps, examples, and drivers, and generates a > project-wide settings file, so that the user can later switch between > debug/release/etc. configurations while keeping their desired apps, > examples, and drivers, built by meson, and ensuring launch configurations > still work correctly whatever the configuration selected. > > This script uses whiptail as TUI, which is expected to be universally > available as it is shipped by default on most major distributions. > However, the script is also designed to be scriptable and can be run > without user interaction, and have its configuration supplied from > command-line arguments. > > Signed-off-by: Anatoly Burakov <anatoly.bura...@intel.com> The TUI doesn't matter much since I would expect this gets run 100% on Windows. In general looks good, you might want to address $ flake8 ./devtools/gen-vscode-config.py --max-line 100 ./devtools/gen-vscode-config.py:352:47: E741 ambiguous variable name 'l' ./devtools/gen-vscode-config.py:499:16: E713 test for membership should be 'not in' ./devtools/gen-vscode-config.py:546:101: E501 line too long (120 > 100 characters)