*更新*
下面是我的原始问题,但我已经了解了有关VS Code Extensions的更多信息。
理想情况下,浏览OmniSharp C#扩展似乎可以在验证之前在VS Code编辑器中的文本前后添加一些固定代码。我一直在寻找可以执行此操作的钩子,例如,在diagnosticsProvider.ts中的_validateOpenDocuments()之前。诊断项目必须修改为在编辑器代码中的正确位置,然后减去插入的固定代码。
不确定是否熟悉OmniSharp的工作原理的人可以给我一些有关上述想法的提示。
谢谢, 恩里克
我有一个应用程序(工作正常,用C#编写),使用C#代码作为其脚本语言来生成图形。它有自己的代码编辑器,但我想使用出色的VS Code作为前端。
以下是一个非常简单的有效脚本:
NoLoop = true;
MP.SetBackgroundColor(72,60,0);
MP.SetPen(1,3,255,64);
List<MathPoint> grid = MP.Sheet(200,100,200,0.0,0.0);
result = MP.Center(MP.Transform(grid,xS:+1.0,yS:-1.0,zR:+0.0),2.0,2.0);
OmniSharp C#扩展程序很好用,我想对其进行扩展,使其更适合我的需求。
1)当您在我的应用程序中编写脚本时,不必编写C#名称空间,类和方法包装器,它会自动添加。 C#扩展名在第一行中抱怨“类型或名称空间定义,或文件末尾..”。
2)我的包装器还预定义了一些成员,例如“ bool NoLoop = false;”。和“ List
3)我的包装器包含其他使其他类和方法可用的名称空间,例如示例中的“ MP.Sheet(...)”和“ MP.Center(...)”。还希望添加IntelliSense支持。
我的问题:是否可以安装OmniSharp C#扩展名,然后使用上述功能添加到其中,还是必须修改OmniSharp C#扩展名代码并创建自己的fork?
如果我只能添加功能,那么上述三个更改中的每一个都有任何提示吗?
预先感谢您的帮助,我是VS Code Extensions的新手。