ladybird/Documentation/HelixConfiguration.md

923 B

Helix Configuration

Helix comes with support for clangd and clang-format out of the box! However, a small bit of configuration is needed for it to work correctly with SerenityOS.

The following .clangd should be placed in the project root:

CompileFlags:
  CompilationDatabase: Build/x86_64 # Or whatever architecture you're targeting, e.g. aarch64
  Add: [-D__serenity__]

Diagnostics:
  UnusedIncludes: None
  MissingIncludes: None

You also need to configure the clangd server to detect headers properly from the Serenity toolchain. To do this, create a .helix/languages.toml file in the project root:

[language-server.serenity]
command = "clangd"
args = ["--query-driver=/path/to/serenity/Toolchain/Local/**/*", "--header-insertion=never"]

[[language]]
name = "cpp"
language-servers = ["serenity"]

Make sure to replace /path/to/serenity with the actual path in the snippet above!