LoginSignup
4
3

More than 3 years have passed since last update.

【ALE】eslint_dを使ってESLintの実行を高速化する

Last updated at Posted at 2019-06-19

やりたいこと

eslint_dを使用して、aleでのESLintの実行を高速化したい。

eslint_dを実行すると、バックグラウンドでサーバプロセスとして常駐し、ESLint実行時のオーバーヘッドを軽減してくれます。

導入

まず、eslint_dをインストールします。

$ npm install eslint_d -g

次にaleをインストールします。
以下はdein.vimを使用した際の設定例です。
on_cmdオプションを使って、指定されたコマンドが実行されるまでaleの読み込みを遅延しています。

dein.toml
[[plugins]]
repo = 'w0rp/ale'
on_cmd = ['ALELint', 'ALEToggle', 'ALEEnable', 'ALEToggleBuffer', 'ALEEnableBuffer']

vimrcにaleからeslint_dを使用するための設定を記述します。

設定例
" eslint_dを利用するための設定
if executable('eslint_d')
  let g:ale_javascript_eslint_use_global = 1
  let g:ale_javascript_eslint_executable = 'eslint_d'
endif

let g:ale_linters_explicit = 1
let g:ale_linters = {
  \   'javascript': ['eslint'],
  \   'typescript': ['tsserver', 'eslint'],
  \   'vue': ['eslint']
  \ }

確認

VimでJavaScriptファイルを開いて、:ALELintコマンドを実行します。

次にターミナルを開いて、以下のコマンドを実行します。

$ eslint_d status

うまく連携ができていれば、Running. One instance cached.のような内容が表示され、aleからeslint_dが実行されていることを確認できます。

eslint_dを停止させる

eslint_dはバックグラウンドで常駐します。
停止させたいときは以下のコマンドを実行します。

$ eslint_d stop

参考

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3