A Language Server Protocol (LSP) implementation for Devicetree source files (.dts/.dtsi) based on Devicetree Specification v0.4. Current stable version is 0.9.3, with frequent releases addressing bugs and adding features. Provides IDE features like go-to-definition, hover, formatting, diagnostics, semantic tokens, and Zephyr DT macro support. Supports Zephyr and Linux devicetree bindings, and integrates with multiple editors (VS Code, Neovim, Helix, kakoune). Differentiator: dedicated DTS LSP with deep understanding of devicetree semantics, unlike generic XML-based tools.
npm install devicetree-language-serverVerified import paths — ran on the pinned version, not inferred.
Shows how to install and run the language server globally, then connect to it via stdio LSP.
Install globally with -g flag or use npx.
Review completion behavior if upgrading from pre-0.9.0.
Update configuration: use 'sortNodesBy: address' instead of 'sortNodesByAddress: true'.
Ensure Node.js version is 16 or later.
Run 'npm install -g devicetree-language-server' or use 'npx devicetree-language-server'.
Upgrade to v0.8.3 or later.
Ensure each context in the configuration has 'dtsFile' property set.
No dependency data recorded yet.