Как вставить разрыв строки, когда курсор находится без входа в режим вставки в Vim? - PullRequest
73 голосов
/ 26 октября 2008

Можно ли вставить разрыв строки, когда курсор находится в Vim, без входа в режим вставки? Вот пример ([x] означает, что курсор включен x):

if (some_condition) {[ ]return; }

Иногда я могу захотеть ввести еще какой-нибудь код. Поэтому я бы нажал i , чтобы войти в режим вставки, нажмите Введите , чтобы вставить разрыв строки, а затем удалите лишний пробел. Затем я бы вошел в нормальный режим и поместил курсор перед закрывающей фигурной скобкой, а затем сделал бы то же самое, чтобы вывести его на отдельной строке.

Я занимаюсь этим некоторое время, но, несомненно, есть лучший способ сделать это?

Ответы [ 14 ]

0 голосов
/ 20 августа 2015

В Vrapper вы можете использовать gql, который будет разбивать строку без входа в режим вставки, но не всегда будет поддерживать отступ.

0 голосов
/ 23 апреля 2015

ИМХО, встроенное отображение gs не является полезным отображением (переведите vim в спящий режим), его можно использовать для разделения:

nmap gs i<CR><ESC>
0 голосов
/ 30 июля 2011

Установите это отображение ключей в вашем vimrc

:map <C-m> i<CR><Esc>h

Затем нажмите Ctrl + m, если хотите использовать его в vim.

0 голосов
/ 26 октября 2008

Это отображение разрушит любую вашу однострочную функцию. Просто наведите курсор на линию и нажмите «g» в обычном режиме:

:map g ^f{malr<CR>`a%hr<CR>`a

Это предполагает, что у вас есть пробел после открывающей скобки и пробел перед закрывающей скобкой. Посмотрите, работает ли это для вас.

...