EditorConfig ile tutarlı kodlama stilleri tanımlama
Kod tabanında çalışan herkes için tutarlı kodlama stilleri uygulamak için çözümünüze veya projenize bir .editorConfig
dosya ekleyebilirsiniz. EditorConfig dosya ayarları, EditorConfig.org tarafından tutulan bir dosya biçimi belirtimine bağlıdır. Birçok kod düzenleyicisi ve uygulaması Visual Studio dahil olmak üzere EditorConfig dosyalarını destekler. Ayarlar bir dosyada olduğundan, bunlar kodunuzla birlikte ve Visual Studio dışında bile kullanılabilir.
Visual Studio'da EditorConfig dosya ayarları, Araçlar>Seçenekleri>Metin Düzenleyicisi>C/C++>Kod Stili altında bulunan çeşitli genel metin düzenleyicisi ayarlarından önceliklidir. Her kod tabanını bu projeye özgü metin düzenleyicisi ayarlarını kullanacak şekilde uyarlamak için bir EditorConfig dosyası kullanabilirsiniz.
EditorConfig dosyasını el ile doldurabilir veya Visual Studio'da seçtiğiniz kod stili ayarlarına göre otomatik olarak oluşturabilirsiniz. Geçerli Visual Studio ayarlarınıza göre yeni .editorconfig
bir dosya oluşturmak için, Visual Studio ana menüsünden Araçlar>Seçenekler>Metin Düzenleyicisi>C/C++>Genel'i seçin. Ardından ayarlardan .editorconfig dosyası oluştur'u seçin. Projenizin bulunduğu klasörü seçin ve ardından dosyayı kaydetmek için Klasör Seç'i .editorconfig
seçin.
EditorConfig dosyası kullandığınızda, Visual Studio metin düzenleyicisinde kendi kişisel düzenleyici tercihlerinizi ayarlamaya devam edebilirsiniz. Bu metin düzenleyicisi ayarları, EditorConfig dosyası olmadan bir kod tabanında çalışırken veya EditorConfig dosyası belirli bir ayarı geçersiz kılmadığında uygulanır. Bu tür bir tercihe örnek olarak, kod girintisi stili için sekmelerin mi yoksa boşlukların mı kullanılacağı gösterilir.
Visual Studio'da projenize bir EditorConfig dosyası eklediğinizde, EditorConfig ayarlarına göre yalnızca yeni kod satırları biçimlendirilir. Aşağıdaki komutlardan birini çalıştırmadığınız sürece mevcut kodun biçimlendirmesi değiştirilmez:
-
Visual Studio düzenleyicisinde Kod Temizleme'yi seçin veya Ctrl K, Ctrl++E tuşlarına basın. Bu komut, girinti stili gibi boşluk ayarlarına ve parantez tercihleri gibi seçili kod stili ayarlarına uygulanır.
Belgeyi Biçimlendir'i seçin.
Gelişmiş>Biçim Belgesini Düzenle'yi>seçin veya varsayılan profilde Ctrl+K, Ctrl+D tuşlarına basın. Bu komut yalnızca girinti stili gibi boşluk ayarlarına uygulanır.
Not
Bu makale, Windows için Visual Studio için geçerlidir. Mac için Visual Studio için bkz. Mac için Visual Studio'de özel EditorConfig dosyası oluşturma ve düzenleme.
Kod tutarlılığı
EditorConfig dosya ayarları, kullandığınız düzenleyiciden veya IDE'ye bakılmaksızın bir kod tabanında tutarlı kodlama stilleri ve kuralları korumanıza olanak sağlar. Denetleyebileceğiniz bazı kodlama stilleri girinti stili, sekme genişliği, satır sonu karakterleri ve kodlamadır. Örneğin, C# kod tabanınızda girintilerin beş boşluk karakteri kullandığı bir kural varsa, belgeler UTF-8 kodlaması kullanıyorsa ve satırlar CR/LF ile bitiyorsa, editorconfig dosyasını bu kuralı kullanacak şekilde yapılandırabilirsiniz.
EditorConfig dosyaları, kişisel projelerinizde kullandığınız kodlama kuralları ekibinizin projelerinde kullanılan kurallardan farklı olduğunda kullanışlıdır. Örneğin, girintinin kodunuzda bir sekme karakteri eklemesini tercih edebilirsiniz. Ancak, ekibiniz girintinin bunun yerine dört alan eklemesini tercih edebilir. EditorConfig dosyaları, her senaryo için bir yapılandırmaya sahip olmanıza izin vererek bu sorunu çözer.
Codebase'deki bir .editorconfig
dosya EditorConfig ayarlarını içerdiğinden, bu kod tabanıyla birlikte hareket ederler. Kod dosyasını EditorConfig uyumlu bir düzenleyicide açtığınız sürece metin düzenleyicisi ayarları etkinleştirilir.
Not
EditorConfig dosyasında ayarladığınız kurallar, ci/CD işlem hattında derleme hataları veya uyarılar olarak uygulanamaz. Tüm stil sapmaları yalnızca Visual Studio düzenleyicisinde ve Hata Listesinde görünür.
Desteklenen ayarlar
Visual Studio'daki düzenleyici, EditorConfig özelliklerinin çekirdek kümesini destekler:
- indent_style
- indent_size
- tab_width
- end_of_line
- karakter kümesi
- trim_trailing_whitespace
- insert_final_newline
- kök
EditorConfig, XML desteği EditorConfig düzenleyici ayarları dışında Visual Studio tarafından desteklenen tüm dilleri destekler.
EditorConfig, C# ve Visual Basic için dil, biçimlendirme ve adlandırma kuralları dahil olmak üzere kod stili kurallarını destekler.
EditorConfig dosyalarını ekleme ve kaldırma
Projenize veya kod tabanınıza bir EditorConfig dosyası eklediğinizde, Visual Studio yazdığınız tüm yeni kod satırlarını EditorConfig dosya ayarlarına göre biçimlendirer. Ancak, siz belgeyi biçimlendirene veya Kod Temizleme'yi çalıştırmadan Visual Studio var olan stilleri yeni stillere dönüştürmez. Örneğin, dosyanızdaki girintiler sekmelerle biçimlendirilirse ve girintileri boşluklarla biçimlendiren bir EditorConfig dosyası eklerseniz, girinti karakterleri otomatik olarak boşluklara dönüştürülemez. Belgeyi biçimlendirdiğinizde (Gelişmiş>Biçim Belgesini Düzenle'yi>seçtiğinizde veya Ctrl+K, Ctrl+D tuşlarına bastığınızda), EditorConfig dosyasındaki boşluk ayarları var olan kod satırlarına uygulanır.
Bir EditorConfig dosyasını projenizden veya kod tabanınızdan kaldırırsanız, genel düzenleyici ayarlarının yeni kod satırlarını etkilemesi için tüm açık kod dosyalarını kapatıp yeniden açmanız gerekir.
Projeye EditorConfig dosyası ekleme
Projenize veya çözümünüze EditorConfig dosyası eklemek için şu adımları izleyin:
Visual Studio'da bir proje veya çözüm açın. EditorConfig ayarlarınızın çözümdeki tüm projelere mi yoksa yalnızca bir projeye mi uygulanacağına bağlı olarak çözümü veya proje düğümünü seçin. Dosyayı eklemek
.editorconfig
için projenizde veya çözümünüzde bir klasör de seçebilirsiniz.Menüden Proje>Yeni Öğe Ekle'yi seçin veya Ctrl+Shift A tuşlarına+basın.
Yeni Öğe Ekle iletişim kutusu açılır.
Arama kutusuna editorconfig yazın.
Arama sonuçlarında iki editorconfig Dosya öğesi şablonu gösterilir.
Boş alan, kod stili ve adlandırma kuralları için varsayılan EditorConfig seçenekleriyle önceden doldurulmuş bir EditorConfig dosyası eklemek için editorconfig Dosya (boş) şablonunu seçin. Alternatif olarak, varsayılan .NET boşluk, kod stili ve adlandırma kurallarıyla önceden doldurulmuş bir EditorConfig dosyası eklemek için editorconfig Dosyası (.NET) şablonunu seçin.
Çözüm Gezgini'da yeni
.editorconfig
bir dosya görünür ve düzenleyicide yeni bir sekme olarak açılır.İsteğe bağlı olarak dosyayı düzenleyin ve kaydedin.
EditorConfig dosyası eklemenin diğer yolları
Projenize EditorConfig dosyası eklemenin birkaç yolu daha vardır:
Çözümünüzde bir
.editorconfig
dosya oluşturmak için Visual Studio için IntelliCode kullanın. Çözüm Gezgini sağ tıklayın ve bağlam menüsünden Yeni EditorConfig (IntelliCode) Ekle'yi>seçin. Visual Studio için IntelliCode, mevcut koddan kod stillerinizi çıkarsar ve kod stili tercihlerinizin önceden tanımlanmış olduğu bir EditorConfig dosyası oluşturur.Kod stili ayarlarınıza göre otomatik olarak bir EditorConfig dosyası oluşturun.
Dosya hiyerarşisi ve öncelik
Dosya hiyerarşinizdeki bir klasöre dosya .editorconfig
eklediğinizde, bu dosyanın ayarları bu düzeydeki ve daha düşük tüm geçerli dosyalara uygulanır. Ayrıca, kod tabanının diğer bölümlerinden farklı kurallar kullanması için belirli bir proje, kod tabanı veya bir kod tabanının parçası için EditorConfig ayarlarını geçersiz kılabilirsiniz. Bunu yapmak, kodu başka bir yerden dahil ettiğinizde ve kurallarını değiştirmek istemediğinizde yararlı olabilir.
Şu yönergeleri izleyin:
EditorConfig ayarlarının bazılarını veya tümünü geçersiz kılmak için, geçersiz kılınan ayarların uygulanmasını istediğiniz dosya hiyerarşisi düzeyinde bir
.editorconfig
dosya ekleyin. Yeni EditorConfig dosya ayarları aynı düzeydeki dosyalara ve herhangi bir alt dizindeki dosyalara uygulanır.Ayarların tümünü değil bazılarını geçersiz kılmak istiyorsanız, dosyada
.editorconfig
yalnızca bu ayarları belirtin. Yalnızca alt düzey.editorconfig
dosyada açıkça listelediğiniz özellikler geçersiz kılınabilir. Üst düzey.editorconfig
dosyalara ait diğer ayarlar uygulanmaya devam eder.Kod tabanının bu bölümüne üst düzey
.editorconfig
dosyalardan hiçbir ayarın uygulanmadığından emin olmak istiyorsanız, özelliğini alt düzey.editorconfig
dosyaya ekleyinroot=true
.# top-most EditorConfig file for this level root = true
EditorConfig dosyaları yukarıdan aşağıya okunur. Aynı ada sahip birden çok özellik varsa, aynı ada sahip en son bulunan özellik önceliklidir.
EditorConfig dosyalarını düzenleme
Visual Studio 2022, EditorConfig dosyaları için bir görsel düzenleyici sağlar.
EditorConfig dosyanızı düzenledikten sonra, yeni ayarların etkili olması için kod dosyalarınızı yeniden yüklemeniz gerekir.
Visual Studio, IntelliSense tamamlama listeleri sağlayarak EditorConfig dosyalarını düzenlemenize yardımcı olur. Örneğin:
Birçok EditorConfig dosyasını düzenlerseniz EditorConfig Dil Hizmeti uzantısını yararlı bulabilirsiniz. Bu uzantının özelliklerinden bazıları söz dizimi vurgulama, geliştirilmiş IntelliSense, doğrulama ve kod biçimlendirmedir.
Örnek
Aşağıdaki örnekte projeye EditorConfig dosyası eklemeden önce ve sonra C# kod parçacığının girinti durumu gösterilmektedir:
Araçlar>Seçenekleri iletişim kutusunda, Visual Studio metin düzenleyicisinin Metin Düzenleyicisi>C#>Sekmeleri ayarlarını, Sekme tuşuna bastığınızda dört boşluk karakteri üretecek şekilde ayarlayın.
Beklendiği gibi, bir sonraki satırda Sekme tuşuna bastığınızda, dört boşluk karakteri ekleyerek satır girintisini artırır.
Sekmeler ayarını sekmeleri kullanacak şekilde değiştirmek için EditorConfig kullanın.
EditorConfig dosyasında Sekmeleri Kullan'ı seçin.
Aşağıdaki içeriklerle projeye adlı
.editorconfig
yeni bir dosya ekleyin. Gösterge,[*.cs]
bu değişikliğin yalnızca projedeki C# kod dosyaları için geçerli olduğu anlamına gelir.# Top-most EditorConfig file root = true # Tab indentation [*.cs] indent_style = tab
Sekme tuşuna bastığınızda artık boşluklar yerine sekme karakterleri görüntülenir.
EditorConfig ayarlarında sorun giderme
Bir EditorConfig dosyası projenizin konumunda veya üzerinde dizin yapısında herhangi bir yerde bulunuyorsa, Visual Studio bu dosyadaki düzenleyici ayarlarını düzenleyicinize uygular. Bu durumda, durum çubuğunda aşağıdaki iletiyi görebilirsiniz:
User preferences for this file type are overridden by this project's coding conventions.
Başka bir deyişle, Araçlar>Seçenekleri>Metin Düzenleyicisi'ndeki herhangi bir düzenleyici ayarı (girinti boyutu ve stili, sekme boyutu veya kodlama kuralları gibi) dizin yapısında projenin üzerindeki veya üzerindeki bir EditorConfig dosyasında belirtilirse, EditorConfig dosyasındaki kurallar Metin Düzenleyicisi'ndeki ayarları geçersiz kılar.
EditorConfig sorunlarını gidermek için şu adımları izleyin:
Visual Studio için EditorConfig desteğini kapatmak için Araçlar>Seçenekleri>Metin Düzenleyicisi'ndeki Proje kodlama kurallarını takip et seçeneğini temizleyin.
Projenizin üst dizinlerindeki EditorConfig dosyalarını bulmak için bir komut istemi açın ve projenizi içeren diskin kökünden aşağıdaki komutu çalıştırın.
dir .editorconfig /s
EditorConfig kurallarınızın kapsamını denetlemek için dosyadaki
.editorconfig
özelliğini deponuzun kökünde veya projenizin bulunduğu dizinde ayarlayınroot=true
.Visual Studio, açılan dosyanın dizininde ve her üst dizinde adlı
.editorconfig
bir dosya arar. Arama, kök dosya yolu ulaştığında veya ileroot=true
bir.editorconfig
dosya bulunduğunda sona erer.