Bagikan melalui


Menentukan gaya pengkodean yang konsisten dengan EditorConfig

Untuk menerapkan gaya pengkodean yang konsisten untuk semua orang yang bekerja dalam basis kode, Anda dapat menambahkan file .editorconfig ke solusi atau proyek Anda. Pengaturan file EditorConfig mematuhi spesifikasi format file yang dikelola oleh EditorConfig.org. Banyak editor kode dan aplikasi mendukung file EditorConfig, termasuk Visual Studio. Karena pengaturan berada dalam file, pengaturan tersebut menyertai kode Anda, dan dapat digunakan bahkan di luar Visual Studio.

Di Visual Studio, pengaturan file EditorConfig lebih diutamakan daripada berbagai pengaturan editor teks global yang tersedia di bawah Alat>Opsi>Editor> Teks[C# | C/C++ | Visual Basic]>Gaya Kode. Anda dapat menggunakan file EditorConfig untuk menyesuaikan setiap basis kode untuk menggunakan pengaturan editor teks yang khusus untuk proyek tersebut.

Anda dapat mengisi file EditorConfig secara manual, atau secara otomatis membuatnya berdasarkan pengaturan gaya kode yang telah Anda pilih di Visual Studio. Untuk informasi selengkapnya, lihat Cara menambahkan file EditorConfig.

Saat menggunakan file EditorConfig, Anda masih dapat terus mengatur preferensi editor pribadi Anda sendiri di editor teks Visual Studio. Pengaturan editor teks ini berlaku setiap kali Anda bekerja di basis kode tanpa file EditorConfig, atau ketika file EditorConfig tidak mengambil alih pengaturan tertentu. Contoh preferensi tersebut adalah apakah akan menggunakan tab atau spasi untuk gaya inden kode.

Saat Anda menambahkan file EditorConfig ke proyek Anda di Visual Studio, hanya baris kode baru yang diformat berdasarkan pengaturan EditorConfig. Pemformatan kode yang ada tidak diubah kecuali Anda menjalankan perintah Pembersihan Kode atau Format Dokumen . Untuk informasi selengkapnya, lihat Menerapkan gaya kode.

Konsistensi kode

Pengaturan file EditorConfig memungkinkan Anda mempertahankan gaya dan konvensi pengkodean yang konsisten dalam basis kode, terlepas dari editor atau IDE yang Anda gunakan. Beberapa gaya penulisan kode yang dapat Anda atur adalah gaya inden, lebar tab, karakter akhir baris, dan pengodean. Misalnya, jika basis kode C# Anda memiliki konvensi bahwa inden menggunakan lima karakter spasi, dokumen menggunakan pengodean UTF-8, dan baris berakhir dengan CR/LF, Anda dapat mengonfigurasi file EditorConfig untuk menggunakan konvensi ini.

File EditorConfig berguna saat konvensi pengkodian yang Anda gunakan pada proyek pribadi Anda berbeda dari konvensi yang digunakan pada proyek tim Anda. Misalnya, Anda mungkin lebih suka agar inden menambahkan karakter tab dalam kode Anda. Namun, tim Anda mungkin lebih suka bahwa indentasi menambahkan empat spasi sebagai gantinya. File EditorConfig mengatasi masalah ini dengan memungkinkan Anda memiliki konfigurasi untuk setiap skenario.

Karena file .editorconfig di basis kode berisi pengaturan EditorConfig, file tersebut melakukan perjalanan bersama dengan basis kode tersebut. Selama Anda membuka file kode di editor yang mematuhi EditorConfig, pengaturan editor teks diaktifkan.

Nota

Konvensi yang Anda tetapkan dalam file EditorConfig tidak dapat diberlakukan dalam alur CI/CD sebagai kesalahan build atau peringatan. Penyimpangan gaya apa pun hanya muncul di editor Visual Studio dan Daftar Kesalahan .

Pengaturan yang didukung

Editor di Visual Studio mendukung kumpulan inti properti EditorConfig :

  • gaya indentasi
  • ukuran_indentasi
  • lebar_tab
  • akhir_dari_garis
  • Set karakter
  • trim_trailing_whitespace
  • sisipkan_garis_baru_terakhir
  • akar

EditorConfig mendukung semua bahasa yang didukung Visual Studio, kecuali untuk pengaturan editor EditorConfig yang mendukung XML.

EditorConfig mendukung konvensi gaya kode termasuk bahasa, pemformatan , dan konvensi penamaan untuk C# dan Visual Basic.

Menambahkan dan menghapus file EditorConfig

Saat Anda menambahkan file EditorConfig ke proyek atau basis kode, Visual Studio memformat baris kode baru yang Anda tulis sesuai dengan pengaturan file EditorConfig. Namun, Visual Studio tidak mengonversi gaya yang ada ke gaya baru hingga Anda memformat dokumen atau menjalankan pembersihan kode . Misalnya, jika inden dalam file Anda diformat dengan tab dan Anda menambahkan file EditorConfig yang memformat inden dengan spasi, karakter inden tidak dikonversi secara otomatis ke spasi. Saat Anda memformat dokumen (pilih Edit>>Format Dokumen Tingkat Lanjut atau tekan Ctrl+K, Ctrl+D), pengaturan spasi putih dalam file EditorConfig diterapkan ke baris kode yang ada.

Jika Anda menghapus file EditorConfig dari proyek atau basis kode, Anda harus menutup dan membuka kembali file kode terbuka apa pun untuk pengaturan editor global untuk memengaruhi baris kode baru.

Cara menambahkan file EditorConfig

Ada beberapa cara untuk menambahkan file EditorConfig ke proyek Anda:

Membuat EditorConfig dari pengaturan gaya penulisan kode

Anda dapat mengisi file EditorConfig secara manual, atau Anda dapat secara otomatis membuat file berdasarkan pengaturan gaya kode yang Anda pilih di kotak dialog Opsi Visual Studio. Halaman opsi ini tersedia di Alat>Opsi>Editor> Teks [C# | C/C++ | Visual Basic] >Gaya> KodeUmum. Klik Buat file .editorconfig dari pengaturan untuk secara otomatis menghasilkan file gaya pengkodean .editorconfig berdasarkan pengaturan pada halaman Opsi ini.

Cuplikan layar Buat file konfigurasi editor dari pengaturan.

Anda dapat mengisi file EditorConfig secara manual, atau Anda dapat secara otomatis membuat file berdasarkan pengaturan gaya kode yang Anda pilih di kotak dialog Opsi Visual Studio. Halaman opsi ini tersedia di Alat>Opsi>> Editor Teks [C# atau Basic] >Code Style>General. Klik Buat file .editorconfig dari pengaturan untuk secara otomatis menghasilkan file gaya pengkodean .editorconfig berdasarkan pengaturan pada halaman Opsi ini.

Cuplikan layar Buat file konfigurasi editor dari pengaturan.

Menambahkan file EditorConfig ke proyek

Untuk menambahkan file EditorConfig ke proyek atau solusi Anda, ikuti langkah-langkah berikut:

  1. Buka proyek atau solusi di Visual Studio. Pilih solusi atau simpul proyek, tergantung pada apakah pengaturan EditorConfig Anda harus berlaku untuk semua proyek dalam solusi atau hanya satu. Anda juga dapat memilih folder di proyek atau solusi untuk menambahkan file .editorconfig.

  2. Dari menu, pilih Project>Tambahkan Item Baru, atau tekan Ctrl+Shift+A.

    Kotak dialog Tambahkan Item Baru akan terbuka.

  3. Dalam kotak pencarian, masukkan editorconfig.

    Dua editorconfig File template item ditampilkan dalam hasil pencarian.

    Cuplikan layar yang memperlihatkan templat item file EditorConfig di Visual Studio.

  4. Pilih file editorconfig (kosong) templat untuk menambahkan file EditorConfig yang sudah diisi dengan opsi default untuk ruang kosong, gaya kode, dan konvensi penamaan. Atau, pilih templat File editorconfig (.NET) untuk menambahkan file EditorConfig yang telah diisi sebelumnya dengan whitespace .NET default, gaya kode, dan konvensi penamaan.

    File .editorconfig baru muncul di Penjelajah Solusi, dan terbuka di editor sebagai tab baru.

    Cuplikan layar yang memperlihatkan file .editorconfig di Penjelajah Solusi dan editor.

  5. Secara opsional edit file, lalu simpan.

Hierarki dan prioritas file

Saat Anda menambahkan file .editorconfig ke folder dalam hierarki file Anda, pengaturannya berlaku untuk semua file yang berlaku pada tingkat tersebut dan yang lebih rendah. Anda juga dapat mengambil alih pengaturan EditorConfig untuk proyek, basis kode, atau bagian dari basis kode tertentu, sehingga menggunakan konvensi yang berbeda dari bagian lain dari basis kode. Melakukannya dapat berguna ketika Anda memasukkan kode dari tempat lain, dan tidak ingin mengubah konvensinya.

Ikuti panduan berikut:

  • Untuk mengambil alih beberapa atau semua pengaturan EditorConfig, tambahkan file .editorconfig pada tingkat hierarki file yang Anda inginkan untuk diterapkan pengaturan penggantian tersebut. Pengaturan file EditorConfig baru berlaku untuk file pada tingkat yang sama dan di subdirektori mana pun.

    Cuplikan layar yang menampilkan hierarki EditorConfig.

  • Jika Anda ingin mengambil alih beberapa, tetapi tidak semua pengaturan, tentukan hanya pengaturan tersebut dalam file .editorconfig. Hanya properti yang Anda cantumkan secara eksplisit dalam file .editorconfig tingkat bawah yang ditimpa. Pengaturan lain dari file .editorconfig tingkat lebih tinggi tetap berlaku.

  • Jika Anda ingin memastikan bahwa tidak ada pengaturan dari file .editorconfig tingkat yang lebih tinggi yang diterapkan ke bagian basis kode ini, tambahkan properti root=true ke file .editorconfig tingkat bawah.

    # top-most EditorConfig file for this level
    root = true
    

File EditorConfig dibaca dari atas ke bawah. Jika ada beberapa properti dengan nama yang sama, properti yang terakhir ditemukan dengan nama yang sama diutamakan.

Mengedit EditorConfig file

Visual Studio 2022 menyediakan editor visual untuk file EditorConfig.

Setelah mengedit file EditorConfig, Anda harus memuat ulang file kode agar pengaturan baru diterapkan.

Visual Studio membantu Anda mengedit file EditorConfig dengan menyediakan daftar penyelesaian IntelliSense. Misalnya:

Cuplikan layar yang memperlihatkan IntelliSense dalam file EditorConfig.

Jika Anda mengedit banyak file EditorConfig, Anda mungkin menemukan ekstensi EditorConfig Language Service bermanfaat. Beberapa fitur ekstensi ini termasuk penyorotan sintaksis, IntelliSense yang ditingkatkan, validasi, dan pemformatan kode.

Cuplikan layar yang memperlihatkan IntelliSense dengan ekstensi EditorConfig Language Service.

Contoh

Contoh berikut menunjukkan status inden cuplikan kode C# sebelum dan sesudah menambahkan file EditorConfig ke proyek:

  1. Dalam kotak dialog Alat>Opsi, atur pengaturan Editor Teks>C#>Tabs pada editor teks Visual Studio agar menghasilkan empat karakter spasi setiap kali Anda menekan tombol Tab.

    Cuplikan layar yang memperlihatkan pengaturan tab Editor Teks.

  2. Seperti yang diharapkan, saat Anda menekan tombol Tab pada baris berikutnya, itu menginden baris dengan menambahkan empat karakter spasi putih.

    Cuplikan layar yang memperlihatkan tombol Tab menambahkan spasi dalam kode.

    Cuplikan layar yang memperlihatkan tombol Tab menambahkan spasi dalam kode.

  3. Gunakan EditorConfig untuk mengubah konfigurasi tab agar menggunakan tab.

    Pilih Gunakan Tab dalam file EditorConfig.

    Cuplikan layar yang memperlihatkan konfigurasi penggunaan tab untuk Tombol tab.

    Tambahkan file baru bernama .editorconfig ke proyek, dengan konten berikut. Indikator [*.cs] berarti bahwa perubahan ini hanya berlaku untuk file kode C# dalam proyek.

    # Top-most EditorConfig file
    root = true
    
    # Tab indentation
    [*.cs]
    indent_style = tab
    
  4. Saat Anda menekan tombol Tab, karakter tab sekarang muncul alih-alih spasi.

    Cuplikan layar yang memperlihatkan tombol Tab menambahkan karakter tab dalam kode.

    Cuplikan layar yang memperlihatkan tombol Tab menambahkan karakter tab dalam kode.

Memecahkan masalah pengaturan EditorConfig

Jika file EditorConfig ada di mana saja dalam struktur direktori di atau di atas lokasi proyek Anda, Visual Studio menerapkan pengaturan editor dalam file tersebut ke editor Anda. Dalam hal ini, Anda mungkin melihat pesan berikut di bilah status:

User preferences for this file type are overridden by this project's coding conventions.

Ini berarti bahwa jika ada pengaturan editor di Alat>Opsi> Editor Teks (seperti ukuran dan gaya indentasi, ukuran tab, atau konvensi pengkodean) ditentukan dalam file EditorConfig yang berada di tingkat yang sama atau lebih tinggi dari proyek dalam struktur direktori, maka konvensi dalam file EditorConfig akan menggantikan pengaturan di Editor Teks .

Untuk memecahkan masalah EditorConfig, ikuti langkah-langkah berikut:

  1. Untuk menonaktifkan dukungan EditorConfig untuk Visual Studio, kosongkan opsi Ikuti konvensi pengkodian proyek di Alat>Opsi>Editor Teks.

    Cuplikan layar yang memperlihatkan pengaturan untuk Mengikuti konvensi pengkodian proyek.

  2. Untuk menemukan file EditorConfig apa pun di direktori induk proyek Anda, buka prompt perintah dan jalankan perintah berikut dari akar disk yang berisi proyek Anda.

    dir .editorconfig /s
    
  3. Untuk mengontrol cakupan konvensi EditorConfig Anda, atur properti root=true dalam file .editorconfig di akar repositori Anda atau di direktori tempat proyek Anda berada.

    Visual Studio mencari file bernama .editorconfig di direktori file yang dibuka dan di setiap direktori induk. Pencarian berakhir ketika mencapai jalur file root, atau jika file .editorconfig dengan root=true ditemukan.