内容提要
微软发布了实验性的MSBuild编辑器,帮助开发人员理解项目文件和编辑功能。编辑器提供了丰富的MSBuild文件理解能力,提升编辑体验。目前适用于Visual Studio,正在移植到Visual Studio Code。
延伸解读
谁适合使用新编辑器
新MSBuild编辑器主要面向需要直接编辑项目文件的开发者,例如访问Visual Studio UI未暴露的高级功能、合并源代码管理中的更改,或编写用于本地或NuGet包的targets和props文件。如果你属于这些场景,微软希望获得你的反馈。
超越XML的智能验证
编辑器的验证不仅限于XML语法,还叠加了类型系统,能捕捉格式错误的值(如URL或版本字符串)以及畸形的条件和表达式,无需运行构建即可发现问题。此外,它还提供了一些类似Roslyn的分析器和代码修复。
自定义模式与NuGet集成
编辑器基于新的JSON格式MSBuild模式,内置.NET SDK等常用模式。你可以为自己的MSBuild目标编写模式,提升编辑体验。如果你发布包含构建目标的NuGet包,还可以在包中附带模式文件,为包使用者提供更好的编辑支持。
当前可用性与未来计划
目前编辑器仅适用于Visual Studio,可通过扩展管理器搜索“MSBuild Editor”或从Visual Studio Marketplace下载。作者正在将其移植到LSP,以便未来在Visual Studio Code中使用。该扩展是开源的,欢迎在GitHub上构建、贡献和反馈问题。
Q&A
MSBuild编辑器的主要功能是什么?
MSBuild编辑器帮助开发人员理解项目文件,提供丰富的MSBuild文件理解能力,支持IntelliSense和文档链接,提升编辑体验。
MSBuild编辑器目前支持哪些开发环境?
目前MSBuild编辑器适用于Visual Studio,正在移植到Visual Studio Code。
如何获取MSBuild编辑器的反馈?
用户可以通过GitHub问题页面报告问题,并填写调查问卷提供反馈。
MSBuild编辑器如何帮助捕捉错误?
编辑器的验证超越了XML验证,能够捕捉格式错误的值和表达式,帮助开发人员提前发现问题。
MSBuild编辑器的IntelliSense功能有什么优势?
IntelliSense几乎在文件的所有地方提供文档支持,减少了查阅文档的需要,提升了开发效率。
我可以为自己的MSBuild目标编写自定义模式吗?
可以,用户可以为自己的MSBuild目标编写自定义模式,以提供更丰富的编辑体验。