Настройка плагина Vim / Neovim ALE для поддержки: ALEGoToDefinition в JavaScript файлах - PullRequest
1 голос
/ 13 апреля 2020

Я установил плагин ALE для Vim с помощью vim-plug:

Plug 'dense-analysis/ale'

Плагин, похоже, установлен правильно. Например, я могу использовать ALE для автоматического форматирования файлов с помощью Prettier. Но я не могу получить ничего, что использует языковой сервер для работы.

Например, в следующем файле JavaScript, наведя курсор на имя add в строке 5 и используя * Команда 1009 * не имеет никакого эффекта.

function add(x, y) {
  return x + y;
}

console.log(add(1, 2));

Я действительно попытался прочитать документацию. Файл справки ALE говорит, что «ALE ничего не будет делать», если сервер LSP не предоставляет место для перехода. Это, кажется, моя проблема. Но в документации ALE на GitHub также говорится, что «ALE очень хорошо интегрируется почти со всеми JavaScript инструментами, и большинство вещей должно работать без какой-либо настройки».

Я должен что-то упустить , Помимо установки ALE, нужно ли что-нибудь для включения функций, использующих языковой сервер? Должен ли я установить какой-либо языковой сервер глобально на моем компьютере?

1 Ответ

1 голос
/ 21 апреля 2020

Пользователь toupeira на Reddit ответил на этот вопрос для меня . На момент написания этой статьи единственным языковым сервером JavaScript, который поддерживает ALE, был tsserver. Он поставляется с TypeScript. Чтобы включить функции языкового сервера ALE, мне нужно было глобально установить машинопись.

npm install -g typescript

Мне не нужно запускать сервер вручную. ALE, похоже, позаботится об этом.

Единственное другое требование - это включение tsserver в качестве JavaScript "линтера". Это по умолчанию. Запустите :AleInfo, чтобы увидеть, какие линтеры включены для текущего файла.

...