يحتوي هذا المستودع على طبقات المصدر المفتوح لمحرر Microsoft Visual Studio. ويشمل ذلك جميع تعريفات API العامة وبعض التطبيقات المنخفضة المستوى للمحرر بما في ذلك نموذج النص ، ومنطق النص ، والأنظمة الفرعية للعمليات والعمليات المحرر. هذه الطبقات مخصصة لمؤلفي التمديد للاندماج بشكل أفضل مع المحرر.
من خلال بعض التحذيرات ، فإن الطبقات في هذا المستودع قوة كل من Visual Studio على Windows و Visual Studio لمحرري Mac. على الرغم من أن كلا المحررين مبنيان على قاعدة البيانات هذه ، إلا أن العديد من جوانب المحرر ليست مفتوحة المصدر ، بما في ذلك طبقات WPF و Cocoa UI.
قدم Visual Studio for Mac 8.1 محررًا جديدًا من MacOS Text Macos تم بناؤه على Core "الحقيقي" في Visual Studio Core. أساسي في جهدنا المستمر لجلب فوائد التكافؤ والأداء للمطورين من خلال الاستفادة من ومشاركة المزيد من التعليمات البرمجية مع Visual Studio على Windows ، تم نقل طبقات واجهة المستخدم مباشرة من WPF إلى الكاكاو الحديث.
والجدير بالذكر أن محرر الكاكاو يستخدم النص الأساسي من Apple ، والرسومات الأساسية ، وتقنيات الرسوم المتحركة الأساسية لأداء تخطيط الوضع المحتجز وتقديم النص العالي للنص. من بين تحسينات أخرى وتكامل مع MacOS ، فإنه يدعم الآن جميع طرق إدخال MacOS عبر بروتوكول NSTextInputClient .
حاليًا ، يتعايش المحرر الأصلي الجديد القائم على Visual Studio و Legacy Editor أثناء انتقال جميع خدمات اللغة بعيدًا عن المحرر Legacy. يدعم Visual Studio for Mac C# و XAML (في 8.2 معاينات) حتى الآن ، ولكن سيستمر في تمكين دعم اللغات الأخرى على الإصدارات القادمة. يرجى الرجوع إلى Visual Studio لـ Mac Roadmap للحصول على تفاصيل حول ما هو التالي.
يجب أن يساعد هذا الرسم التخطيطي في تصور طبقات Visual Studio لـ Mac مقارنةً بـ Visual Studio بينما لا يزال محرر Legacy موجودًا لبعض اللغات.
من أجل تسهيل نقل محرر WPF من Windows إلى MacOS ، تم إجراء بعض التغييرات المكسورة لبعض الواجهات ذات المستوى الأدنى. الخطة المستمرة هي التوفيق بين هذه الاختلافات بحيث لا يوجد فرق API على الإطلاق بين محرري WPF و Cocoa.
في الوقت الحالي ، هناك مجموعتان منفصلتان من حزم nuget لاستهداف Visual Studio و Visual Studio لـ MAC ، المتوفرة في الأقسام المعنية أدناه.
على الرغم من أن معظم الواجهات غير المرتبطة بـ UI متطابقة عبر تطبيقات WPF و COCOA للمحرر ، إلا أن العديد منها جديد ولكنه مألوف: عند استهداف الكاكاو ، يمكن العثور على واجهات ICocoa* بشكل عام في واجهات IWpf* مماثلة.
يجب أن تساعد الموارد التالية مؤلفي التمديد على التعرف على واجهات برمجة التطبيقات والقدرات المحرر ، وذات صلة بكل من Visual Studio و Visual Studio لنظام التشغيل Mac.
حزم Nuget وشيك ، ولكن جميع التجميعات متاحة لتمديدات Visual Studio لنظام التشغيل Mac عند استخدام صانع الوظائف الإضافية. يمكن أيضًا إنتاج التجميعات مباشرة من هذا المستودع (انظر بناء API المحرر أدناه).
ارجع إلى توسيع استوديو Visual for Mac للحصول على التفاصيل.
على Windows ، يتوفر API Visual Studio Editor عبر Nuget ويتم تثبيته أيضًا مع عبء عمل Visual Studio Extension.
| حزمة nuget | الإصدار الحالي |
|---|---|
| microsoft.visualstudio.coreutility | |
| Microsoft.visualstudio.text.data | |
| Microsoft.visualstudio.text.logic | |
| microsoft.visualstudio.text.ui |
على الرغم من أن هذا المستودع مخصص إلى حد كبير للرجوع إليه ، إلا أنه يمكن أن ينتج بناءًا قابلاً للتطبيق للمستويات الأدنى للمحرر. إما فتح VSEditorCore.sln في Visual Studio أو Visual Studio لنظام التشغيل Mac وبناء من IDE ، أو بناء على سطر الأوامر.
مطلوب Visual Studio 2019 أو Visual Studio لـ Mac 8.0 أو الأحدث.
ستكون التجميعات متاحة في bin/ الدليل بجذر المستودع.
$ msbuild /restore يمكن أيضًا إنتاج حزم nuget محليًا وستكون متوفرة في _artifacts/nuget/ directory في جذر المستودع.
$ msbuild /t:Packاعتمد هذا المشروع رمز سلوك المصدر المفتوح Microsoft. لمزيد من المعلومات ، راجع مدونة الشهادة الأسئلة الشائعة أو الاتصال بـ [email protected] مع أي أسئلة أو تعليقات إضافية.
نحن عمومًا لا نقبل طلبات السحب لهذا المستودع لرمز المحرر الأساسي في هذا الوقت. لا تتردد في تقديم طلبات سحب للمحتوى الآخر في هذا المستودع ، بما في ذلك العينات الجديدة.