Bagikan melalui


Mendukung EditorConfig untuk layanan bahasa Anda

File EditorConfig memungkinkan Anda menjelaskan opsi editor teks umum, seperti ukuran inden, per proyek. Untuk mempelajari selengkapnya tentang dukungan Visual Studio untuk file EditorConfig, lihat Membuat pengaturan editor portabel menggunakan EditorConfig.

Dalam kebanyakan kasus saat Anda menerapkan layanan bahasa Visual Studio, tidak ada pekerjaan tambahan yang diperlukan untuk mendukung properti universal EditorConfig. Editor inti secara otomatis menemukan dan membaca .editorconfig file saat pengguna membuka file, dan mengatur buffer teks dan opsi tampilan yang sesuai. Namun, untuk pengeditan seperti tab dan spasi, beberapa layanan bahasa memilih untuk menggunakan opsi tampilan teks kontekstual yang sesuai daripada menggunakan pengaturan global. Dalam kasus ini, layanan bahasa harus diperbarui untuk mendukung file EditorConfig.

Berikut ini adalah perubahan yang diperlukan untuk memperbarui layanan bahasa untuk mendukung file EditorConfig, dengan mengganti opsi khusus bahasa global dengan opsi kontekstual:

Gaya inden

Opsi khusus bahasa Opsi kontekstual
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.fInsertTabs
Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs
!textBufferOptions.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId)
!textView.Options.GetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionId)

Ukuran inden

Opsi khusus bahasa Opsi kontekstual
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uIndentSize
Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.IndentSize
textBufferOptions.GetOptionValue(DefaultOptions.IndentSizeOptionId)
textView.Options.GetOptionValue(DefaultOptions.IndentSizeOptionId)

Ukuran tab

Opsi khusus bahasa Opsi kontekstual
Microsoft.VisualStudio.TextManager.Interop.LANGPREFERENCES.uTabSize
Microsoft.VisualStudio.Package.LanguagePreferences.InsertTabs.TabSize
textBufferOptions.GetOptionValue(DefaultOptions.TabSizeOptionId)
textView.Options.GetOptionValue(DefaultOptions.TabSizeOptionId)