Manual de Zenity
Manual de Zenity
Manual de Zenity
Detailed Instructions:
Step 1
Run update command to update package repositories and get latest package information.
Step 2
Run the install command with -y flag to quickly install the packages and dependencies.
Introducción
Zenity le permite crear los siguientes tipos de diálogos simples:
Calendario
Seleccionador de archivos
Formularios
Lista
Icono de notificación
Mensajes
Error
Información
Pregunta
Advertencia
Contraseña
Progreso
Entrada de texto
Información de texto
Escala
Selección de color
Uso
Cuando escriba scripts, puede usar Zenity para crear diálogos simples que interactúen
gráficamente con el usuario, como por ejemplo:
Puede crear un diálogo para obtener información del usuario. Por ejemplo, puede
pedir al usuario seleccionar una fecha de un diálogo del calendario, o seleccionar un
archivo de un diálogo de selección de archivo.
Usted puede crear un diálogo para proporcionar información al usuario. Por ejemplo,
puede usar un diálogo de progreso para indicar el estado actual de una operación, o
usar un diálogo de advertencia para alertar al usuario.
Cuando usted escriba comandos de Zenity, asegúrese de poner comillas alrededor de cada
argumento.
Por ejemplo, use:
No use:
Combinaciones de teclas
Una combinación de teclas le permite realizar una acción desde el teclado en lugar de utilizar
el ratón para elegir un comando de un menú o un diálogo. Cada combinación de teclas se
identifica por una letra subrayada en una opción del menú o de un diálogo.
«_Elija un nombre».
Códigos de salida
Zenity devuelve los siguientes códigos de salida:
Código de Descripción
salida
0 El usuario ha pulsado Aceptar o Cerrar.
Opciones generales
Todos los diálogos de Zenity soportan las siguientes opciones generales:
--title=título
--window-icon=ruta_al_icono
Especifica el icono que se muestra en el marco de la ventana del diálogo. Hay 4 iconos
disponibles, proporcionando las palabras claves siguientes - 'info', 'warning', 'question' y
'error'.
--width=anchura
--height=altura
--timeout=tiempo_de_expiración
Opciones de ayuda
Zenity proporciona las siguientes opciones de ayuda:
--help
--help-all
--help-general
--help-calendar
--help-entry
Muestra el texto de ayuda para las opciones del diálogo de entrada de texto.
--help-error
--help-info
--help-file-selection
Muestra el texto de ayuda para las opciones del diálogo de selección de archivos.
--help-list
--help-notification
--help-progress
--help-question
Muestra el texto de ayuda para las opciones del diálogo de pregunta.
--help-warning
--help-text-info
--help-misc
--help-gtk
Opciones misceláneas
Zenity también proporciona las siguientes opciones varias:
--about
--version
Opciones de GTK+
Zenity soporta las opciones estándares de GTK+. Para obtener más información acerca de las
opciones de GTK+, ejecute el comando zenity --help-gtk.
Variables de entorno
Generalmente Zenity detecta la ventana del terminal desde la que se ha lanzado y se mantiene
por encima de esa ventana. Este comportamiento se puede desactivar con la variable de
entorno WINDOWID.
Diálogo de calendario
Use la opción --calendar para crear un diálogo de calendario. Zenity devuelve la fecha
seleccionada a la salida estándar. Si no se especifica una fecha en la línea de comando, el
diálogo usa la fecha actual.
--text=texto
--day=día
Especifica el día que se selecciona en el diálogo del calendario.«Día» debe ser un número entre
1 y 31 ambos incluídos.
--month=mes
Especifica el mes que se selecciona en el diálogo del calendario. «Mes» debe ser un número
entre 1 y 12 ambos incluídos.
--year=año
--date-format=formato
#!/bin/sh
if zenity --calendar \
--title="Seleccione una fecha" \
--text="Pulse en una fecha para seleccionarla." \
--day=10 --month=8 --year=2004
then echo $?
else echo "No ha seleccionado ninguna fecha"
fi
Diálogo de contraseña
Use la opción --password para crear un diálogo de contraseña.
--username
#!/bin/sh
ENTRY=`zenity --password --username`
case $? in
0)
echo "Nombre de usuario: `echo $ENTRY | cut -d'|' -f1`"
echo "Contraseña: `echo $ENTRY | cut -d'|' -f2`"
;;
1)
echo "No iniciar sesión.";;
-1)
echo "Ha ocurrido un error inesperado.";;
esac
Diálogo de escala
Use la opción --scale para crear un diálogo de escala.
--text=TEXTO
--value=VALOR
Establezca el valor inicial. (Predeterminado: 0) Debe especificar un valor que esté entre los
valores mínimo y máximo.
--min-value=VALOR
--max-value=VALOR
--step=VALOR
--print-partial
--hide-value
Diálogo de formularios
Use la opción --forms para crear un diálogo de formularios.
--add-entry=nombre_del_campo
--add-password=nombre_del_campo
--add-calendar=nombre_del_campo
--text=TEXTO
--separator=SEPARADOR
--forms-date-format=PATRÓN
Diálogo de lista
Los datos para el diálogo deben especificarse columna por columna, fila por fila. Puede
proporcionar datos al diálogo a través de la entrada estándar. Cada entrada se debe separar
por un carácter de línea nueva.
--column=columna
Especifica el encabezado de la columna mostrada en el diálogo de lista. Debe especificar una
opción --column por cada columna que quiera mostrar en el diálogo.
--checklist
--radiolist
--editable
--separator=separador
Especifica qué cadena de caracteres se utilizará cuando el diálogo de lista devuelva las
entradas seleccionadas.
--print-column=columna
bin/sh
zenity --list \
title="Elija los fallos que quiere ver" \
column="Número del fallo" --column="Severidad" --column="Descripción" \
992383 Normal "GtkTreeView se cuelga con selecciones múltiples" \
293823 Alto "El diccionario de GNOME no manera proxys" \
393823 Crítico "El editor de menú no funciona en GNOME 2.0"
Ejemplo del diálogo de lista
Diálogo de mensaje
Para cada tipo, use la opción --text para especificar el texto que se muestra en el diálogo.
Diálogo de advertencia
Use la opción --warning para crear un diálogo de advertencia.
#!/bin/bash
zenity --warning \
--text="Desconecte el cable de eléctrico para evitar un shock eléctrico."
Ejemplo del diálogo de advertencia
Diálogo de error
Use la opción --error para crear un diálogo de error.
#!/bin/bash
zenity --error \
--text="No se pudo encontrar /var/log/syslog."
Ejemplo de diálogo de error
Diálogo de información
Use la opción --info para crear un diálogo de información.
#!/bin/bash
zenity --info \
--text="Merge complete. Combinación completa. Actualizados 3 de 10 archivos."
Ejemplo de diálogo de información
Diálogo de pregunta
Use la opción --question para crear un diálogo de pregunta.
#!/bin/bash
zenity --question \
--text="¿Está seguro de que quiere continuar?"
Diálogo de progreso
Use la opción --progress para crear un diálogo de progreso.
Zenity lee línea por línea los datos desde la entrada estándar. Si una línea se antepone con #, el
texto se actualiza con el texto en esa línea. Si una línea contiene solamente un número, el
porcentaje se actualiza con ese número.
--text=texto
--percentage=porcentaje
--auto-close
--pulsate
Especifica que la barra de progreso pulse hasta que se lea un carácter EOF desde la entrada
estándar.
#!/bin/sh
(
echo "10" ; sleep 1
echo "# Actualizando los registros de los correos" ; sleep 1
echo "20" ; sleep 1
echo "# Reiniciando las tareas de cron" ; sleep 1
echo "50" ; sleep 1
echo "Esta linea se ignorará" ; sleep 1
echo "75" ; sleep 1
echo "# Reiniciando el sistema" ; sleep 1
echo "100" ; sleep 1
)|
zenity --progress \
title="Actualizando los registros del sistema" \
text="Rastreando los registros de los correos..." \
percentage=0
if [ "$?" = -1 ] ; then
zenity --error \
text="Actual
ización cancelada."
fi
Ejemplo de diálogo de progreso
--filename=nombre_de_archivo
--multiple
--directory
--save
--separator=separador
Especifica la cadena que se usará para dividir la lista de nombres de archivo devuelta.
#!/bin/sh
FILE=`zenity --file-selection --title="Select a File"`
case $? in
0)
echo "\"$FILE\" seleccionado.";;
1)
echo "No ha seleccionado ningún archivo.";;
-1)
echo "Ha ocurrido un error inesperado.";;
esac
--color=VALOR
--show-palette
Mostrar la paleta
#!/bin/sh
COLOR=`zenity --color-selection --show-palette`
case $? in
0)
echo "Ha seleccionado $COLOR.";;
1)
echo "No ha seleccionado ningún color.";;
-1)
echo "Ha ocurrido un error inesperado.";;
esac
Ejemplo del diálogo de selección de color
Más información
Diálogo para la entrada de texto
Use la opción -entry para crear un diálogo de entrada de texto. Zenity devuelve a la salida
estándar el contenido del texto introducido.
--text=texto
--entry-text=texto
--hide-text
#!/bin/sh
if zenity --entry \
--title="Añadir un perfil nuevo" \
--text="Escriba el nombre del perfil nuevo:" \
--entry-text "NewProfile"
then echo $?
else echo "No ha especificado ningún nombre"
fi
--filename=nombre_de_archivo
--editable
Permite que el texto mostrado sea editado. El texto editado se devuelve por la salida estándar
cuando el diálogo se cierra.
--font=TIPOGRAFÍA
--checkbox=TEXTO
Activar una casilla para usarla como «He leído y acepto los términos».
--html
--url=URL
#!/bin/sh
# Debe copiar el archivo "COPYING" en la misma carpeta que este script.
FILE=`dirname $0`/COPYING
zenity --text-info \
--title="Licencia" \
--filename=$FILE \
--checkbox="He leído y acepto los términos."
case $? in
0)
echo "Comenzar instalación"
# siguiente paso
;;
1)
echo "Detener instalación"
;;
-1)
echo "Ha ocurrido un error inesperado."
;;
Esac
Ejemplo del diálogo de texto de información
Icono de notificación
Use la opción --notification para crear un icono de notificación.
--text=texto
#!/bin/sh
zenity --notification\
--window-icon="info" \
--text="Hay actualizaciones necesarias para su sistema"
Ejemplo de icono de notificación
#!/bin/sh
cat <<EOH| zenity --notification --listen
message: este es el mensaje de texto
EOH
Ejemplo de icono de notificación con --listen