Часто я хочу удалить что-то в Vim, не перемещая его в реестр. Есть ли способ сделать это? Я считаю, что необходимость явно указывать регистр "a
иногда бывает немного.
2 ответа
Похоже, что вы на самом деле задаете два связанных вопроса здесь:
- Вы хотите удалить текст, не появляясь ни в одном регистре
- Вы хотите иметь возможность указать регистр по умолчанию, отличный от
"
Первый из них можно сделать, просто использовать _
регистр, который называется "черная дыра" регистр, вместо того , чтобы что - то вроде регистра. Например: a
Второе не может быть сделано, насколько я знаю.
Смотрите :help registers
.
Вы всегда можете сделать что-то вроде этого:
nnoremap d "_d
vnoremap d "_d
Но я бы не советовал: Vim по умолчанию должен оставаться таким, какой он есть.
Вместо "_d
я использую эти сопоставления для удаления в регистр черной дыры:
nnoremap <leader>d "_d
vnoremap <leader>d "_d
Это только на одну клавишу короче, но это лучше, чем перезапись Vim по умолчанию.
Я использую это отображение, когда мне нужно вставить что-то несколько раз:
vnoremap <leader>p "_dP
Который идет так:
10 yank something
20 select something else
30 paste over it
40 GOTO 20