Есть ли простой способ удалить текст между двумя тегами?
<span>How can I delete this text?</span>
Спасибо!
Ответ 1
dit удалит текст между соответствующими тегами XML. (it для "внутреннего блока тегов".)
См. :h it и :h tag-blocks.
Ответ 2
cit
ci"
Две из лучших команд для повышения производительности vim.
Я экономлю много времени и сил только с этими двумя.
Ответ 3
попробуйте dt <, пока курсор находится на первом символе для удаления. В вашем примере "H".
Ответ 4
(курсор на первый символ для удаления)
v/< [ввод] д
Это решение начинается с первого символа, затем переходит в визуальный режим ( "v" ). Затем он ищет следующую скобку начала ( "/<" ), а затем нажмите "Enter", чтобы завершить поиск.
В этот момент ваш визуальный выбор будет охватывать текст для удаления. нажмите d ( "d" ), чтобы удалить его.
Если бы мне пришлось сделать это для кучи тегов, я бы записал эту команду и объединил ее с другими поисковыми запросами, чтобы сделать ее повторяемой. Последовательность клавиш может выглядеть так:
[курсор на начало файла]
ОК /" > [войти] лв /< [ввод] dnq
затем нажмите:
20 @а
сделать это для 20 тегов
Ответ 5
Если вы пытаетесь сделать обратное удалению текста между флагами, я предлагаю установить Vim-Surround и запустить dst, который удаляет тег окружения