Elixir
ElixirのサポートはElixir拡張機能を利用できます。
言語サーバーの選択
Elixir拡張機能はelixir-ls、next-ls、およびlexicalに言語サーバーサポートを提供しています。
elixir-lsは初期設定で有効になっています。
next-lsに切り替えるには、settings.jsonに以下を追加します。
{
"languages": {
"Elixir": {
"language_servers": ["next-ls", "!elixir-ls", "..."]
}
}
}
lexicalに切り替えるには、settings.jsonに以下を追加します。
{
"languages": {
"Elixir": {
"language_servers": ["lexical", "!elixir-ls", "..."]
}
}
}
elixir-lsの設定
elixirをインストールします。
brew install elixir
elixir-lsをインストールします。
brew install elixir-ls
- Zedを再起動します。
elixirプロジェクトで
elixir-lsが実行されていない場合は、コマンドパレットアクションzed: open logでエラーログを確認します。次のようなエラーメッセージが表示される場合は、Hexをインストールする必要があります。コマンドラインからelixir-lsを実行し、プロンプトに従ってHexをインストールします。
Mixによるフォーマット
Mixでコードをフォーマットする場合は、settings.jsonファイルで次のスニペットを使用して外部フォーマッターとして構成します。ファイルが保存されるとフォーマットされます。
{
"languages": {
"Elixir": {
"format_on_save": {
"external": {
"command": "mix",
"arguments": ["format", "--stdin-filename", "{buffer_path}", "-"]
}
}
}
}
}
追加のワークスペース設定オプション(Zed0.128.0が必要です)
settings.jsonのlsp設定でelixir-lsワークスペースの追加設定オプションを渡すことができます。
次の例ではdialyzerを無効にします。
"lsp": {
"elixir-ls": {
"settings": {
"dialyzerEnabled": false
}
}
}
ElixirLSの設定で他のオプションを確認してください。