我刚刚通过全新安装成功地使用了omnisharp / ale。您可能希望完全卸载omnisharp (~\AppData\Local\omnisharp-vim
或~/.omnisharp
),以防万一您有旧版本。
你没有提到你的操作系统;我在 Windows 10 和 Mac OS 中都可以使用。如果您使用的是 Mac OS,请确保您brew install libuv
首先。
我的环境
- Windows 10 (v1903) 和 Mac OS 10.14.6
- Vim 8.1.2244
- dotnet core 3.1 - 我希望 3.0 也能正常工作
指示
首先,我使用vim-plug作为我的插件管理器来处理安装。我使用 vim-plug 的自述文件中的 bash/powershell 片段将它安装在 Windows 和 Mac OS 中。
然后我将以下内容添加到我的 vimrc (~\_vimrc
在 Windows 上,~/.vimrc
在 Mac OS 上):
"vim-plug config
call plug#begin()
Plug 'OmniSharp/omnisharp-vim'
Plug 'dense-analysis/ale'
call plug#end()
" plugin config
let g:OmniSharp_server_stdio = 1
重新启动 vim,然后运行:PlugInstall
. 它会为你克隆omnisharp和ale。
接下来,找到一些 C# 解决方案,并确保该解决方案在命令行中构建(例如dotnet build
,应该完成且没有错误)。如果您还没有 SLN 文件(dotnet new sln
然后dotnet sln add MyProj.csproj
) ,您还需要一个 SLN 文件
选择一个 C# 文件并在 vim 中打开它。您应该看到以下通知:
如果安装没有自动启动,您可以使用:OmniSharpInstall
. 安装需要在终端窗口中下载一两分钟。安装完成后,重新打开vim并执行:cd \path\to\my\solution
,确保vim里面的工作目录是正确的。然后用例如打开一个文件:e MyProj\Program.cs
。
服务器将自动启动;不要手动启动它。在服务器启动的前几秒钟我收到很多语法错误,之后我没有任何错误。
要启动自动完成功能,请输入类似Console.
then hit 的内容Ctrl-x o:
上面的屏幕截图底部栏有vim-airline ——这不是omnisharp的一部分,也不是必需的。
上面的截图是 Windows,但它在 Mac OS 中也可以正常工作:
我的完整 vimrc可在此处获得,我正在测试的源代码可在此处获得。