Neovimをさまざまな言語サーバーに接続するための、すぐに使えるLanguage Server Protocol設定集。
dense-analysis/ale
入力中に非同期でコードをlintし、prettierやeslintなどのfixerを実行できる、Vim/Neovim用プラグイン兼LSPクライアントです。
- スター
- 14,025
- フォーク
- 1,487
- 未解決の Issue
- 591
- 最終コミット
- 18 日前
これは何?
ALE(Asynchronous Lint Engine)は、編集中のテキストファイルの構文エラーや意味上のエラーをチェックする、Neovim 0.7+およびVim 8.2+向けのプラグインです。バッファの内容を対象にバックグラウンドでlintを実行するため、ファイルを保存する前に問題を確認でき、チェック中もエディタの応答性が保たれます。
lintに加えて、:ALEFixコマンドからprettier、eslint、autopep8などのコマンドラインフォーマッタやfixerをノンブロッキングで実行できます。また、Language Server Protocolクライアントとして、診断、定義ジャンプ、参照検索、ホバー、シンボル検索、リネーム、コードアクションを提供し、組み込み補完やnvim-cmp/Deopleteによる補完にも対応します。
ALEはVim scriptで書かれており、外部の実行時依存関係はありません。LSP関連のコードは必要なときだけ読み込まれます。一般的なプラグインマネージャーからインストールできるほか、Vimのパッケージディレクトリにcloneして導入することもできます。
主な機能
- 01入力中にバッファの内容を非同期でlintする
- 02prettierやeslintなどのコマンドラインツールで、:ALEFixからファイルを修正する
- 03LSPクライアントとして診断、定義ジャンプ、参照検索を提供する
- 04ホバー、シンボル検索、リネーム、コードアクションを提供する
- 05外部依存関係なしでVim 8.2+とNeovim 0.7+の両方で動作する
ユースケース
- ファイルを保存する前にVimまたはNeovimでlintエラーを確認する
- prettierやautopep8を使って、JavaScriptやPythonのファイルを保存時に自動フォーマットする
- ターミナルベースのエディタ環境で定義ジャンプなどのLSP機能を利用する
クイックスタート
- 1
Vimのパッケージディレクトリを作成する
mkdir -p ~/.vim/pack/git-plugins/start - 2
ALEをパッケージディレクトリにクローンする
git clone --depth 1 https://github.com/dense-analysis/ale.git ~/.vim/pack/git-plugins/start/ale
使う前に知っておきたいこと
- Vim 8.2以降またはNeovim 0.7以降が必要です。
- ALEで使用する前に、linterとfixerを個別にインストールする必要があります。
収録されている特集
トピック
よくある質問
- ale とは?
- 入力中に非同期でコードをlintし、prettierやeslintなどのfixerを実行できる、Vim/Neovim用プラグイン兼LSPクライアントです。 ALE(Asynchronous Lint Engine)は、編集中のテキストファイルの構文エラーや意味上のエラーをチェックする、Neovim 0.7+およびVim 8.2+向けのプラグインです。バッファの内容を対象にバックグラウンドでlintを実行するため、ファイルを保存する前に問題を確認でき、チェック中もエディタの応答性が保たれます。
- ale は無料で使えますか?ライセンスは?
- ale は BSD-2-Clause ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ale は今もメンテナンスされていますか?
- 活発にメンテナンス中。ale の最終コミットは 2026年10月20日 です。
- ale は何に使えますか?
- ファイルを保存する前にVimまたはNeovimでlintエラーを確認する prettierやautopep8を使って、JavaScriptやPythonのファイルを保存時に自動フォーマットする ターミナルベースのエディタ環境で定義ジャンプなどのLSP機能を利用する
- ale のインストール方法は?
- Vimのパッケージディレクトリを作成する: mkdir -p ~/.vim/pack/git-plugins/start ALEをパッケージディレクトリにクローンする: git clone --depth 1 https://github.com/dense-analysis/ale.git ~/.vim/pack/git-plugins/start/ale
- ale はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/dense-analysis/ale
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Vimのモード、Gitの状態、ファイル情報、カーソル位置を表示する、軽量で拡張性の高いステータスライン/タブラインプラグイン。
pyflakesで検出した未使用のimportや変数をPythonコードから削除するコマンドラインツール。
複数行の呼び出し、リテラル、定義に末尾のカンマを自動追加するPythonツール兼pre-commitフック。
ブラウザーやデスクトップで動作するIDEや開発者向けツールを構築するための、TypeScript製オープンソースフレームワーク。
Emacs向けのLanguage Server Protocolクライアント。IDEのような補完、診断、コードナビゲーション、リファクタリング機能を追加します。