Zenity multi-escolha do teclado

3

Eu estava procurando por um script zenity que oferecesse escolha entre vários comandos (opções de logout, programas). Olhando para o script discutido aqui (que usa a opção --radiolist ) eu notei que ele fornece um lista de opções que não podem ser selecionadas no teclado.

Mas o que eu encontrei aqui pode fazer exatamente isso, portanto, quero compartilhá-lo aqui. Eu acho que é útil.

    
por cipricus 05.12.2017 / 13:12

1 resposta

2

A forma geral do script (com MAIÚSCULAS para entradas editáveis) é:

#!/bin/bash

ask='zenity --list --title="WHATEVER Options" --column="0" "OPTION1" "OPTION2" "OPTION3" "OPTION4" --width=100 --height=300 --hide-header'

if [ "$ask" == "OPTION1" ]; then
    COMMAND_FOR_OPTION1
fi

if [ "$ask" == "OPTION2" ]; then
    COMMAND_FOR_OPTION2
fi

if [ "$ask" == "OPTION3" ]; then
    COMMAND_FOR_OPTION3
fi

if [ "$ask" == "OPTION4" ]; then
    COMMAND_FOR_OPTION4
fi
exit 0

Quando a janela é aberta, nenhuma opção está selecionada ainda. Para selecionar (isto é, antes de pressionar Enter para aplicar):

  • use a primeira letra (e setas se mais de uma entrada começar com essa letra) ou as primeiras letras
  • qualquer letra (ou seja, qualquer tecla, exceto Enter, Backspace, Esc etc e modificadores) para selecionar a entrada primeiro e as setas de cima para baixo para o restante.

  • Esc para dispensar.

O texto padrão "Selecionar itens da lista abaixo" pode ser editado usando a opção --text="Your text here" ; a cor e a fonte podem ser alteradas conforme indicado aqui .

    
por cipricus 05.12.2017 / 13:27