31 releases

1.0.26-alpha Mar 26, 2024
1.0.24-alpha Jan 31, 2024
1.0.21-alpha Dec 5, 2023
1.0.20-alpha Oct 25, 2023
0.0.26 Nov 23, 2022

#2690 in Magic Beans


Used in aiken

Apache-2.0

2MB
49K SLoC

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

Dependencies

~35–54MB
~1M SLoC