Command
Un Command es un efecto que el runtime ejecuta por ti. Devuélvelo desde update,
on_start, on_key o cualquier callback. También puedes devolver una lista o una
tupla de comandos. Ver la guía de comandos y tareas.
from pyzed import Command
def on_key(self, combo): if combo == "ctrl-p": self.finder_open = True return Command.focus("finder")Métodos estáticos
Sección titulada «Métodos estáticos»Command
Sección titulada «Command»La clase de los comandos. No se instancia directamente: usa sus métodos estáticos.
exit()Cierra la aplicación.
focus(id)Enfoca el text_input (o editor) con ese id.
| Parámetro | Descripción |
|---|---|
id |
El id que pasaste al widget. |
focus_next
Sección titulada «focus_next»focus_next()Mueve el foco del teclado al siguiente campo de la ventana, volviendo al primero tras el último (lo que hace Tab).
focus_previous
Sección titulada «focus_previous»focus_previous()Mueve el foco del teclado al campo anterior de la ventana (lo que hace Shift+Tab).
select_all
Sección titulada «select_all»select_all(id)Da el foco al text_input con ese id y selecciona todo su texto (lo que se escriba lo reemplaza).
| Parámetro | Descripción |
|---|---|
id |
El id del campo. |
set_editor_text
Sección titulada «set_editor_text»set_editor_text(id, text)Reemplaza el contenido del code_editor con ese id. Los editores no son controlados: text solo es el valor inicial.
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
text |
El texto nuevo. |
set_editor_cursor
Sección titulada «set_editor_cursor»set_editor_cursor(id, line, column)Mueve el cursor del editor (línea y columna empiezan en 1). Funciona aunque el editor aún no se haya dibujado.
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
line |
Línea (desde 1). |
column |
Columna (desde 1). |
fold_all
Sección titulada «fold_all»fold_all(id, fold=True)Pliega todos los bloques del editor (fold=False los despliega). Funciona aunque el editor aún no se haya dibujado.
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
fold |
True para plegar, False para desplegar. |
fold_line
Sección titulada «fold_line»fold_line(id, line, fold=True)Pliega (o despliega) el bloque que empieza en line, según la sangría. Funciona aunque el editor aún no se haya dibujado.
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
line |
Línea (desde 1) donde empieza el bloque. |
fold |
True para plegar, False para desplegar. |
editor_action
Sección titulada «editor_action»editor_action(id, name)Ejecuta una acción del editor con ese id, como si se pulsara su atajo: el nombre de la acción de Zed en snake case ("undo", "select_next", "move_line_up", "toggle_comments"…). Lanza ValueError si el nombre no existe.
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
name |
El nombre de la acción (Command.editor_actions() las lista; también vale "editor::SelectNext"). |
editor_actions
Sección titulada «editor_actions»editor_actions()Los nombres que acepta Command.editor_action.
select_editor_ranges
Sección titulada «select_editor_ranges»select_editor_ranges(id, ranges)Selecciona rangos del editor, un cursor por rango; el primero es el cursor principal. Despliega lo que los oculta y funciona aunque el editor aún no se haya dibujado.
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
ranges |
[(línea, columna, línea_final, columna_final)], desde 1, con el final excluido (un rango vacío es un cursor sin selección). |
replace_editor_ranges
Sección titulada «replace_editor_ranges»replace_editor_ranges(id, edits)Reemplaza rangos del editor por textos en un solo paso de deshacer y llama al on_change del editor (buscar y reemplazar).
| Parámetro | Descripción |
|---|---|
id |
El id del editor. |
edits |
[((línea, columna, línea_final, columna_final), texto)], desde 1, con el final excluido. |
scroll_to_end
Sección titulada «scroll_to_end»scroll_to_end(id)Desplaza el scrollable con ese id hasta el final.
| Parámetro | Descripción |
|---|---|
id |
El id del scrollable. |
batch(commands)Ejecuta varios comandos.
| Parámetro | Descripción |
|---|---|
commands |
Lista de Command. |
message
Sección titulada «message»message(message)Vuelve a enviar message a update en el siguiente ciclo.
| Parámetro | Descripción |
|---|---|
message |
Cualquier valor de Python, o un callable. |
perform
Sección titulada «perform»perform(function, then=None)Ejecuta function() en segundo plano y entrega el resultado a then(resultado) en el hilo de la interfaz. function puede ser normal (corre en un hilo) o async def (corre en el loop de asyncio de Pyzed). Si devuelve un generador (normal o async), then se llama con cada valor. También acepta una corrutina o un generador ya creados (fetch(url) en lugar de fetch). Sin then, los resultados van a update. Si function lanza, se imprime el error.
| Parámetro | Descripción |
|---|---|
function |
Función sin argumentos que hace el trabajo lento. |
then |
Callable que recibe el resultado (o None para enviarlo a update). |
def cargar(self): self.cargando = True return Command.perform(lambda: requests.get(URL).json(), self.recibido)
def recibido(self, datos): self.cargando, self.datos = False, datosscroll_to
Sección titulada «scroll_to»scroll_to(id, x=0.0, y=0.0)Desplaza el scrollable con ese id a una posición absoluta en píxeles.
| Parámetro | Descripción |
|---|---|
id |
El id del scrollable. |
x |
Desplazamiento horizontal. |
y |
Desplazamiento vertical. |
copy(text)Copia text al portapapeles del sistema.
| Parámetro | Descripción |
|---|---|
text |
El texto. |
paste(then)Lee el portapapeles y llama a then(texto) (cadena vacía si está vacío).
| Parámetro | Descripción |
|---|---|
then |
Callable que recibe el texto. |
paste_image
Sección titulada «paste_image»paste_image(then)Lee una imagen del portapapeles (una captura, una imagen copiada) y llama a then(png) con sus bytes PNG, o a then(None) si el portapapeles no tiene una imagen.
| Parámetro | Descripción |
|---|---|
then |
Callable que recibe los bytes PNG o None. |
pick_files
Sección titulada «pick_files»pick_files( then, *, title=None, filters=None, directory=None, multiple=True, folder=False,)Abre el diálogo de archivos del sistema y llama a then(rutas) con las rutas elegidas (una lista vacía si se cancela).
| Parámetro | Descripción |
|---|---|
then |
Callable que recibe la lista de rutas. |
title |
El título del diálogo. |
filters |
Una lista de pares (nombre, extensiones), como [("Imágenes", ["png", "jpg"])]. |
directory |
La carpeta en la que se abre. |
multiple |
False elige un solo archivo. |
folder |
True elige carpetas en vez de archivos. |
save_file
Sección titulada «save_file»save_file(then, *, title=None, filters=None, directory=None, file_name=Ellipsis)Abre el diálogo «Guardar como» del sistema y llama a then(rutas) con la ruta elegida en una lista (una lista vacía si se cancela).
| Parámetro | Descripción |
|---|---|
then |
Callable que recibe la lista con la ruta. |
title |
El título del diálogo. |
filters |
Una lista de pares (nombre, extensiones), como [("Imágenes", ["png", "jpg"])]. |
directory |
La carpeta en la que se abre. |
file_name |
El nombre que sugiere. |
Ventanas y portapapeles
Sección titulada «Ventanas y portapapeles»open_window
Sección titulada «open_window»open_window(window)Abre una ventana nueva para esa instancia de pz.Window.
| Parámetro | Descripción |
|---|---|
window |
La ventana. |
close_window
Sección titulada «close_window»close_window(window=None)Cierra la ventana.
| Parámetro | Descripción |
|---|---|
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
drag_window
Sección titulada «drag_window»drag_window(window=None)Empieza a mover la ventana con el ratón (úsalo al pulsar una barra de título propia).
| Parámetro | Descripción |
|---|---|
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
minimize_window
Sección titulada «minimize_window»minimize_window(window=None)Minimiza la ventana.
| Parámetro | Descripción |
|---|---|
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
toggle_maximize_window
Sección titulada «toggle_maximize_window»toggle_maximize_window(window=None)Maximiza la ventana o la restaura si ya lo está.
| Parámetro | Descripción |
|---|---|
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
maximize_window
Sección titulada «maximize_window»maximize_window(maximized=True, window=None)Maximiza la ventana, o la restaura con maximized=False.
| Parámetro | Descripción |
|---|---|
maximized |
False la restaura. |
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
drag_resize_window
Sección titulada «drag_resize_window»drag_resize_window(direction, window=None)Empieza a cambiar el tamaño de la ventana con el ratón desde un borde o una esquina (para ventanas sin decoraciones del sistema; ui.window_frame y pz.window_edges ya lo hacen).
| Parámetro | Descripción |
|---|---|
direction |
"n", "s", "e", "w", "ne", "nw", "se" o "sw". |
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
show_window_menu
Sección titulada «show_window_menu»show_window_menu(window=None)Muestra el menú de ventana del sistema (mover, tamaño, cerrar…) bajo el puntero. Solo Windows tiene uno.
| Parámetro | Descripción |
|---|---|
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
set_fullscreen
Sección titulada «set_fullscreen»set_fullscreen(fullscreen=True, window=None)Pone o quita la pantalla completa.
| Parámetro | Descripción |
|---|---|
fullscreen |
True para pantalla completa. |
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
resize_window
Sección titulada «resize_window»resize_window(width, height, window=None)Cambia el tamaño de la ventana (píxeles lógicos).
| Parámetro | Descripción |
|---|---|
width |
Ancho. |
height |
Alto. |
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
move_window
Sección titulada «move_window»move_window(x, y, window=None)Mueve la ventana a una posición de la pantalla.
| Parámetro | Descripción |
|---|---|
x |
Posición horizontal. |
y |
Posición vertical. |
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |
focus_window
Sección titulada «focus_window»focus_window(window=None)Trae la ventana al frente y le da el foco.
| Parámetro | Descripción |
|---|---|
window |
La ventana (pz.Window). Sin ella, la que produjo el mensaje. |