* ОБНОВЛЕНИЕ *
Ниже моего первоначального вопроса, но я узнал больше о VS Code Extensions.
Просмотр расширения OmniSharp C# выглядит идеально Я мог бы добавить некоторый стандартный код до и после текста в редакторе кода VS перед проверкой. Я искал хуки, где это можно сделать, например, перед _validateOpenDocuments () в DiagnicsProvider.ts. Элементы диагностики должны быть изменены, чтобы иметь правильную позицию в коде редактора, вычитая вставленный постоянный код.
Не уверен, что кто-нибудь, знакомый с работой OmniSharp, может дать мне несколько советов по поводу идеи выше.
Спасибо, Энрике
У меня есть приложение (работает нормально, написано в C#), которое использует код C# в качестве языка сценариев для создания чертежей. У него есть собственный редактор кода, но я хотел бы использовать превосходный VS Code в качестве внешнего интерфейса.
Ниже приведен очень простой действительный скрипт:
NoLoop = true;
MP.SetBackgroundColor(72, 60, 0);
MP.SetPen(1, 3, 255, 255, 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), 0.0, 0.0, 2.0, 2.0);
The OmniSharp C# расширение прекрасно работает, и я хотел бы расширить его, чтобы оно лучше соответствовало моим потребностям.
1) Когда вы пишете скрипт в моем приложении, вам не нужно писать пространство имен C#, класс и метод обертки, добавляется автоматически. Расширение C# жалуется на «Тип или определение пространства имен или ожидаемый конец файла ...» в первой строке.
2) Моя оболочка также предопределяет некоторые элементы, такие как «bool NoL oop = ложный;" и "List result = new List ();" в примере. Расширение C#, очевидно, не знает этого и не распознает этих участников. Хотелось бы добавить поддержку IntelliSense для них.
3) Моя оболочка включает в себя другие пространства имен, которые делают доступными другие классы и методы, такие как "MP.Sheet (...)" и "MP.Center (...) в примере. Также хотел бы добавить поддержку IntelliSense.
Мой вопрос: есть ли способ установить расширение OmniSharp C# и затем добавить к нему с помощью вышеуказанных функций, или мне нужно изменить код расширения OmniSharp C# и создать свой собственный форк?
Если я могу просто добавить функциональность, есть ли какие-либо советы по каждому из 3 изменений выше?
Заранее благодарен за любую помощь в этом, я новичок в VS Расширения кода.