Menu com ZSH (não conclusão)

1

Estou produzindo muitas funções do ZSH e gostaria de fornecer um menu interativo para permitir que eu navegue até as várias funções, reúna os dados necessários e invoque as funções. Eu escrevi algo assim para encapsular a funcionalidade do menu:

get_input(){
  local result_name=$1
  for((i=2; i <= $ARGC; i++)); do
    echo ${argv[i]}
  done
  read x
  eval "${result_name}=$x"
}

invocando assim:

test_get_option(){
  selected_option=''
  get_input selected_option 'heres the prompt' '1) opt 1' '2) opt 2'
  case $selected_option in
    1) do_option_1;;
    2) do_option_2;;
    *) echo "please choose a selection from the options above";;
  esac
}

que funciona, mas é desajeitado. O que eu prefiro é ser capaz de definir alguma estrutura hierárquica de dados (XML ou listas aninhadas ou qualquer outra coisa) para definir a árvore de opções e as funções a serem chamadas.

Alguém sabe de um sistema (ou um plugin do tipo oh-my-zsh) assim?

    
por Andrew Matthews 29.10.2015 / 03:43

0 respostas

Tags