Soporte de EditorConfig para su servicio de idiomas
Los archivos EditorConfig le permiten describir opciones comunes para editar el texto, como el tamaño de sangría por proyecto. Para obtener más información sobre la compatibilidad de Visual Studio con los archivos EditorConfig, consulte Creación de una configuración de editor portátil con EditorConfig.
En la mayoría de los casos, cuando se implementa un servicio de lenguaje de Visual Studio, no es necesario llevar a cabo ninguna tarea adicional para admitir las propiedades universales de EditorConfig. El editor principal detecta automáticamente y lee el archivo .editorconfig
cuando los usuarios abren archivos, y establece el búfer de texto y las opciones de visualización adecuados. A pesar de ello, para modificaciones como pestañas y espacios, algunos servicios de lenguaje optan por usar una opción de visualización de texto contextual adecuada en vez de usar la configuración global. En estos casos, el servicio de lenguaje debe actualizarse para que admita archivos EditorConfig.
A continuación se muestran los cambios necesarios para actualizar un servicio de lenguaje a fin de admitir los archivos EditorConfig. Para ello, se debe reemplazar una opción global específica del lenguaje por una opción contextual:
Estilo de sangría
Opciones específicas del lenguaje | Opciones contextuales |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.fInsertTabs Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs |
!textBufferOptions.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId) !textView.Options.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId) |
Tamaño de sangría
Opciones específicas del lenguaje | Opciones contextuales |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uIndentSize Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.IndentSize |
textBufferOptions.GetOptionValue(DefaultOptions.IndentSizeOptionId) textView.Options.GetOptionValue(DefaultOptions.IndentSizeOptionId) |
Tamaño de tabulación
Opciones específicas del lenguaje | Opciones contextuales |
---|---|
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uTabSize Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.TabSize |
textBufferOptions.GetOptionValue(DefaultOptions.TabSizeOptionId) textView.Options.GetOptionValue(DefaultOptions.TabSizeOptionId) |