我该如何使用VIM进行.NET开发

41

Visual Studio是事实上的编辑器,但除了它之外,我们还有哪些选项可以避免沉重的UI,同时又与C#构建链集成呢?

寻找首选直接使用vivim的选项,并且那些模拟vi和/或vim的部分或全部功能的选项。


2
Visual Studio 可能是最好的 IDE,内置了惊人的调试功能。为什么不想使用它呢? - Eric
30
我认为 Tab 完全不想使用集成开发环境,只想用 VIM 。我完全理解他的想法。 - John Weldon
只是想附和 @Eric 的评论...你整个问题似乎都是一个错误...只需使用Visual Studio。向黑暗大师屈服吧! - AgileJon
10
有很多情况下,Visual Studio 环境的开销非常烦人。虽然这可能会很快演变成一场战争 : ) - John Weldon
7
我与黑暗大师8=>5合作,但想要有不同的体验。我想利用一个优秀的编辑器,但不需要所有的辅助功能。你可以将其看作是进入沙漠,确保自己仍然具备在没有任何小帮手帮忙的情况下生存的能力 - 明白了吗? - Tab
8
我经常看到这种来自程序员的评论,他们只想把 Visual Studio 推给人们。这真的很烦人。是的,Visual Studio 很棒,但有时仅仅使用命令行也是不错的选择。 - zeboidlund
6个回答

22

这里是一份关于 Vim C# 编译的指南


针对评论所提出的问题—

听起来你的目标是拥有一个适用于C#跨平台开发的完全功能的IDE,而不一定是使用Vim。如果是这样的话,你可以在所有平台上(包括Windows,但这有点棘手)使用MonoDevelop,而且由于你可能已经在其他平台上使用了mono编译器,这可能是一个更好的选择。


Tab特别想避免使用devenv外壳... - John Weldon
没有太多其他的选择,直接使用VIM。 - Reed Copsey
你仍然需要通过命令行来使用MSBuild... - Reed Copsey
如果你使用C#编写代码,你可以在任何地方使用VS的集成开发环境。另一个选择是使用Monodevelop,因为你可能已经在其他平台上使用Mono进行C#开发了。http://monodevelop.com/ - Reed Copsey
Reed - 这非常有帮助 - 大部分是我在寻找的 - 感谢 John Weldon 的评论。 - Tab
显示剩余4条评论

10

我与该公司没有任何联系,但我听说过关于ViEmu的很多好评。如果价格再低一些,我会自己购买它,因为我喜欢Vim的编辑功能。


2
我之前试用过这个软件(大约6-12个月前)。我对它的表现感到印象深刻,但它没有提供你习惯使用的所有vim命令。在心理上转换为“我正在使用VI编辑,但只有一部分命令”有点令人沮丧。 - Daniel
晚期补充:git-scm带有相当完整的bash和工具,包括vim。我用它来管理我的todo.txt cli,效果非常好。 - Fildor

6

现在有一种名为OpenIDENet的工具,是由ContinuousTests开发的https://github.com/continuoustests/OpenIDE。与AutoTestNet和EditorEngine一起使用,可以为VIM提供无缝的测试驱动开发工具。

EditorEngine为VIM提供了AutoTest功能和命令行交互(例如添加引用、新项目到解决方案等)。

AutoTest通过在保存时编译并监视一个目录来完成大部分工作。它还会在测试失败时反馈。

主页面提供了该工具的视频演示和操作指南。另外,在Windows上,NuGet现在也可以从命令行使用。

需要说明的是,我不是ContinuousTests的员工,也没有收到他们任何金钱或好处的赞助,只是因为他们生产出了很棒的开发软件而感到高兴。


5

MSBuild是Ant的一个非常强大的类比。

使用msbuild项目文件来管理你的.NET项目,并编写一个nmake文件来调用msbuild。

将你的vi make命令映射到nmake。

你可以直接使用:make来进行构建。


1
我可以想象我可以在某个命令级别上调用msbuild并传递.proj(msbuild文件)文件。 - Tab

2

如果你使用的是最新版本的VS,那么解决方案文件可以使用MSBuild构建,这基本上相当于NAnt。

否则,请自行调用csc编译文件。


1

我使用nant作为构建文件(非常简单和灵活),然后调用:set makerpg=nant\ compile.all

然后每当您想要编译时,只需键入:mak

这可以通过自定义错误格式等进行扩展。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接