Как мы можем использовать vim для удаления символов с начала строки до курсора. Скажем, у нас есть строка "hello world", в то время как курсор находится на "w". Как мы можем удалить с "h" до "w".
Vi удалить с начала строки до курсора
Ответ 1
Попробуйте d0
. 0
обозначает начало строки.
Ответ 2
Я считаю, что следующее должно работать (d ^):
d^
Предполагается, что вы хотите удалить только h
, даже если перед ним есть пробел. Он покинет пустое пространство.
Ответ 3
TLDR: Самый простой способ - это сделать следующее
- использовать режим навигации
- установить курсор на любую строку, которую вы хотите
- нажмите dgg - это уберет все с курсора на начало
- нажмите dG - это удалит все строки от курсора до конца документа.
Но почему?
gg - goes to the begin of the document
G - navigates at its very end
d - delete mode
Я также искал несколько комбинаций с обозначением d и номером строки, и когда вы редактировали огромные файлы размером, например, ГБ, это показалось мне немного раздражающим. Как и в случае удаления первых 3 строк, вам нужно сделать это : 0, d3, но когда документ превышает 1 миллион строк, мне трудно читать эту чушь...
Ответ 4
Другие предложения не помогли мне, но я использовал визуальный режим для достижения этой цели.
Я переместил курсор в положение, которое я хотел удалить, и нажал v, чтобы войти в визуальный режим. Затем я нажимаю ^, чтобы вернуться к началу текущей строки, а затем d, чтобы удалить весь выделенный текст.