Ir al contenido

Terminal

Una vista de solo lectura que entiende los colores ANSI y se queda al final. Pásale la salida de un proceso que ejecutes (por ejemplo con subprocess en un hilo y pz.post). También acepta líneas de segmentos (texto, color); ui.ansi(text) convierte texto ANSI en esos segmentos.

ui.terminal · Categoría: Código y herramientas · Referencia completa →

TerminalTerminal
  • Para mostrar la salida de una compilación, tests, registros de un servidor o cualquier comando.
import pyzed as pz
from pyzed import ui
out = ("$ pytest -q\n\x1b[32m........................\x1b[0m\n\x1b[32m24 passed\x1b[0m in 1.21s\n"
"$ maturin develop --release\n\x1b[2m Compiling pyzed v0.4.0\x1b[0m\n"
"\x1b[32m✓\x1b[0m Installed pyzed-0.4.0\n$ ")
pz.container(ui.terminal(out), width=560, height=190)
Terminal: Texto planoTerminal: Texto plano
Texto plano
Código
pz.container(ui.terminal("$ ls\nmain.py notes.md pyproject.toml\n$ "), width=380, height=80)
Terminal: Colores ANSITerminal: Colores ANSI
Colores ANSI
Código
pz.container(ui.terminal("\x1b[32m✓\x1b[0m 24 passed \x1b[33m!\x1b[0m 1 warning \x1b[31m✗\x1b[0m 0 failed"),
width=380, height=50)
Terminal: font_size=16Terminal: font_size=16
font_size=16
Código
pz.container(ui.terminal("$ python main.py\nHello", font_size=16), width=380, height=70)
Terminal: Segmentos (texto, color)Terminal: Segmentos (texto, color)
Segmentos (texto, color)
Código
pz.container(ui.terminal([[("ok ", "#a1c181"), ("build", None)], [("err ", "#d07277"), ("lint", None)]]),
width=380, height=60)

Terminal no tiene eventos propios: muestra lo que le das. Como todo widget, también tiene los 18 eventos comunes (click, double_click, right_click, mouse_enter, drag, key_down, resize…), que se conectan con .on(...): mira Eventos y Eventos de cada componente.

terminal(lines, *, font_size=13, id=None, theme=None)

Una vista de terminal de solo lectura con colores ANSI. Se mantiene desplazada al final.

Propiedad Por defecto Descripción
lines obligatorio Texto con escapes ANSI o lista de líneas de segmentos (texto, color).
font_size 13 Tamaño de la fuente.
id None Identificador estable para enfocarlo o desplazarlo con un Command.
theme None Tema a usar en lugar del actual (pyzed.theme.current()).

Referencia completa →

ansi(text)

Convierte texto con colores ANSI en líneas de segmentos (texto, nombre_de_color).

Propiedad Por defecto Descripción
text obligatorio Texto con escapes ANSI.

Referencia completa →