Suporte ao EditorConfig para o serviço de linguagem
Os arquivos EditorConfig permitem descrever opções de editor de texto comuns, como tamanho do recuo, por projeto. Para saber mais sobre o suporte do Visual Studio para arquivos EditorConfig, consulte Criar configurações de editor portátil usando EditorConfig.
Na maioria dos casos, ao implementar um serviço de linguagem do Visual Studio, nenhum trabalho adicional é necessário para dar suporte às propriedades universais do EditorConfig. O editor básico detecta automaticamente e lê o arquivo .editorconfig
quando os usuários abrem arquivos e define as opções de buffer e exibição de texto apropriadas. No entanto, para edições como tabulações e espaços, alguns serviços de idiomas optam por usar uma opção de visualização de texto contextual apropriada em vez de usar configurações globais. Nesses casos, o serviço de linguagem deve ser atualizado para dar suporte aos arquivos do EditorConfig.
A seguir estão as alterações necessárias para atualizar um serviço de linguagem para dar suporte a arquivos de EditorConfig, através da substituição de uma opção global específica a um idioma por uma opção contextual:
Estilo de recuo
Opções específicas da linguagem | Opções contextuais |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.fInsertTabs Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs |
!textBufferOptions.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId) !textView.Options.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId) |
Tamanho do recuo
Opções específicas da linguagem | Opções contextuais |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uIndentSize Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.IndentSize |
textBufferOptions.GetOptionValue(DefaultOptions.IndentSizeOptionId) textView.Options.GetOptionValue(DefaultOptions.IndentSizeOptionId) |
Tamanho da tabulação
Opções específicas da linguagem | Opções contextuais |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uTabSize Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.TabSize |
textBufferOptions.GetOptionValue(DefaultOptions.TabSizeOptionId) textView.Options.GetOptionValue(DefaultOptions.TabSizeOptionId) |