Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>DarkLispNew to Visual Studio Code? Get it now.
DarkLisp

DarkLisp

Dark Peak Development

| (0) | Free
Language and debugging support for DarkLisp.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

DarkLisp for Visual Studio Code

This extension registers DarkLisp .dl and template .dlhtml files, bundles the DarkLisp language server, and enables breakpoints for emitted portable PDBs.

Requirements

  • Visual Studio Code 1.95 or later.
  • The .NET 10 SDK available through dotnet on PATH.
  • The Microsoft C# extension, or another extension providing the coreclr debug type, when debugging DarkLisp projects or tests.

Install a packaged extension

Build the VSIX from the repository:

cd extensions/vscode
npm install
npm run package

Install the generated package and restart or reload VS Code:

code --install-extension darklisp-0.9.0.vsix

To replace an existing installation with a newly built package, add --force. The VSIX contains the extension bundle and a framework-dependent build of the language server; no separate language-server installation is required.

Use the language server

Open a folder or workspace containing a .dlproj, then open a .dl file. The extension activates, launches its bundled language server with dotnet, and connects to it over the Language Server Protocol. Language features and diagnostics use the containing DarkLisp project and its module references.

The language server provides diagnostics, completion, hover, signature help, definitions, references, rename, document and workspace symbols, semantic tokens, and formatting for .dl files. Use the normal VS Code commands for these features, such as Go to Definition, Find All References, Rename Symbol, and Format Document.

Use the REPL

Open DarkLisp REPL in the Explorer or run DarkLisp: Open REPL. The REPL uses the selected .dlproj build context and offers to build the project when that context is stale or missing. Workspaces with multiple projects show an explicit project picker; use DarkLisp: Select REPL Project to switch later.

Enter submits a balanced form, Shift+Enter adds a line, and Up/Down at the input boundaries navigates command history. The view provides reset and cancellation controls and renders values, diagnostics, and runtime failures in its transcript. Selecting a submitted diagnostic returns to its originating editor form.

Run DarkLisp: Send Selection or Form to REPL or press Ctrl+Alt+Enter (Cmd+Alt+Enter on macOS) to submit the current selection. With no selection, the command submits the top-level form containing the cursor.

Hovering a documented callable shows its typed DarkLisp signature, summary, parameter descriptions, return description, remarks, examples, exceptions, and related declarations. Write the summary string and optional doc form directly after the function name:

(defn increment
	"Adds one to a value."
	(doc
		(param value "The value to increment.")
		(returns "The incremented value."))
	[value: Int32]
	Int32
	(+ value 1))

For language-server development, build the server and point VS Code at the result:

dotnet build ../../src/DarkLisp.LanguageServer/DarkLisp.LanguageServer.csproj

Set darklisp.languageServer.path to the absolute path of src/DarkLisp.LanguageServer/bin/Debug/net10.0/darklisp-language-server.dll, then run Developer: Reload Window. Clear the setting to return to the server bundled in the VSIX.

If the language server does not start, verify that dotnet --version reports a .NET 10 SDK, that the opened workspace contains a .dlproj, and that the configured development DLL exists. Language-client messages are available in the Output panel under DarkLisp Language Server.

Tests and debugging

Template files receive HTML-aware DarkLisp syntax highlighting.

The Test Explorer discovers embedded and parameterized DarkLisp tests from the same compiler snapshot used for diagnostics. Run and debug profiles delegate to the generated Microsoft Testing Platform application with its stable test ID. Test items identify same-module versus external-module tests, and Go to Assertion navigates to each bound assertion in the selected test.

Run DarkLisp: Debug DarkLisp Project to choose a .dlproj, build it, and launch its generated assembly through the installed CoreCLR debugger. The command requires the .NET 10 SDK and a VS Code extension that provides the coreclr debug type.

Set darklisp.languageServer.path to use a development language-server DLL in place of the bundled server. Set darklisp.debug.configuration to choose the Debug or Release output used by the debug command.

Run npm test to build the extension, publish its language server, build the fixture project, and execute the extension-host integration suite.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft