使用Vim作为C#编辑器,面临一些问题
我有几个问题,还有几个问题是如何使用vim作为C#编辑环境。首先,我是vim的新手,所以这对我来说是一个学习过程,我非常感谢您提供的任何建议和指导。其次,我在编译任何cs文件时遇到了一些问题 我将其用作我的cs.vim编译器:使用Vim作为C#编辑器,面临一些问题,c#,vim,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 :
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”
如果存在(“:编译器集”)!=始终使用2“旧Vim:设置本地
命令-nargs=*编译器集setlocal
恩迪夫
编译器集错误格式&
编译器集errorformat+=%f(%l\\,%v):\%t%*[^:::::\%m,
\%trror%*[^::::\%m,
\%计息%*[^:::\%m
执行“CompilerSet makeprg=”.cs#get#u net_compiler(“csc.exe”)。“\\%
不知道我在哪里找到的。但是,如果我在一个目录中,目录名中有空格,我会得到一个错误,无法找到要编译的文件。我想我需要告诉它逃离空间,但我该怎么做
即使我切换回原来的cs.vim编译器文件,我也会遇到奇怪的问题,它似乎无法编译:
除此之外,是否可以在vim中使用C#项目,并在编译时让它识别引用等
编辑:为了澄清,我使用了Visual Studio作为我的主要IDE。我想学习更好地使用vim,因此我提出了以下问题
谢谢 就我个人而言,我使用Vim和Visual Studio的组合(安装了VsVim)进行日常C#编码。我使用纯Vim进行更长时间的编辑,因为VsVim虽然很好,但它与完整的Vim环境及其生态系统不一样。在交互式调试方面,没有什么比VisualStudio更好的了 为了获得编译器,我在我的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
窗口自动关闭。作为多年的VIM用户,您将返回VS。请看下面的帖子:@Allov谢谢您的链接。本页上有一些关于尝试在vim中使用不同语言的建议,这是一种更好的支持方式,我可能会选择这种方式,只使用VS作为我的C#/.net编辑器。我知道这对你的问题没有帮助,但是。。。如果您不知道,VsVim()是一个非常棒的vim编辑器,可以在VisualStudio中使用。它有很多Vim功能(当然不是全部),作为一个长期使用Vim的用户,我很高兴在VS@ngm中使用它,这实际上激发了我对Vim的兴趣。我唯一的问题是,我太拘泥于我的方式,我对VsVim感到恼火,并将其关闭。我想,如果我完全沉浸在Vim中,我将被迫学习它,当我回去时,VsVim将更加方便。这包括项目参考吗?例如,我想我试着只用编译器CS编译一个项目,结果得到了引用错误。我还发现:这似乎帮了大忙。我仍然很难完全过渡到Vim。只要在.sln
文件中配置了引用(就像Visual Studio所做的那样),它们就可以完美地工作。我通常在VisualStudio中执行类似管理的操作(例如添加引用、添加文件、创建项目),并从Vim中编写尽可能多的代码。