Generator EditorConfig
File .editorconfig di akar repositori memberi tahu setiap IDE modern bagaimana proyek ini memformat berkasnya, sekaligus mengakhiri perdebatan tab vs spasi untuk tiap file. Python: 4 spasi. JavaScript: 2. Makefile: tab (wajib). Generator ini membuat file .editorconfig dari pilihan format Anda (gaya dan ukuran indentasi, akhir baris, charset, panjang baris maksimum, baris baru akhir, dan penghapusan spasi di ujung baris) serta selalu menyertakan dua penyesuaian umum: [*.md] mempertahankan spasi di akhir baris untuk pemisah baris Markdown, dan [Makefile] menggunakan tab sesuai keharusan make.
Cara Membuat File .editorconfig
-
1
Atur nilai default global
Charset (bawaan utf-8), akhir baris (lf vs crlf), gaya dan ukuran indentasi, panjang baris maksimum, penambahan baris baru akhir, dan penghapusan spasi di ujung baris.
-
2
Periksa penyesuaian bawaan
Generator selalu menambahkan `[*.md]` dengan `trim_trailing_whitespace = false` (Markdown membutuhkan spasi di akhir baris untuk pemisah baris) dan `[Makefile]` dengan `indent_style = tab` yang diwajibkan oleh make itu sendiri.
-
3
Salin file
Gunakan tombol salin untuk mengambil `.editorconfig` yang dihasilkan, lalu letakkan di akar repositori.
-
4
Kembangkan nanti
Butuh aturan per bahasa? Tambahkan bagian Anda sendiri, misalnya `[*.py]` dengan `indent_size = 4`.
Apa yang dilakukan oleh file .editorconfig
File bernama .editorconfig yang berada di akar proyek (atau dalam direktori apa pun) menetapkan konvensi formatasi. Editor yang mendukung fitur EditorConfig (semua IDE utama dan sebagian besar editor teks modern) akan menerapkan aturan tersebut saat file dibuka.
Contoh hasil output
Dengan pengaturan bawaan (spasi, ukuran 4, LF, utf-8) generator menghasilkan:
root = true
[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
max_line_length = 120
[*.md]
trim_trailing_whitespace = false
[Makefile]
indent_style = tab
Direktif Utama
| Direktif | Nilai yang Diterima | Catatan |
|---|---|---|
| root | true / false | Tetapkan nilai true di direktori akar proyek agar pencarian berhenti |
| charset | utf-8, utf-8-bom, latin1, utf-16-be, utf-16-le | utf-8 merupakan nilai default |
| end_of_line | lf, crlf, cr | lf untuk versi lintas platform; crlf untuk repositori yang hanya tersedia di Windows |
| indent_style | space, tab | |
| indent_size | bilangan bulat | Jumlah spasi; diabaikan saat menggunakan tab |
| tab_width | bilangan bulat | Lebar visual tab (nilai default: indent_size) |
| insert_final_newline | true / false | Memastikan file sesuai standar POSIX |
| trim_trailing_whitespace | true / false | Matikan untuk Markdown (spasi di akhir baris berarti pemisahan baris) |
Konvensi bahasa dalam satu pandangan
| Bahasa / Berkas | Konvensi |
|---|---|
| JS, TS, JSON | 2 spasi |
| HTML, CSS, YAML | 2 spasi |
| Python | 4 spasi (PEP 8) |
| PHP | 4 spasi (PSR-12) |
| Ruby | 2 spasi |
| Go | Tab (dipaksakan oleh gofmt) |
| Rust | 4 spasi (diwajibkan oleh rustfmt) |
| Java | 4 spasi |
| Makefile | Tab (wajib oleh make itu sendiri) |
| Markdown | Pertahankan spasi di akhir baris (digunakan untuk <br>) |
| Batch/CMD (.bat) | akhir baris crlf |
Perangkap: Spasi di akhir baris dalam Markdown
Dalam Markdown, dua ruang di akhir baris berarti “masukkan <br> di sini”. Jika fitur .editorconfig menghilangkan ruang kosong di akhir semua file, baris pemisah tersebut akan menghilang. Ganti dengan trim_trailing_whitespace = false untuk [*.md].
Apakah IDE Anda mendukung fitur ini?
Dukungan native: VS Code, keluarga JetBrains/IntelliJ, Sublime Text, Vim (melalui plugin), Emacs (melalui plugin), Atom, Notepad++, dan Xcode. Jika suatu editor tidak mendukung EditorConfig secara bawaan, biasanya tersedia plugin untuk mendukungnya. File ini juga dapat dibaca oleh mesin, sehingga alat linters dan pemformat dapat menggunakannya dengan benar.
Pertanyaan yang Sering Diajukan
Di akar proyek dengan kode root = true, Anda dapat menambahkan berkas-berkas .editorconfig di subdirektori untuk menggantikan jalur tertentu; proses pencarian akan dilakukan secara berjenjang dari akar hingga berhenti pada berkas root = true pertama yang ditemukan.
Tidak. EditorConfig menangani aspek dasar terkait ruang kosong dan akhir baris di semua editor. Prettier dan linter khusus untuk setiap bahasa pemrograman menangani aturan gaya yang lebih mendalam (kutipan, titik koma, koma akhir baris). Kedua fitur tersebut saling melengkapi.
Atur nilai end_of_line = crlf jika alat Windows dalam repositori memang memerlukannya. Opsi yang lebih baik adalah mengkomit end_of_line = lf, lalu menambahkan .gitattributes dan * text=auto; dengan demikian Git akan menormalisasi akhir baris saat komit, sementara hasil checkout tetap sesuai dengan sistem operasi yang digunakan.
Tidak. Pilihan Anda hanya digunakan untuk membuat file; tidak ada yang disimpan di server kami atau dipertahankan setelah Anda meninggalkan halaman.
Alat Terkait
Referensi Tabel ASCII
Tabel ASCII lengkap dari 0 sampai 127 dengan desimal, heksadesimal, oktal, biner, dan referensi karakter numerik HTML untuk setiap karakter, termasuk kode kontrol seperti NUL, LF, dan DEL.
Referensi Karakter HTML
Daftar entitas HTML yang dapat dicari, beserta kode bernama dan kode numeriknya, serta fitur salin dengan satu klik untuk karakter khusus dan simbol.
Referensi pintasan papan ketik
Cari pintasan bawaan terdokumentasi untuk VS Code, Chrome, dan Bash dengan GNU Readline di macOS, Windows, dan Linux.
Penghitung FPS
Ukur FPS browser dengan requestAnimationFrame: penghalusan, frame rate minimum dan maksimum, ambang peringatan, dan grafik opsional. Berjalan lokal, tanpa unggahan dan tanpa API.
Generator Warna Acak
Buat 1 hingga 50 warna HEX acak dengan contoh warna yang bisa dipratinjau, disalin, dan dipakai di CSS, pengujian, atau eksplorasi palet.
Pemformat HTML
Format HTML secara lokal di browser dengan inden dua atau empat spasi. HTML tidak diunggah atau divalidasi.
Alat ini tersedia dalam bahasa lain
- EditorConfig Generator [EN]
- Trình tạo EditorConfig [VI]
- EditorConfig-Generator [DE]
- Generador de EditorConfig [ES]
- EditorConfig-generator [SV]
- EditorConfig 생성기 [KO]
- Gerador de EditorConfig [PT]
- Generator EditorConfig [PL]
- Générateur EditorConfig [FR]
- EditorConfig-generator [NL]
- 编辑器配置生成器 [ZH]
- مولد EditorConfig [AR]
- เครื่องมือสร้าง EditorConfig [TH]
- EditorConfig ジェネレーター [JA]
- EditorConfig Oluşturucu [TR]
- Generatore EditorConfig [IT]
- Генератор EditorConfig [RU]