Подтвердить что ты не робот

Как разбить линию в vim в нормальном режиме?

Я хотел бы сломать строку (по указанию курсора) на две строки, не выходя из нормального режима (ввод в режиме вставки или в командной строке). Возможно ли это?

В настоящее время я попадаю в нужное место и нажимаю "i", чтобы войти в режим вставки, 'enter', чтобы разбить строку на две части, затем "esc", чтобы вернуться в нормальный режим.

Я не пытаюсь установить максимальную длину строки или сделать какой-либо синтаксис или что-то в этом роде. Я просто хочу разбить одну строку на две строки, не выходя из нормального режима. "J" присоединяется к строке, в которой курсор находится на линии под ней, что удобно. Я хочу наоборот: сломать одну строку на две с помощью одной команды.

4b9b3361

Ответ 1

Попробуйте следующее:

:nnoremap <NL> i<CR><ESC>

затем просто нажмите Ctrl-J, когда вы хотите разделить строку.

Ответ 2

Я не знаю ни одной ключевой команды, но много раз я делаю "r", затем "Enter", чтобы сломать строку.

"r" заменяет текущий символ под курсором, не переходя в режим вставки. Возможно, это не то, что вам нужно, если вы не хотите заменять символ...

Ответ 3

поместите курсор в положение и...

  r<Enter>

Ответ 4

Подобно другим ответам, но не заменяет текущий символ.

R<enter>

Не требуется переназначение.

Ответ 5

Насколько я знаю, это невозможно без ввода режима вставки. Однако вы можете скомпоновать его с чем-то вроде (замените Z любой клавишей, которую вы хотите использовать)

nmap Z i<cr><esc>k$

в основном это отображает ключ "Z" для входа в режим вставки "i", вставьте карету return '<cr>', оставьте режим вставки '<esc>', поднимите строку 'k' и, наконец, перейдите к конец строки '$'

Ответ 7

Вы можете использовать запись. Поместите курсор, где вы хотите вставить разрыв строки. Введите qa, чтобы начать запись в регистр a (вы можете использовать другой регистр, отличный от a, если хотите. Затем введите i (переход в режим вставки), Return (insert newline), escape (режим вставки выхода), q (завершает запись.) Теперь вы можете вызвать эту последовательность клавиш, набрав @a (где a - номер регистра, который вы использовали при запуске записи, поэтому просто продолжайте перемещать курсор где вы хотите вставить новую строку и введите @a.