該存儲庫包含Microsoft Visual Studio編輯器的開源層。這包括所有公共API定義以及編輯器的某些低級實現,包括文本模型,文本邏輯和編輯器原始和操作子系統。這些層旨在使擴展作者更好地與編輯器集成。
有了一些警告,此存儲庫功率的層次都在Windows上的Visual Studio和Mac編輯器的Visual Studio。儘管兩個編輯器都是在此代碼庫上構建的,但編輯器的許多方面都不是開源的,包括WPF和可可UI層。
Mac 8.1的Visual Studio引入了建立在“真實” Visual Studio Editor Core的全新本機MacOS文本編輯器。通過利用和與Windows上的Visual Studio共享更多代碼為開發人員帶來平價和性能優勢的努力,UI層直接從WPF移植到現代可可。
最值得注意的是,可可編輯器使用蘋果的核心文本,核心圖形和核心動畫技術來執行文本的保留模式佈局和高保真渲染。除了與MACOS集成的其他增強功能和集成,它現在通過NSTextInputClient協議支持所有MACOS輸入方法。
當前,基於Visual Studio和Legacy Editor的新本機編輯器共存,而我們將所有語言服務都從傳統編輯器轉移。到目前為止,Mac的Visual Studio支持C#和XAML(以8.2的預覽),但將繼續在即將到來的版本中支持其他語言。有關下一步的詳細信息,請參閱Visual Studio以獲取MAC路線圖。
該圖應有助於可視化MAC與Visual Studio相比的Visual Studio分層,而傳統編輯器仍然存在某些語言。
為了促進將WPF編輯器從Windows到MACOS的移植,已經對一些低級接口進行了一些破壞的更改。持續的計劃是調和這些差異,以使WPF和可可編輯之間沒有任何API差異。
然而,目前,有兩組Nuget軟件包,用於針對Mac的Visual Studio和Visual Studio,可在以下各個部分中提供。
儘管大多數非UI相關的接口在編輯器的WPF和可可實現之間都是相同的,但許多界面是新的但又熟悉的:當靶向可可時, ICocoa*接口通常可以代替類似的IWpf*接口。
以下資源應有助於擴展作者熟悉編輯器API和功能,並且與Mac的Visual Studio和Visual Studio都相關。
Nuget軟件包即將到來,但是使用加載程序MAKER時,所有組件均可用於Mac的Visual Studio的擴展。組件也可以直接從該存儲庫中產生(請參閱下面的編輯器API)。
有關詳細信息,請參閱MAC文檔的擴展視覺工作室。
在Windows上,可通過Nuget獲得Visual Studio編輯器API,並且還安裝了Visual Studio擴展開發工作負載。
| Nuget軟件包 | 當前版本 |
|---|---|
| Microsoft.VisualStudio.Coreutility | |
| microsoft.visualstudio.text.data | |
| Microsoft.visualstudio.text.logic | |
| microsoft.visualstudio.text.ui |
儘管該存儲庫主要供參考,但它可以生成編輯器較低級別的可行構建。在Visual Studio中打開VSEditorCore.sln或Mac的Visual Studio中的vseditor.sln並從IDE構建,或在命令行上構建。
需要Visual Studio 2019或Mac 8.0的Visual Studio或更新的Visual Studio。
組件將在存儲庫根的bin/目錄中可用。
$ msbuild /restoreNuget軟件包也可以在本地生產,並且可以在存儲庫根的_artifacts/nuget/ Directory中可用。
$ msbuild /t:Pack該項目採用了Microsoft開源的行為代碼。有關更多信息,請參見《行為守則常見問題守則》或與其他問題或評論聯繫[email protected]。
通常,我們目前不接受此存儲庫的拉動請求。請隨時提交此存儲庫中其他內容的拉取請求,包括新樣本。