Saltar al contenido
🛠️ToolsShed

EditorConfig Generator

Genera archivos .editorconfig para estilos de codificación consistentes entre editores.

# 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

Acerca de esta herramienta

EditorConfig es un formato de archivo de configuración que ayuda a los equipos de desarrollo a mantener estilos de formato de código consistentes en diferentes editores e IDEs. Cuando los miembros del equipo utilizan diferentes editores—Visual Studio Code, JetBrains IDEs, Sublime Text, Vim u otros—un archivo .editorconfig asegura que la indentación, los saltos de línea, el conjunto de caracteres y otras reglas de formato permanezcan uniformes independientemente de qué herramienta prefiera cada persona. Esto elimina conflictos de formato en sistemas de control de versiones y reduce el tiempo dedicado a discusiones de estilo.

Para usar este generador, simplemente selecciona tu configuración preferida para tipo de indentación (tabulaciones o espacios), tamaño de indentación, estilo de salto de línea (LF, CRLF o detección automática) y conjunto de caracteres. También puedes configurar reglas para tipos de archivo específicos como Python, JavaScript, JSON o cualquier otro lenguaje con el que trabajes. Una vez que hayas personalizado toda la configuración, descarga el archivo .editorconfig generado y colócalo en el directorio raíz de tu proyecto. Los editores de los miembros de tu equipo aplicarán automáticamente estas reglas al abrir archivos en ese proyecto.

EditorConfig se integra perfectamente con la mayoría de editores modernos a través de soporte integrado o complementos ligeros, lo que lo convierte en una de las formas más simples de aplicar consistencia de estilo de código sin herramientas de compilación ni linters adicionales. Los equipos que trabajan en proyectos de código abierto, bases de código corporativas o entornos colaborativos se benefician más, ya que crea una única fuente de verdad para preferencias de formato. La herramienta es particularmente útil para proyectos políglotas donde coexisten múltiples lenguajes de programación, ya que las reglas de .editorconfig se pueden personalizar por extensión de archivo.

Preguntas Frecuentes

Implementación de Código

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