## Install for Neovim on Windows

### Install prerequisites

Install and configure one of the following Neovim plugins:

- ALE - Asynchronous Lint Engine v2.1.1 or newer, or version v3.0.0 or newer
- coc.nvim - Conquer of Completion v0.0.80 or newer
- nvim-lspconfig (requires Neovim 0.5.0 or newer)

### Install quick-lint-js

1. Download the latest release of quick-lint-js for your platform:

   - Windows (x64)
   - Windows (x86)
   - Windows (ARM64)
   - Windows (ARM)

2. Extract the downloaded archive.

3. Copy the extracted `bin\quick-lint-js.exe` file into a directory in your `PATH`.

   For example, copy it into the `C:\Windows\System32\` directory.

4. Open a PowerShell window or Command Prompt window. Type `quick-lint-js --version` and press enter to verify the installation succeeded.

### Install Neovim plugin

Install this plugin with your favorite Neovim packaging system:

- Neovim package (built into Neovim 0.5.0 and newer)
- dein.vim
- packer.nvim
- Vim-Plug

#### Install as a Neovim package

1. Download the quick-lint-js Neovim plugin.
2. Add `packloadall` to your `%USERPROFILE%\_vimrc` file (or `%USERPROFILE%\vimfiles\vimrc`) if not already present.
3. Create the directory `%USERPROFILE%\vimfiles\pack\external\start\`.
4. Copy the extracted `quick-lint-js.vim` directory into the `%USERPROFILE%\vimfiles\pack\external\start\` directory.
5. Restart Neovim.

#### Install with dein.vim

This option requires dein.vim.

1. Add the following line to your `%LOCALAPPDATA%\nvim\init.vim` file file between `call dein#begin(...)` and `call dein#end()`:

   >     call dein#add('quick-lint/quick-lint-js', {'rtp': 'plugin/vim/quick-lint-js.vim', 'rev': '2.3.0'})

2. Restart Neovim.
3. In Neovim, run `:call dein#install()`.

#### Install with packer.nvim

This option requires packer.nvim.

1. Add the following line to your `%LOCALAPPDATA%\nvim\lua\plugins.lua` file file between `require('packer').startup(function()` and `end)`:

   >     use {'quick-lint/quick-lint-js', rtp = 'plugin/vim/quick-lint-js.vim', tag = '2.3.0', opt = true}

2. Restart Neovim.
3. In Neovim, run `:PackerSync`.

#### Install with Vim-Plug

This option requires Vim-Plug.

1. Add the following line to your `vimrc` file between `call plug#begin(...)` and `call plug#end()`:

   >     Plug 'quick-lint/quick-lint-js', {'rtp': 'plugin/vim/quick-lint-js.vim', 'tag': '2.3.0'}

2. Restart Neovim.
3. In Neovim, run `:PlugInstall`.

### Configure

Configure the Neovim plugin by opening Neovim and running `:help quick-lint-js`, or read the Neovim plugin docs online.

nvim-lspconfig users can add this line to their `init.lua` file:

>     require('lspconfig/quick_lint_js').setup {}