# Solución de problemas en Tern

## El instalador se detiene

| Mensaje | Solución |
| --- | --- |
| `This preview requires macOS on Apple Silicon.` | La versión preliminar solo funciona en Mac con Apple Silicon. |
| `Install Tern and enable its command-line tool before running this installer.` | Ponga el comando `tern` en `PATH` y vuelva a ejecutar `sh ./install.sh`. |
| `Incomplete release: missing executable dist/elide-tern-…` | Vuelva a descomprimir el archivo; verifíquelo antes con `shasum -a 256 -c SHA256SUMS`. |
| `Incomplete release: runtime, SDK, or plugin is missing.` | Igual que el anterior. |

## Una vista no se abre

| Mensaje | Solución |
| --- | --- |
| ``The configured runtime has no `elide tern`; update it or set a launcher in plugin/config.json.`` | `runtime` en `plugin/config.json` apunta a un Elide sin vistas de Tern. Apúntelo al `../runtime/bin/elide` de la versión, o borre el archivo y vuelva a ejecutar `install.sh`. |
| `Configure plugin/config.json before launching a runtime.` | `plugin/config.json` falta o no se puede leer; vuelva a ejecutar `install.sh`. |
| `Set the embedded SDK directory in plugin/config.json.` | **Open REPL** necesita `sdk`; el instalador lo establece en `../sdk`. |
| `Configure a runtime launcher on this host before opening a remote session.` | Las vistas solo se ejecutan en hosts locales. Abra el proyecto en un panel local. |
| `Open a local project directory first.` | Enfoque un panel cuyo directorio esté dentro de un proyecto `elide.pkl`. |
| `No elide.pkl found in this directory or its parents.` | Igual que el anterior. |

Si la ruta de datos del plugin de Tern es tan larga que supera el límite de longitud de ruta de los sockets Unix,
establezca `state` en `plugin/config.json` en un directorio privado corto.

## Un comando imprime texto simple en Tern

| Causa | Solución |
| --- | --- |
| El `elide` de `PATH` no tiene vistas de Tern | Compruebe `elide tern --help`; debe listar `debug`, `project` y `repl`. Instale Elide 1.6.3 o posterior. |
| `--reporter`, `--project` o una ruta de prueba que no existe | Es lo esperado: estas ejecuciones mantienen la salida simple. |
| Salida redirigida o canalizada | Es lo esperado. |
| `elide build` fuera de un proyecto `elide.pkl`, o con `--inspect`, `--help` o `--progress` | Es lo esperado. |
| `elide serve --no-tui` | Es lo esperado. |

La lista completa está en [Superficies de terminal](/docs/tern-terminal). Una advertencia que nombra `ELIDE_TERN_SURFACE`
significa que la variable contiene algo distinto de `inline`, `screen` o `auto`.

## `elide tern` sale con el estado 2

`elide tern repl|project|debug` aloja las vistas que lanza el plugin y sale con `2` fuera de Tern. Use los comandos de
la paleta del plugin en lugar de ejecutarlo usted mismo.

## Un enlace no hace nada

Los enlaces `elide://` solo se abren a través del plugin. Un enlace descartado muestra una notificación con el motivo:

| Notificación | Causa |
| --- | --- |
| `Ignored a malformed elide:// link.` | Codificación incorrecta, una clave repetida, un fragmento o una ruta fuera de su raíz. |
| `Ignored an elide:// link whose root has no elide.pkl.` | `root` no es un directorio de proyecto. |
| `Ignored an elide:// link outside a detected project.` | No hay `root` y el archivo no está en ningún proyecto que esta ventana haya detectado. |
| `The linked file does not exist.` | El archivo se movió o se borró. |
| `elide:// links open on local hosts only.` | Se hizo clic en el enlace en un panel remoto. |

Las rutas se comparan tal como están escritas: un enlace a `/tmp/x` no coincide con un proyecto en `/private/tmp/x`.

## El editor de código fuente

| Síntoma | Causa |
| --- | --- |
| Sin resaltado | El archivo tiene más de 600 líneas. |
| Un aviso en lugar del texto | El archivo supera 512 KiB, no se puede leer o no está en UTF-8. |
| `Elide source shows JavaScript, TypeScript, Python, Kotlin and Java files.` | Los demás tipos de archivo se abren en el editor de Tern. |
| Sin superposición **Debug** | El archivo no es JavaScript, TypeScript ni Python. |
| Sin superposición **Diagnostics** | El proyecto aún no tiene informe de compilación; ejecute `elide build` en una terminal de Tern. |
| Todos los tintes de cobertura atenuados, `Coverage measured an older version` | El archivo cambió desde la ejecución de cobertura; vuelva a ejecutar la cobertura. |

## Depuración

| Mensaje | Solución |
| --- | --- |
| `Save this file before debugging.` | El depurador ejecuta el archivo que hay en disco. Guarde y lance. |
| `Debugging takes JavaScript, TypeScript or Python sources.` | Elija un archivo compatible o use el selector de destino. |
| Controles desactivados con `Take control to drive the target` | Otra vista controla el destino; elija **Take control**. |

## Véase también

- [Solución de problemas](/docs/troubleshooting) para errores fuera de Tern
- [Solución de problemas de OpenTelemetry](/docs/opentelemetry/troubleshooting)
