Skip to content

nmk vscode plugin

David Pochet edited this page Sep 26, 2022 · 4 revisions

This page list the contributed items by the nmk-vscode plugin.

Config

Here are the configuration items defined by the nmk-vscode plugin.

Name Type Default value Usage
vscodeFolder str "${PROJECTDIR}/.vscode" Folder for VSCode files
vscodeSettings str "${vscodeFolder}/settings.json" VSCode settings file
vscodeSettingsFiles List[str] [] List of VSCode settings files to be merged
vscodeSettingsItems Dict[str,str] {} Dict of VSCode settings items to be merged
vscodeLaunch str "${vscodeFolder}/launch.json" VSCode launch configurations file
vscodeLaunchFiles List[str] [] List of VSCode launch config files to be merged
vscodeTasks str "${vscodeFolder}/tasks.json" VSCode tasks file
vscodeTasksFiles List[str] [] List of additional tasks files to be merged
vscodeNmkTaskTemplate str "${BASEDIR}/templates/nmk-tasks.json.jinja" Template for tasks using the nmk command
vscodeNmkTasks dict Definition for build, clean, setup and tests tasks Definition for tasks using the nmk command
vscodeDefaultBuildTask str build Name of default build task (the one triggered with Ctrl+Shift+B)
vscodeExtensions str "${vscodeFolder}/extensions.json" VSCode recommended extensions file
vscodeExtensionsNames List[str] [] List of extensions names to be recommended

Tasks

Setup tasks

All the following tasks are declared as setup task dependencies.

vs.settings

This task is used to generate the ${vscodeSettings} file, by merging settings coming from ${vscodeSettingsFiles} and ${vscodeSettingsItems} variables.

vs.launch

This task is used to generate the ${vscodeLaunch} file, by merging launch configurations coming from ${vscodeLaunchFiles} variable.

vs.tasks

This task is used to generate the ${vscodeTasks} file, by:

  • generating nmk command tasks from ${vscodeNmkTasks} dict and ${vscodeNmkTaskTemplate} template; dict definition:
    • keys are the nmk command names
    • values are also a dict, with following properties:
      • group: group for the command (typically build, test, ...); default is "build"
      • runOn: to be set to "folderOpen" if the command shall be executed on VS Code folder open; default is "default"
  • merging additional files from ${vscodeTasksFiles} list.

vs.extensions

This task is used to generate the ${vscodeExtensions} file, from the recommended extensions names in ${vscodeExtensionsNames} variable.