Vimscript: como posso chamar uma função mas esperar pela entrada do usuário antes de executá-la?

1

No lado direito de um mapeamento de teclas, você pode fazer algo como :call FileTypeToggle("")<Left><Left> para iniciar uma chamada de função na linha de comando, mover o cursor entre aspas e esperar que o usuário preencha o argumento e acertar <CR> manualmente.

Como você pode fazer o mesmo a partir de uma função? Eu tentei um monte de permutações de execute , call , normal e nada parece funcionar. Ou recebo erros sobre caracteres finais ( <Left><Left> ) ou executa a função sem esperar pela entrada do usuário.

    
por ivan 14.01.2014 / 16:13

1 resposta

3

Use a função input ().

let cmd = input("", "call FileTypeToggle(\"\")\<left>\<left>")
exe cmd
    
por 14.01.2014 / 18:16

Tags