From bc23d1e6661875f62431744613567b1becce68a6 Mon Sep 17 00:00:00 2001 From: Peter Tripp Date: Wed, 9 Oct 2024 14:05:35 -0400 Subject: [PATCH] docs: Add gopls install instructions (#18919) --- docs/src/languages/go.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/docs/src/languages/go.md b/docs/src/languages/go.md index abbaaa258482bad31a7d65ae66ff4330eaac7539..dfd047df68188c7ae3cf328d163c895aca5b8930 100644 --- a/docs/src/languages/go.md +++ b/docs/src/languages/go.md @@ -5,6 +5,37 @@ Go support is available natively in Zed. - Tree Sitter: [tree-sitter/tree-sitter-go](https://github.com/tree-sitter/tree-sitter-go) - Language Server: [golang/tools/tree/master/gopls](https://github.com/golang/tools/tree/master/gopls) +## Setup + +We recommend installing gopls via go's package manager and not via Homebrew or your Linux distribution's package manager. + +1. Make sure you have uninstalled any version of gopls you have installed via your package manager: + +```sh +# MacOS homebrew +brew remove gopls +# Ubuntu +sudo apt-get remove gopls +sudo snap remove gopls +# Arch +sudo pacman -R gopls +``` + +2. Install/Update `gopls` to the latest version using the go module tool: + +```sh +go install golang.org/x/tools/gopls@latest +``` + +3. Ensure that `gopls` is in your path: + +```sh +which gopls +gopls version +``` + +If `gopls` is not found you will likely need to add `export PATH="$PATH:$HOME/go/bin"` to your `.zshrc` / `.bash_profile` + ## Inlay Hints Zed sets the following initialization options for inlay hints: