Skip to content

General features

The nRF Kconfig features the nRF Kconfig GUI, which is a graphical representation of the Kconfig options tree structure. The GUI lists these options and lets you control them directly from VS Code.

nRF Kconfig GUI features

The nRF Kconfig GUI displays a treeview of the Kconfig options that found in the project configuration files (prj.conf and Kconfig fragments) used for the current build configuration and the build configuration's .config file. You can edit and enable or disable these options within the nRF Kconfig GUI.

History navigation

The treeview keeps track of your navigation and provides back and forward arrows to let you revisit previous symbols, searches, and other views as shown in blue in the image below.

Show hidden nodes

Some nodes may not be displayed in the tree. This is usually because their dependency condition is not met, such as a child node that is hidden because the parent node has not been enabled. To toggle the visibility of these nodes, click the Show Hidden Items icon, located on the far right of the nRF Kconfig search bar.

To stop showing hidden nodes, hover your mouse over the icon on the far right again (now called Don't Show Hidden Items) and click on it.

Note

Nodes that are hidden cannot be edited.

nRF Kconfig GUI

Other features

The nRF Kconfig GUI also comes with the following features:

  • Show the parent item of a searched item.
  • Display dependency names for Kconfig options, which include links in the description box that display available information about that dependency.
  • Jump to the search bar using either + Ctrl+L or Ctrl+F.
  • Navigate usage history with either the GUI's arrow buttons to the left of the search bar, or by using the side buttons available on some mouses.
  • Move through the menu's position using the keyboard Up and Down buttons.

Configuration file features

Out of the box, VS Code has syntax highlighting for configuration files. The nRF Kconfig extension adds the following contextual information for the configuration files of boards and shields:

  • Autocompletion based on Kconfig files
  • Hover information
  • Go to definition
  • Syntax checking
  • Linting
    • Typechecking configuration values
    • Range checking
    • Checking for redundant entries
    • Checking for invalid combinations
    • Dependency checking
    • Warning about entries without prompts
  • Code Actions
    • Add missing dependencies
    • Remove redundant entries
    • Use selector entry when trying to set entries without prompts

Status Bar message for project files

Additionally, the nRF Kconfig extension features a Status Bar notification if a project configuration file is not in context (such as a prj.conf file or similar) files are not in context.

If a project configuration file (such as a prj.conf file or similar) is in the active Editor window that does not belong to the active build configuration, then a Status Bar message in orange will warn you that the open configuration file is not part of the active build.

Hover your mouse over the orange warning message, and the following message is shown:

Kconfig: no context warning

C file features

The extension adds symbol information for CONFIG_ defines in C files. Hover info and go to definition is provided for all defines starting with CONFIG_. This feature can be turned off with the kconfig.cfiles configuration entry.