aiken/crates/aiken-lsp
KtorZ c21466831c
Bump versions to 1.1.0, in anticipation.
2024-08-29 09:12:37 +02:00
..
src Adjust module organization to facilitate resurrection of the playground. 2024-08-29 09:12:37 +02:00
Cargo.toml Bump versions to 1.1.0, in anticipation. 2024-08-29 09:12:37 +02:00
README.md Present aiken-lsp & fill-in CHANGELOG 2023-10-21 21:39:30 +02:00

README.md

Aiken Language Server Protocol (LSP)

The aiken command-line comes built-in with a Language Server implementing (part of) the Language Server Protocol.

Getting Started

General

Regardless of your IDE, you'll likely need the following information to configure your language client:

  • command: aiken lsp

    Note The command is hidden from the command-line help usage

  • root pattern: aiken.toml

  • filetype: aiken (.ak)

VsCode

Simply install the VSCode Aiken extension from the official marketplace.

NeoVim

If you're using NeoVim and using nvim-lspconfig then there's almost nothing to do as Aiken is directly supported. Simply follow the official instructions

Supported Capabilities

  • Document syncing and on-the-fly compilation
  • Document formatting (akin to aiken fmt)
  • Go-to definition
  • Type annotation on hover
  • Code actions providing quickfixes for a variety of errors:
    • aiken::check::unknown::variable
    • aiken::check::unknown::type
    • aiken::check::unknown::type_constructor
    • aiken::check::unknown::module