Ler uma linha com entrada padrão no zsh

1

Esta função pode ser usada para ajudar o usuário a inserir uma modificação de algum texto.

 function change { bash -c "read -ei \"$1\" temp && echo \$temp" }

O que é o modo idiomático zsh de fazer algo semelhante?

    
por sevo 30.05.2015 / 21:40

1 resposta

3

Com o vared incorporado.

change () {
  local temp=$1
  vared temp
  print -lr -- $temp
}

E se você quiser usar a string digitada pelo usuário mais tarde no seu script, é apenas

temp='initial value'
vared temp
    
por 31.05.2015 / 01:40