Vimscript: как я могу вызвать функцию, но дождаться пользовательского ввода перед ее выполнением?
В правой части раскладки клавиш вы можете сделать что-то вроде :call FileTypeToggle("")<Left><Left>
чтобы начать вызов функции в командной строке, переместите курсор между кавычками и подождите, пока пользователь заполнит аргумент и нажмите <CR>
вручную.
Как вы можете сделать то же самое из функции? Я пробовал кучу перестановок execute
, call
, normal
и ничего не работает. Я либо получаю ошибки о конце символов (<Left><Left>
) или выполняет функцию, не дожидаясь ввода пользователя.
1 ответ
Решение
Используйте функцию ввода ().
let cmd = input("", "call FileTypeToggle(\"\")\<left>\<left>")
exe cmd