From 15d041c97cba8ed40b7b1f33844776d65540e614 Mon Sep 17 00:00:00 2001 From: Peter Tripp Date: Fri, 24 Jan 2025 13:30:38 -0500 Subject: [PATCH] Document elm-language-server not supporting linked_edits correctly (#23616) --- docs/src/languages/elm.md | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/docs/src/languages/elm.md b/docs/src/languages/elm.md index ee351f14ee..f1f4047d9e 100644 --- a/docs/src/languages/elm.md +++ b/docs/src/languages/elm.md @@ -5,7 +5,21 @@ Elm support is available through the [Elm extension](https://github.com/zed-exte - Tree Sitter: [elm-tooling/tree-sitter-elm](https://github.com/elm-tooling/tree-sitter-elm) - Language Server: [elm-tooling/elm-language-server](https://github.com/elm-tooling/elm-language-server) -## Setting up `elm-language-server` +## Setup + +Zed support for Elm requires installation of `elm`, `elm-format`, `elm-review` and `elm`. + +1. [Install Elm](https://guide.elm-lang.org/install/elm.html) (or run `brew install elm` on macOS). +2. Install `elm-review` to support code linting: + ```sh + npm install elm-review --save-dev + ``` +3. Install `elm-format` to support automatic formatting + ```sh + npm install -g elm-format + ``` + +## Configuring `elm-language-server` Elm language server can be configured in your `settings.json`, e.g.: @@ -23,8 +37,16 @@ Elm language server can be configured in your `settings.json`, e.g.: } ``` - - `elm-format`, `elm-review` and `elm` need to be installed and made available in the environment or configured in the settings. See the [full list of server settings here](https://github.com/elm-tooling/elm-language-server?tab=readme-ov-file#server-settings). + +## Known Issues + +There is an [upstream issue](https://github.com/elm-tooling/elm-language-server/issues/1311) with `elm-language-server` incorrectly supporting `linked_edits`. It is recommend you disable that feature in your Zed settings.json with: + +``` + "languages": { + "Elm": { + "linked_edits": false + } + } +```