在长生不老药项目(elixirLS.projectDir)中保存文件时出错



使用Visual Studio Code保存elixir文件时出现以下错误

在项目中找不到混合文件。要使用子目录,请将 在设置中elixirLS.projectDir

因此,我更新了User/settings.json(在窗口中(文件,例如

{
"elixirLS.projectDir": "C:\CodeTraining\Elixir-intro"
}

但我仍然收到错误

知道吗?

顺便说一句,我在使用 Ubuntu 时遇到了同样的错误。

ElixirLS需要mix项目,它不能在普通文件上正常工作。因此,从创建项目开始

mix new intro
cd intro
code .

现在intro文件夹中ElixirLS会很高兴。您仍然可以在那里创建随机的长生不老药文件和/或脚本来玩。

由于我登陆这里寻找这个问题的答案,但对于 Vim,我将分享什么可以修复 Vim 上的错误

该错误是由语言客户端错误地根据打开的第一个文件设置项目根目录引起的。例如,如果您先打开mix.exs,则会将其打印到 Vim 输出:

LanguageClient project root: /Users/joe/Downloads/test

但是,如果您打开其他内容(如lib/test.ex(,您将获得以下内容:

LanguageClient project root: /Users/joe/Downloads/test/lib

因此,为了解决此问题,请将以下内容添加到您的.vimrc

let g:LanguageClient_rootMarkers = {
 'elixir': ['mix.exs'],
 }

或者,如果您使用coc.nvim,请改为将其添加到您的.vimrc

autocmd FileType elixir let b:coc_root_patterns = ['mix.exs']

这将根据mix.exs的位置正确设置项目根目录,以便ElixirLS

最新更新