Часто при разработке я сталкиваюсь с вложенным объектом, который я хотел бы удалить из кода в середине строки, например:
htmlDoc.WriteLine("<b><h3>" + this.cbAllSyncs.SelectedItem.ToString() + "</h3></b>");
Часть, которую я хотел бы удалить:
this.cbAllSyncs.SelectedItem.ToString()
Я знаю, что могу посчитать количество слов и периодов и ввести, 7dwчтобы удалить из моей текущей позиции курсора «это». Однако, то, что я хотел бы сделать, не нужно вообще считать и удалять в пространство одной командой. Это возможно?
df<space>
удаляет до и включая следующий пробел.t
чтобы удалить до такого количества символов. напримерd2t<space>
, удалит до двух пробелов.t
как «до stackoverflow.com/questions/7409134/…Вы можете использовать dWили dEкак @glenn предложил, если вы не хотите удалять само пространство.
СЛОВО (верхний регистр W) , состоит из последовательности символов , кроме пробелов, разделенные пробелами.
Посмотрите на слово движения .
источник
dE
- удалить до конца последовательностиОдним из возможных решений является использование удаления с поиском.
поэтому введите
d/<space>
и vim будет удалять, пока не попадет в пробел.источник
dW
потому, что вы также можете использовать его для удаления из курсора любого символа, например2d/+
, в данном случае - который также удалит конкатенации строк.Если вы хотите удалить из любого места внутри WORD, и в одной команде, просто используйте
daW
(вы можете, конечно, использовать, dawесли вы хотите ограничиться словом)
Я использую это довольно часто, потому что это избавляет от перехода к началу слова (в вашем случае)
источник
удалить текущую позицию для конкретного примера символа "
удалить слово из позиции курсор включен до конца слова
удалить все слово, на котором находится курсор, независимо от положения курсора на слове, это также переводит вас в режим вставки, чтобы вы могли вставить его немедленно.
источник
dtspaceэто ответ на ваш вопрос, но, df+похоже, это решит вашу проблему лучше.
источник