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

Clean

TOP Software Technology

|
4,677 installs
| (2) | Free
Visual Studio Code extension for the functional programming language Clean
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Clean for Visual Studio Code

vsmarketplacebadge-version vsmarketplacebadge-downloads

This extension provides support for the functional programming language Clean in Visual Studio Code. It currently provides the following features:

  • Syntax highlighting
  • Integration of Eastwood, the language server for Clean
  • Integration of Cloogle, the search engine for Clean
  • Easy switching between .icl and .dcl files (see #Commands).
  • Automatic insertion of block comment syntax and indents.

Requirements

This extension requires eastwood-cls to be installed using nitrile.

After installing nitrile itself, you can install Eastwood using nitrile global install eastwood. This command also ensures eastwood-cls is on your path.

If you are using the standard devcontainer, Eastwood is installed automatically.

Setup (for usage)

The package is available on the VSCode Extension Marketplace: Clean for Visual Studio Code.

The recommended way of developing Clean programs is using a devcontainer.

A template project is provided including an iTasks project with minimal configuration.

Setup (for development)

This requires TypeScript and VSC to be installed. On Debian the former can be installed with:

apt install npm
npm install -g typescript

For the latter installation instructions are available on the Debian Wiki.

To run the extension do:

git clone https://gitlab.com/top-software/clean-vs-code.git
cd clean-vs-code
npm install
code .

In the editor that opens, press F5 to compile and run the extension in a new Extension Development Host window. In that window, you can run the "Developer: Reload Window" command (from the command palette, Ctrl-Shift-P) to reload the extension after you have made changes.

The following links may be helpful if you're new to VS Code extensions:

  • https://code.visualstudio.com/api/get-started/your-first-extension
  • https://code.visualstudio.com/api/language-extensions/language-server-extension-guide

Usage

Diagnostics for Clean source files can only be provided if a directory with a Clean project file Eastwood.yml is opened.

To inspect LSP communication while developing Eastwood, run Developer: Set Log Level... and set the Eastwood (trace) output channel to Trace. Then set eastwood-cls.trace.server to verbose to include message payloads, or to messages to omit them. The messages appear in the Eastwood (trace) output channel.

Commands

This extension provides the following commands:

  • Clean: Search Cloogle (Ctrl + Shift + C): Search Cloogle directly from your IDE.
  • Clean: Switch between .icl and .dcl (Ctrl + Alt + \): Switch between a definition module and the corresponding implementation module.
  • Clean: Restart Eastwood: Stop and then restart Eastwood.
  • Clean: Start Eastwood: Start Eastwood if it is not already running.
  • Clean: Stop Eastwood: Stop Eastwood if it is running.
  • Clean: Manage Eastwood: Quick actions related to (re)starting, stopping and debugging Eastwood.

Release Notes

See the Change Log.

Copyright & License

Eastwood for Visual Studio Code is copyright © 2021 TOP Software Technology B.V.

This extension is licensed under GPL v3.0. For details, see the LICENSE file.

An exception exists for syntaxes/clean.tmLanguage.json which originates from the CleanForVSCode and is therefore licensed under the same copyright and the same license of that project (MIT License, Copyright (c) 2021 Lucas Franceschino).

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