使用Vim作为C#编辑器,面临一些问题

时间:2012-10-05 14:52:42

标签: c# vim

我使用vim作为C#编辑环境时遇到了一些问题和一些问题。首先,我是vim的新手,所以这对我来说都是一个学习过程,我将不胜感激任何您可能提供的建议和指导。其次,我有一些问题需要编译任何cs文件。

我使用它作为我的cs.vim编译器:

 if exists("current_compiler")
  finish
endif
let current_compiler = "cs"

if exists(":CompilerSet") != 2      " older Vim always used :setlocal
  command -nargs=* CompilerSet setlocal <args>
endif

CompilerSet errorformat&
CompilerSet errorformat+=%f(%l\\,%v):\ %t%*[^:]:\ %m,
            \%trror%*[^:]:\ %m,
            \%tarning%*[^:]:\ %m

execute 'CompilerSet makeprg=' . cs#get_net_compiler("csc.exe") . "\\ %

不确定我在哪里找到了这个。但是,如果我在目录名称中包含空格的目录中,则会收到一条错误,指出无法找到该文件进行编译。我想我需要告诉它逃避空间,但我该怎么做?

即使我切换回原来的cs.vim编译器文件,我也会遇到奇怪的问题而且似乎没有编译:

enter image description here

除了可以在vim中使用C#项目并且在编译时它能识别引用等吗?

编辑:为了澄清,我已经使用Visual Studios作为我的主IDE。我想学习更好地使用vim,因此我会问这些问题。

谢谢!

1 个答案:

答案 0 :(得分:3)

就我个人而言,我使用Vim和Visual Studio(安装了VsVim)的组合进行日常C#编码。我使用纯Vim进行更长时间的编辑,因为VsVim虽然很好,但它与生态系统的完整Vim环境不同。没有什么能比Visual Studio进行交互式调试了。

为了获得编译器,我在我的vimrc中使用以下设置,从互联网的某个部分窃取和变换:

set errorformat=\ %#%f(%l\\\,%c):\ %m
set makeprg=C:\\windows\\microsoft.net\\framework\\v4.0.30319\\msbuild.exe\ /nologo\ /v:q\ /property:GenerateFullPaths=true 

请注意,它集成了MSBuild,因此可以使用完整的.sln文件 - 整个构建工作正常,无需查看单个文件。要执行完整构建,您只需运行:make即可。

虽然不是严格要求,但我也喜欢这面旗帜:

set shellcmdflag=\/C

因为它可以确保cmd窗口自行关闭。

相关问题