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

  • Kod Temizleme.

    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:

  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 Öğe Ekle'yi seçin veya Ctrl+Shift A tuşlarına+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.

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.

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

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

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

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

    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 .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 ile root=true bir .editorconfig dosya bulunduğunda sona erer.