Я отвечаю на этот вопрос четыре года спустя, потому что предоставленный ответ является частичным решением, которое не полностью решает исходный вопрос.
У меня точно такое же желание, как у olibre, и я хотел найти полное решение. Я подхожу к этому с другой точки зрения - я привык к редактированию строк Emacs в bash - но проблема та же. Я хочу перенести это в режим вставки Vim (только).
Далее рассматриваются все запросы на связывание клавиш в исходном вопросе, заданном olibre, плюс несколько дополнений:
" Mimic Emacs Line Editing in Insert Mode Only
inoremap <C-A> <Home>
inoremap <C-B> <Left>
inoremap <C-E> <End>
inoremap <C-F> <Right>
" â is <Alt-B>
inoremap â <C-Left>
" æ is <Alt-F>
inoremap æ <C-Right>
inoremap <C-K> <Esc>lDa
inoremap <C-U> <Esc>d0xi
inoremap <C-Y> <Esc>Pa
inoremap <C-X><C-S> <Esc>:w<CR>a
Единственные привязки, которые я не могу получить, чтобы работать в этой точке, это <Alt-B>
и <Alt-F>
, которые пропустили бы целые слова. Всякий раз, когда я связываю <Esc>
, <Alt>
или <Meta>
комбинации, gVim (v7.4 на Windows) выводит символы с ударением. Пожалуйста, не стесняйтесь редактировать этот ответ, если у вас есть решение этой проблемы. Я заставил работать комбинации Alt, основываясь на предложении другого поста просто использовать специальные символы. Я вставил их выше.
редактировать
- (редактировать не оригинальным ответным постером) -
Я использовал следующее в Neovim и Windows 10. Возможно, вам придется заменить «A» на «M» в других ОС, поскольку «alt» может быть «meta» в других местах. Я не играл с этим достаточно.
inoremap <A-x> <Esc>:
inoremap <A-f> <Esc>lwi
inoremap <A-b> <Esc>bi
inoremap <A-S-f> <Esc>lWi
inoremap <A-S-b> <Esc>Bi
<Esc>pa
было бы лучше для<C-Y>