Skip to content

VS Code Setup

The vscode-deal extension provides DEAL language support in Visual Studio Code:

  • Syntax highlighting for .deal and .dealx files (TextMate grammars, D-41)
  • LSP diagnostics — parse and sema errors underlined in the editor
  • Hover tooltips — type and symbol information
  • Go to Definition
  • Completion suggestions
  1. Open VS Code
  2. Open the Extensions view (Ctrl+Shift+X / Cmd+Shift+X)
  3. Search for DEAL Language
  4. Click Install

For air-gapped environments or specific version pinning:

  1. Go to github.com/deal-lang/vscode-deal/releases
  2. Download the .vsix file for the desired release
  3. In VS Code, open the Extensions view
  4. Click the ... menu at the top-right of the Extensions panel
  5. Select Install from VSIX…
  6. Choose the downloaded .vsix file
Terminal window
# Alternatively, install from the command line:
code --install-extension vscode-deal-0.3.0.vsix

Each release includes a SHA256SUMS file. Verify the .vsix before installing:

Terminal window
shasum -a 256 -c SHA256SUMS

.deal and .dealx files receive full syntax highlighting via the bundled TextMate grammars derived from the DEAL language specification. All language constructs — part def, port def, requirement def, [<system>] tags, @trace: annotations — are highlighted with distinct scopes.

The LSP server (deal-lsp) runs in the background and provides:

  • Parse errors — highlighted in red as you type
  • Sema errors — dimension mismatches (E2500), mixed-unit comparisons (E2501), unresolved imports (E2402)
  • Hover info — type annotation, doc comment, and source span on hover
  • Go to DefinitionF12 or Ctrl+Click on any symbol
  • VS Code 1.85+
  • The deal binary must be installed and on PATH (see Getting Started)
  • deal install must have been run to resolve dependencies before sema features work

Syntax highlighting not working:

Check that the file has a .deal or .dealx extension. Open the Command Palette (Ctrl+Shift+P) and run Developer: Inspect Editor Tokens and Scopes to verify the grammar is active.

LSP diagnostics not appearing:

  1. Check the Output panel (View → Output) and select DEAL Language Server
  2. Ensure the deal binary is on PATH: which deal should print a path
  3. Ensure deal install has been run in the project root

Extension not loading after install:

Reload VS Code (Developer: Reload Window).