Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Simple Miranda ESLintNew to Visual Studio Code? Get it now.
Simple Miranda ESLint

Simple Miranda ESLint

GabrielGuerra

| (0) | Free
Provides basic ESLint functionality for Miranda code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Miranda Linter (miralinter)

Una extensión con múltiples funcionalidades de ESLint para el lenguaje de programación Miranda. Detecta errores comunes de sintaxis y código.

Características

  • 7 reglas de linting para validar código Miranda
  • Configuración personalizable mediante miralinter.config.json
  • Detección de errores ejecutando el comando miralinter
  • Pattern matching support (definiciones con múltiples cláusulas)
  • Parámetros configurables por regla

Configuración

El linter se configura mediante el archivo miralinter.config.json en la raíz del proyecto.

Ejemplo de configuración

{
  "rules": {
    "bad-identation": {
      "enabled": true,
      "indentationSpaces": 4
    },
    "unbalanced-parentheses": {
      "enabled": true
    },
    "unclosed-delimiters": {
      "enabled": true
    },
    "incomplete-definition": {
      "enabled": true
    },
    "duplicate-definition": {
      "enabled": true
    },
    "undefined-variable": {
      "enabled": true
    },
    "undefined-function": {
      "enabled": true
    }
  }
}

Deshabilitar/Habilitar una regla

Para deshabilitar una regla hay que establecer el valor de enabled en false Para activar una regla hay que establecer el valor de enabled en true

Regla activada

{
  "rules": {
    "undefined-variable": {
      "enabled": true
    }
  }
}

Regla desactivada

{
  "rules": {
    "undefined-variable": {
      "enabled": false
    }
  }
}

Reglas disponibles

bad-identation

Detecta indentación incorrecta que no es múltiplo del número de espacios esperado.

  • Severidad: warning
  • Parámetro: indentationSpaces (default: 4)

Ejemplo:

f x =
  x + 1      // ✗ Error: 2 espacios, se esperan múltiplos de 4
    + 2      // ✓ Válido: 4 espacios

unbalanced-parentheses

Detecta paréntesis desbalanceados o sin cerrar.

  • Severidad: error

Ejemplo:

f x = (x + 1   // ✗ Error: paréntesis sin cerrar
f x = (x + 1)  // ✓ Válido

unclosed-delimiters

Detecta corchetes [] y llaves {} sin cerrar.

  • Severidad: error

Ejemplo:

nums = [1,2,3     // ✗ Error: corchete sin cerrar
nums = [1,2,3]    // ✓ Válido

incomplete-definition

Detecta definiciones de función incompletas sin expresión.

  • Severidad: error

Ejemplo:

double x =       // ✗ Error: falta expresión
double x = 2 * x // ✓ Válido

duplicate-definition

Detecta definiciones duplicadas con el mismo patrón exacto.

  • Severidad: error

Nota: Las definiciones con parámetros diferentes son válidas (pattern matching).

Ejemplo:

square x = x * x    // ✓ Válido
square n = n ^ 2    // ✓ Válido (parámetros diferentes)

fact 0 = 1
fact 0 = 2          // ✗ Error: mismo patrón "fact 0"

undefined-variable

Detecta variables no definidas en una expresión.

  • Severidad: error

Ejemplo:

f x = x + y    // ✗ Error: y no definida
f x = x + 1    // ✓ Válido

undefined-function

Detecta llamadas a funciones no definidas.

  • Severidad: error

Ejemplo:

main = factorial 5    // ✗ Error: factorial no definida
fact n = n * fact (n - 1)
main = fact 5         // ✓ Válido

Contribuciones

Para reportar bugs, contribuir o descargar el proyecto, leer el documento de CONTRIBUTING.md

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft