Compartilhar via


Suporte ao EditorConfig para seu serviço de idioma

Os arquivos EditorConfig permitem que você descreva opções comuns do editor de texto, como tamanho de 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, quando você implementa um serviço de linguagem do Visual Studio, nenhum trabalho adicional é necessário para dar suporte às propriedades universais do EditorConfig. O editor principal descobre e lê automaticamente o .editorconfig arquivo quando os usuários abrem arquivos e define as opções de buffer de texto e exibição apropriadas. No entanto, para edições como guias e espaços, alguns serviços de idioma optam por usar uma opção de exibição de texto contextual apropriada em vez de usar configurações globais. Nesses casos, o serviço de idioma deve ser atualizado para dar suporte aos arquivos EditorConfig.

A seguir estão as alterações necessárias para atualizar um serviço de idioma para dar suporte aos arquivos EditorConfig, substituindo uma opção global específica do idioma por uma opção contextual :

Estilo de recuo

Opções específicas do idioma 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 do idioma 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 do idioma Opções contextuais
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uTabSize
Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.TabSize
textBufferOptions.GetOptionValue(DefaultOptions.TabSizeOptionId)
textView.Options.GetOptionValue(DefaultOptions.TabSizeOptionId)