Aracılığıyla paylaş


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> altında bulunan çeşitli genel metin düzenleyicisi ayarlarından önceliklidir[C# | C/C++ | Visual Basic]>Kod Stili. 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. Daha fazla bilgi için bkz. EditorConfig dosyası eklemenin yolları.

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. Kod Temizleme veya Belgeyi Biçimlendir komutlarını çalıştırmadığınız sürece mevcut kodun biçimlendirmesi değiştirilmez. Daha fazla bilgi için bkz. Kod stillerini uygulama.

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.

Uyarı

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:

  • girinti_stili (indent_style)
  • girinti_boyu
  • sekme_genişliği
  • satır_sonu
  • karakter kümesi
  • sondaki_boşluğu_kırp
  • 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 (DüzenleGelişmiş Biçim Belgesi'ni seçtiğinizde veya CtrlK, CtrlD tuşlarına bastığınızda), EditorConfig dosyasındaki beyaz boşluk ayarları mevcut 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 açık kod dosyalarını kapatıp yeniden açmanız gerekir.

EditorConfig dosyası eklemenin yolları

Projenize EditorConfig dosyası eklemenin birkaç yolu vardır:

  • Kod stili ayarlarınıza göre otomatik olarak bir EditorConfig dosyası oluşturun.

  • EditorConfig dosyasını el ile ekleyin.

  • Visual Studio'da IntelliCode'u kullanarak çözümünüzde bir dosyası oluşturun. Çözüm Gezgini'ne sağ tıklayın ve bağlam menüsünden Ekle seçeneğini seçip > seçeneğine tıklayın. 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 ayarlardan EditorConfig oluşturma

EditorConfig dosyanızı el ile doldurabilir veya Visual Studio Seçenekleri iletişim kutusunda seçtiğiniz kod stili ayarlarına göre dosyayı otomatik olarak oluşturabilirsiniz. Bu seçenekler sayfası , Araçlar>Seçenekler>Metin Düzenleyicisi> [C# | C/C++ | Visual Basic] >Kod Stili>Genel sayfasında bulunabilir. Bu Seçenekleri sayfasındaki ayarlara göre otomatik olarak bir kodlama stili .editorconfig dosyası oluşturmak için ayarlar .editorconfig dosyası oluştur'a tıklayın.

Ayarlardan editorconfig dosyası oluştur'un ekran görüntüsü.

EditorConfig dosyanızı el ile doldurabilir veya Visual Studio Seçenekleri iletişim kutusunda seçtiğiniz kod stili ayarlarına göre dosyayı otomatik olarak oluşturabilirsiniz. Bu seçenekler sayfası, Araçları>Seçenekleri>Metin Düzenleyicisi> [C# veya Temel] >Kod Stili>Genelsayfasında sağlanır. Bu Seçenekleri sayfasındaki ayarlara göre otomatik olarak bir kodlama stili .editorconfig dosyası oluşturmak için ayarlar .editorconfig dosyası oluştur'a tıklayın.

Ayarlardan editorconfig dosyası oluştur'un ekran görüntüsü.

Projeye EditorConfig dosyası ekleme

Projenize veya çözümünüze EditorConfig dosyası eklemek için şu adımları izleyin:

  1. 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.

  2. Menüden Proje>Yeni Öğeler Ekle'yi seçin ya da Ctrl+Shift+A'ya basın.

    Yeni Öğe Ekle iletişim kutusu açılır.

  3. Arama kutusuna editorconfig yazın.

    Arama sonuçlarında iki editorconfig Dosya öğesi şablonu gösterilir.

    Visual Studio'da EditorConfig dosya öğesi şablonlarını gösteren ekran görüntüsü.

  4. 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.

    Çözüm Gezgini ve düzenleyicide .editorconfig dosyasını gösteren ekran görüntüsü.

  5. İsteğe bağlı olarak dosyayı düzenleyin ve kaydedin.

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.

    EditorConfig hiyerarşisini gösteren ekran görüntüsü.

  • 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 root=true dosyaya ekleyin.editorconfig.

    # 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:

EditorConfig dosyasında IntelliSense'i gösteren ekran görüntüsü.

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.

EditorConfig Language Service uzantısıyla IntelliSense'i gösteren ekran görüntüsü.

Örnek

Aşağıdaki örnekte projeye EditorConfig dosyası eklemeden önce ve sonra C# kod parçacığının girinti durumu gösterilmektedir:

  1. Araçlar>Seçenekler iletişim kutusunda, Visual Studio metin düzenleyicisinde Metin Düzenleyici>C#>Sekmeler ayarlarını, Sekme tuşuna bastığınızda dört boşluk karakteri üretecek şekilde ayarlayın.

    Metin Düzenleyicisi sekme ayarını gösteren ekran görüntüsü.

  2. 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.

    Kodda boşluk ekleme Sekme tuşunu gösteren ekran görüntüsü.

    Kodda boşluk ekleme Sekme tuşunu gösteren ekran görüntüsü.

  3. Sekmeler ayarını sekmeleri kullanacak şekilde değiştirmek için EditorConfig kullanın.

    EditorConfig dosyasında Sekmeleri Kullan'ı seçin.

    Sekme tuşu için sekme kullanımını yapılandırmayı gösteren ekran görüntüsü.

    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
    
  4. Sekme tuşuna bastığınızda artık boşluklar yerine sekme karakterleri görüntülenir.

    Koda sekme karakterleri ekleyen Sekme tuşunu gösteren ekran görüntüsü.

    Koda sekme karakterleri ekleyen Sekme tuşunu gösteren ekran görüntüsü.

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çlarSeçenekleri>>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:

  1. Visual Studio için EditorConfig desteğini kapatmak için, Araçlar'daSeçenekler'e>Metin Düzenleyici'ye gidin ve > seçeneğinin işaretini kaldırın.

    Proje kodlama kurallarını takip et ayarını gösteren ekran görüntüsü.

  2. 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
    
  3. EditorConfig kurallarınızın kapsamını denetlemek için dosyadaki root=true özelliğini deponuzun kökünde veya projenizin bulunduğu dizinde ayarlayın.editorconfig.

    Visual Studio, açılan dosyanın dizininde ve her üst dizinde adlı .editorconfig bir dosya arar. Arama, kök dosya yoluna ulaşıldığında veya adlı dosyası bulunduğunda sona erer.