1use zed_extension_api::{self as zed, Result};
2
3struct ErlangExtension;
4
5impl zed::Extension for ErlangExtension {
6 fn new() -> Self {
7 Self
8 }
9
10 fn language_server_command(
11 &mut self,
12 _config: zed::LanguageServerConfig,
13 worktree: &zed::Worktree,
14 ) -> Result<zed::Command> {
15 let path = worktree
16 .which("erlang_ls")
17 .ok_or_else(|| "erlang_ls must be installed and available on your $PATH".to_string())?;
18
19 Ok(zed::Command {
20 command: path,
21 args: Vec::new(),
22 env: Default::default(),
23 })
24 }
25}
26
27zed::register_extension!(ErlangExtension);