через call?
Как вообще узнавать какая функция скрыта за подобной конструкцией?
В vim не за каждой командой скрыта функция — это не emacs. Более того, не за каждой операцией в нормальном режиме скрыта функция/команда
Зачем именно через call? Если нужно как callback передавать, можно просто сделать функцию, внутри которой вызывается :redo
Ну, у меня проблема XY, на самом деле))) На телефоне прокрутка почему-то работает только на "" phone scroll up silent! unmap <C-r> map <C-r> <C-Y> nmap <C-r> <C-Y> imap <C-r> <C-Y> И исторически в моем конфиге :redo было замаплено на noremap <c-y> <C-R> inoremap <c-y> <C-O><C-R> Вот я и замапил на noremap <c-y> :redo<CR> inoremap <c-y> :redo<CR> Но подбешивает, что нужно выходить в нормальный режим, чтобы сделать redo ```
Я так понимаю, что с тем, что vim интерпретирует scroll up от termux как ^R уже ничего не сделаешь, правильно? Поэтому от этого не получится избавиться "" phone scroll up silent! unmap <C-r> map <C-r> <C-Y> nmap <C-r> <C-Y> imap <C-r> <C-Y> верно?
Если ничего нельзя сделать c ^R, то как можно сделать, чтобы работал :redo в insert режиме? Пробовал через execute 'redo\<C-R>' , но не завелось
Если из режима ввода надо выполнить normal операцию, надо перед ней поставить <C-O
Понял. Туплю. Спасибо
Ну вообще прокрутка в termux должна интерпретироваться как <ScrollWheelUp>, но в конфиге термукса она мапится в <C-Y>, чтобы прокрутка ровно на 1 строку была
Или <Cmd>
Чтобы правильно интерпретировать \<key>, надо двойные кавычки использовать
Или так, если версия поддерживает
Ну, пока зарешало <C-O>
А как вывести какие клавиши нажимаются? Хочу найти этот scroll up
Vim docs for i_CTRL-V: https://vimhelp.org/insert.txt.html#i%5FCTRL%2DV [summoned by @Vft_dan]
Vim docs for getchar(): https://vimhelp.org/eval.txt.html#getchar%28%29 [summoned by @Vft_dan]
Вроде, помогло
Обсуждают сегодня