Gopls: Использование Sublime Text
Используйте пакет LSP. После установки с помощью Package Control, выполните следующие действия:
- Откройте Command Palette
- Найдите и выполните команду LSP: Enable Language Server Globally
- Выберите элемент gopls. Будьте осторожны, чтобы не выбрать похожий по названию golsp.
В завершение, рекомендуется ознакомиться с Настройками и Связями клавиш пакета LSP. Найти их можно в меню Preferences > Package Settings > LSP.
Примеры
Минимальные глобальные настройки LSP, предполагающие, что gopls и go доступны в PATH, видимом для Sublime Text:
<code>{
"clients": {
"gopls": {
"enabled": true,
}
}
}
</code>
Глобальные настройки LSP, которые указывают конкретный PATH для поиска gopls и go, а также некоторые настройки самого Sublime LSP:
<code>{
"clients": {
"gopls": {
"enabled": true,
"env": {
"PATH": "/path/to/your/go/bin",
}
}
},
// Рекомендовано на https://agniva.me/gopls/2021/01/02/setting-up-gopls-sublime.html
// за исключением log_stderr, который больше не распознаётся.
"show_references_in_quick_panel": true,
"log_debug": true,
// Эти два параметра рекомендованы LSP-json как замена устаревшего only_show_lsp_completions
"inhibit_snippet_completions": true,
"inhibit_word_completions": true,
}
</code>
Настройки LSP и gopls также можно изменять на уровне отдельных проектов для переопределения глобальных настроек.
<code>{
"folders": [
{
"path": "/path/to/a/folder/one"
},
{
// Если вы работаете непосредственно над Go, это может быть полезно; go-dev/bin должен быть в PATH.
"path": "/path/to/your/go-dev/src/cmd"
}
],
"settings": {
"LSP": {
"gopls": {
// Чтобы использовать определённую версию gopls с Sublime Text LSP (например, чтобы опробовать новые функции в разработке)
"command": [
"/path/to/your/go/bin/gopls"
],
"env": {
"PATH": "/path/to/your/go-dev/bin:/path/to/your/go/bin",
"GOPATH": "",
},
"settings": {
"experimentalWorkspaceModule": true
}
}
},
// Это будет применяться ко всем языкам в этом проекте, у которых есть
// серверы LSP, а не только к Go, однако невозможно включить только для Go.
"lsp_format_on_save": true,
}
}
</code>
Обычно изменения этих настроек распознаются после сохранения файла проекта, но иногда может потребоваться либо перезапуск сервера(ов) (Tools > LSP > Restart Servers), либо выход и перезапуск Sublime Text.
Исходные файлы для этой документации можно найти по адресу golang.org/x/tools/gopls/doc.