Saltar al contenido
Paneflow

Temas

Cambia entre los temas incluidos de Paneflow - One Dark y PaneFlow Light - con recarga en caliente, sin necesidad de reiniciar.

Paneflow incluye hoy dos temas: un tema oscuro por defecto (One Dark) y una alternativa clara (PaneFlow Light). Los temas controlan todos los colores de la superficie del terminal - paleta ANSI, cursor, selección, resaltados en el búfer de historial, coincidencias de búsqueda. La barra lateral y la barra de título permanecen en la paleta del chrome de la aplicación Paneflow y no están controladas por el tema.

TL;DR. Define "theme": "PaneFlow Light" en paneflow.json para cambiar al tema claro. Guarda el archivo; la ventana en ejecución toma los nuevos colores en ~300 ms sin reiniciar.

¿Cómo cambio el tema activo?

Define la clave theme en paneflow.json:

{
  "theme": "PaneFlow Light"
}

El valor debe coincidir exactamente con uno de los nombres de tema incluidos, incluyendo mayúsculas. Los nombres desconocidos retornan a One Dark y emiten una advertencia en el log la próxima vez que se parsee el archivo.

El archivo de configuración vive en:

SORuta
Linux~/.config/paneflow/paneflow.json
macOS~/Library/Application Support/paneflow/paneflow.json

¿Qué temas se entregan con Paneflow hoy?

Stable
NombreDescripción
"One Dark"Tema oscuro, predeterminado. Inspirado en la paleta One Dark de Atom.
"PaneFlow Light"Tema claro. Paleta de mayor contraste afinada para estaciones de trabajo a la luz del día.

Ambos temas vienen con las 16 ranuras de color ANSI, colores de primer plano / fondo, cursor, selección y resaltado de búsqueda preajustados para cumplir contraste WCAG AA en prompts estándar.

Planes anteriores del proyecto mencionaban seis temas incluidos. La realidad en v0.2.x es de dos. Temas adicionales (Solarized, Gruvbox y una variante de alto contraste) están en la hoja de ruta; sigue los GitHub releases para el anuncio.

¿Cómo funciona la recarga en caliente del tema?

Cuando guardas paneflow.json, Paneflow resuelve el tema sobre la marcha - sin reiniciar, sin recargar la ventana.

Dos mecanismos impulsan la recarga:

  • Dirigido por eventos (preferido). Un watcher de notify instalado en el directorio de configuración dispara en milisegundos tras un guardado. Los eventos se debouncan a 300 ms para que las ráfagas de guardado del editor (write -> fsync -> atomic-rename) solo disparen una recarga.
  • Polling de respaldo. Los sistemas de archivos que no admiten inotify / FSEvents / ReadDirectoryChangesW (recursos compartidos NFS, sandboxes bloqueadas, algunas rutas WSL) caen a un sondeo de mtime de 500 ms. El respaldo solo se ejecuta cuando el watcher de eventos no arranca.

Verás que la nueva paleta surte efecto en el siguiente frame de render después de que el watcher dispare - típicamente en ~300 ms del guardado.

La recarga en caliente cubre todos los campos relacionados con temas en paneflow.json, incluyendo las claves de tipografía (font_family, font_size, line_height). La clave window_decorations es el único campo de configuración que se lee una sola vez al arranque - cambiarla requiere reiniciar Paneflow.

¿Cómo creo un tema personalizado?

Los temas personalizados aportados por el usuario están en la hoja de ruta para un release posterior a v0.3.0. v0.2.x reconoce solo los nombres de temas incluidos listados arriba; aún no hay theme.json ni formato de paleta personalizada.

Si quieres una paleta específica mientras tanto, la ruta más directa es abrir un issue de GitHub con la paleta que quieres. Los temas incluidos se afinan en src-app/src/theme/builtin.rs y se entregan con cada release - nuevas paletas se aceleran cuando tienen un caso de uso claro.

El espacio reservado a nivel de esquema para una futura clave de tema personalizado no está aún definido a propósito, así que añadirla a paneflow.json hoy no tiene efecto - se ignora silenciosamente por el runtime permisivo según la vista general de configuración.

On this page