Podpora EditorConfig pro vaši jazykovou službu
Soubory EditorConfig umožňují popsat běžné možnosti textového editoru, například velikost odsazení, pro jednotlivé projekty. Další informace o podpoře souborů EditorConfig v sadě Visual Studio najdete v tématu Vytvoření nastavení přenosného editoru pomocí EditorConfig.
Ve většině případů, kdy implementujete službu jazyka sady Visual Studio, není potřeba žádná další práce pro podporu univerzálních vlastností EditorConfig. Základní editor automaticky zjistí a přečte .editorconfig
soubor, když uživatelé otevřou soubory, a nastaví odpovídající textové vyrovnávací paměti a možnosti zobrazení. U úprav, jako jsou karty a mezery, se ale některé jazykové služby rozhodnou místo globálního nastavení použít odpovídající kontextové zobrazení textu. V těchto případech musí být služba jazyka aktualizována tak, aby podporovala soubory EditorConfig.
Následují změny potřebné k aktualizaci jazykové služby pro podporu souborů EditorConfig nahrazením možnosti specifické pro globální jazyk kontextovou možností:
Styl odsazení
Jazykové možnosti | Kontextové možnosti |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.fInsertTabs Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs |
!textBufferOptions.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId) !textView.Options.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId) |
Velikost odsazení
Jazykové možnosti | Kontextové možnosti |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uIndentSize Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.IndentSize |
textBufferOptions.GetOptionValue(DefaultOptions.IndentSizeOptionId) textView.Options.GetOptionValue(DefaultOptions.IndentSizeOptionId) |
Velikost tabulátoru
Jazykové možnosti | Kontextové možnosti |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uTabSize Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.TabSize |
textBufferOptions.GetOptionValue(DefaultOptions.TabSizeOptionId) textView.Options.GetOptionValue(DefaultOptions.TabSizeOptionId) |