Если вы наберете Ctrl-o, то сможете использовать команду в обычном режиме, после чего вы вернетесь в режим вставки.
Некоторые другие вещи, которые я нашел полезными, это Ctrl-p и Ctrl-n, которые выполняют автозаполнение в зависимости от того, что вы набрали ранее. Очень удобно, хотя оно просто на основе строк и, следовательно, не так «умно», как IDE, которое может искать методы имен объектов или переменных, например.
Наконец, как уже упоминали другие: imap полезен для определения карт в режиме вставки. Например, если вы программируете на Java, вы можете сделать: imap $ sop System.out.println (. Затем, когда вы наберете «$ sop», он будет заменен фактическим вызовом метода. Вы также можете использовать произвольные последовательности команд , как вы бы набрали их. Пример:
:imap $top <ESC>ggO
(буквально тип "<ESC>
")
Это переведет вас в обычный режим [<ESC>
], перейдет в начало страницы [gg
] и переведет вас в режим вставки на новую строку выше текущей позиции [O
].
Как напутствие, когда вы начинаете в VIM, заманчиво оставаться в основном в режиме вставки. Тем не менее, я прочитал, а также начал учиться сам, что вы можете быть намного более эффективными, делая небольшие правки и используя инструменты для повторения действий, поиска и поиска / замены.
Мои любимые команды VIM:
* = поиск всех вхождений слова под курсором. Курсор не обязательно должен быть в начале слова.
c = Изменить ... принимает команду позиционирования. Например, cfn удаляет весь текст в текущей строке с текущей позиции до первого вхождения буквы 'n' и переводит вас в режим вставки. cw изменяет текущее слово от курсора до конца слова. И многое другое.
d, y, p - удалить, восстановить, вставить (т.е. вырезать, скопировать, вставить соответственно). Очень полезно для перемещения фрагментов кода.