Vai al contenuto
🛠️ToolsShed

EditorConfig Generator

Genera file .editorconfig per stili di codifica coerenti tra gli editor.

# 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

Informazioni sullo strumento

EditorConfig è un formato di file di configurazione che aiuta i team di sviluppo a mantenere stili di formattazione del codice coerenti in diversi editor e IDE. Quando i membri del team utilizzano editor diversi—Visual Studio Code, JetBrains IDE, Sublime Text, Vim o altri—un file .editorconfig garantisce che l'indentazione, le interruzioni di riga, il set di caratteri e altre regole di formattazione rimangono uniformi indipendentemente da quale strumento preferisce ogni persona. Ciò elimina i conflitti di formattazione nei sistemi di controllo della versione e riduce il tempo dedicato alle discussioni sullo stile.

Per utilizzare questo generatore, seleziona semplicemente le tue impostazioni preferite per il tipo di indentazione (tabulazioni o spazi), la dimensione dell'indentazione, lo stile di interruzione di riga (LF, CRLF o rilevamento automatico) e il set di caratteri. Puoi anche configurare regole per tipi di file specifici come Python, JavaScript, JSON o qualsiasi altro linguaggio con cui lavori. Una volta personalizzate tutte le impostazioni, scarica il file .editorconfig generato e posizionalo nella directory radice del tuo progetto. Gli editor dei membri del tuo team applicheranno automaticamente queste regole quando apriranno file in quel progetto.

EditorConfig si integra perfettamente con la maggior parte degli editor moderni attraverso il supporto integrato o plugin leggeri, rendendolo uno dei modi più semplici per applicare la coerenza dello stile di codice senza strumenti di compilazione aggiuntivi o linter. I team che lavorano su progetti open source, basi di codice aziendali o ambienti collaborativi ne beneficiano di più, poiché crea un'unica fonte di verità per le preferenze di formattazione. Lo strumento è particolarmente utile per progetti poliglotti dove coesistono più linguaggi di programmazione, poiché le regole di .editorconfig possono essere personalizzate per estensione di file.

Domande Frequenti

Implementazione del Codice

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