İçeriğe geç
🛠️ToolsShed

EditorConfig Generator

Editörler arasında tutarlı kodlama stilleri için .editorconfig dosyaları oluşturun.

# EditorConfig — https://editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
max_line_length = 120

[*.json]
indent_size = 2

[*.md]
trim_trailing_whitespace = false

Bu araç hakkında

EditorConfig, geliştirme ekiplerinin farklı editörler ve IDE'ler arasında tutarlı kod biçimlendirme stillerini korumalarına yardımcı olan bir yapılandırma dosyası formatıdır. Ekip üyeleri Visual Studio Code, JetBrains IDE'leri, Sublime Text, Vim veya diğer araçlar gibi farklı editörler kullandığında, bir .editorconfig dosyası girinti, satır sonlandırmaları, karakter kümesi ve diğer biçimlendirme kurallarının her kişinin tercih ettiği araçtan bağımsız olarak uniform kalmasını sağlar. Bu, sürüm kontrol sistemlerinde biçimlendirme çatışmalarını ortadan kaldırır ve stil tartışmalarına harcanan zamanı azaltır.

Bu oluşturucuyu kullanmak için, basitçe girinti türü (sekmeler veya boşluklar), girinti boyutu, satır sonlandırma stili (LF, CRLF veya otomatik algılama) ve karakter kümesi için tercih ettiğiniz ayarları seçin. Python, JavaScript, JSON veya çalıştığınız diğer herhangi bir dil gibi belirli dosya türleri için kuralları da yapılandırabilirsiniz. Tüm ayarları özelleştirdikten sonra, oluşturulan .editorconfig dosyasını indirin ve proje kök dizinine yerleştirin. Ekip üyelerinizin editörleri, bu projede dosya açarken otomatik olarak bu kuralları uygulayacaktır.

EditorConfig, yerleşik destek veya hafif eklentiler aracılığıyla çoğu modern editöre sorunsuz bir şekilde entegre olur ve bunu ek derleme araçları veya linter'lar olmadan kod stili tutarlılığını uygulayan en basit yollardan biri yapar. Açık kaynak projeleri, kurumsal kod tabanları veya işbirliğine dayalı ortamlarda çalışan ekipler en çok fayda sağlar, çünkü biçimlendirme tercihleri için tek bir kaynak oluşturur. Bu araç, birden fazla programlama dilinin bir arada bulunduğu çok dilli projeler için özellikle yararlıdır, çünkü .editorconfig kuralları dosya uzantısına göre özelleştirilebilir.

Sıkça Sorulan Sorular

Kod Uygulaması

# Generate a .editorconfig file programmatically

def generate_editorconfig(indent_style="space", indent_size=2, end_of_line="lf",
                           charset="utf-8", trim_trailing_whitespace=True,
                           insert_final_newline=True) -> str:
    lines = [
        "# EditorConfig is awesome: https://editorconfig.org",
        "",
        "# top-most EditorConfig file",
        "root = true",
        "",
        "[*]",
        f"indent_style = {indent_style}",
        f"indent_size = {indent_size}",
        f"end_of_line = {end_of_line}",
        f"charset = {charset}",
        f"trim_trailing_whitespace = {str(trim_trailing_whitespace).lower()}",
        f"insert_final_newline = {str(insert_final_newline).lower()}",
        "",
        "[*.md]",
        "trim_trailing_whitespace = false",
        "",
        "[Makefile]",
        "indent_style = tab",
        "",
        "[*.{json,yml,yaml}]",
        "indent_size = 2",
    ]
    return "\n".join(lines)

config = generate_editorconfig(indent_style="space", indent_size=4)
print(config)

# Write to file
with open(".editorconfig", "w") as f:
    f.write(config)

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.