Ответы:
Команда dwбудет удалена из текущей позиции курсора в начало следующего символа слова. Команда d$(обратите внимание, это знак доллара, а не 'S') удалит из текущей позиции курсора до конца текущей строки. Dэто синоним для d$.
dw
, но думаю, я просто предполагал, что будет команда «удалить оставшуюся часть этой строки». Например моя линия ip=|10.1.1.1
с |
тем , что расположение курсора. Есть ли команда, которая удалит все 10.1.1.1
?
d$
:!rm -f %
а затем :q!
. Это удаляет весь файл.
d^
('d' + caret) ... в основном d + любой символ, который обычно перемещает курсор, я думаю, но я сам изучаю Vim, так что я могу ошибаться.
Как уже упоминали другие: вы можете использовать d$
или D
( shift- d) для удаления от позиции курсора до конца строки.
Обычно я нахожу более полезным c$
или C
( shift- c), потому что он будет удалять из позиции курсора до конца строки и переводит вас в режим [INSERT].
D
моему мнению, это намного лучше, чем для большинства людей, поскольку это не сдвигает вас назад на пробел в конце строки.
i
вставки, который вставляется перед курсором, и a
который вставляется после курсора. Если ваш курсор находится в конце строки, и вы хотите вставить в конце строки, вы можете просто использовать a
.
Одна из приятных сторон vi - это логическая структура команд. d
сопровождаемый командой движения d выбирает цель этого движения. $
перемещается в конец строки (мнемоника: как в регулярных выражениях). Так что d$
удаляет до конца строки. Точно так же, e
двигаюсь к й ю текущего слова, и w
двигается к началу следующего ш Орд; так de
удаляет конец текущего слова, и dw
дополнительно удаляет следующий пробел.
<kbd>
для реальных ключей, а не для последовательности команд. Например <kbd>Ctrl</kbd>+<kbd>C</kbd>
, но d$
.
Возможно, вы захотите использовать D. Переместите курсор на первый символ, который хотите удалить, затем нажмите Shift-D. Все прошло На самом деле, он находится в буфере вырезания по умолчанию, так что вы можете вставить его обратно в P или p.
Я использую Dp (удалить до конца строки, затем положить его обратно), перехожу в конец какой-то другой строки, затем снова p, чтобы вставить тот же текст в конец этой другой строки. Работает чудеса в конфигурационных файлах, где вам нужно поместить несколько сложных URL-адресов в двух или более местах.
Я думаю, что ярлык режима вставки может пригодиться.
В режиме вставки может быть лучше начать менять до конца строки (поместите это на свой ~/.vimrc
):
inoremap <C-l> <C-o>C
Таким образом, у вас, как уже было сказано, Dв обычном режиме и Ctrl+ lв режиме вставки. Как вы видите, у вас также есть, Cчто начинает меняться до конца строки.
<C-o> ......... insert normal keystroke in insert mode
Я выбрал Ctrl- lпотому что l
под вашими пальцами. Ctrl- kуже используется для вставки диграфов.
Я искал :h i_Ctrl
некоторые бесплатные сочетания клавиш, и это на самом деле большая проблема, когда речь идет о создании новых ярлыков для выполнения действий в vim.
Чтобы удалить диапазон строк после позиции курсора, 3Dбудут удалены от курсора до конца строки, а также полностью следующие две строки (т.е. удаляются 3 строки после позиции курсора).
например, для следующего текста (курсор представлен как |
),
If there's a cursor |in the line
here
we
go
Использование команды 3Dвыведет:
If there's a cursor
go