2014-11-18 3 views
3

В настоящее время, если у меня есть слово, как этоткак удалить слово, которое имеет точку в нем в Vim

bool t = someobject.someMethod() ; 

Если я хочу удалить

someobject.someMethod() 

я делаю diw на SomeObject и затем diw на someMethod, а затем используйте кнопку удаления, чтобы очистить остальные. Я хотел бы знать, что самый быстрый способ удаления всего слова

someobject.someMethod() 

ответ

3

Обычно используется верхний регистр, чтобы включать в себя специальные символы и будут удалены, пока он не достигнет белого пространства:

Dw

+0

да Diw делает трюк – MistyD

+0

я хотел бы добавить, что 'daW' также удалить косое пространство, которое полезно, если слово окружено другими словами (с 'diW', у вас будет два пробела между оставшимися словами). – ravron

4

Вы действительно хотите удалить слово? Я бы предположил, что с этим фрагментом кода вы, вероятно, захотите вместо этого изменить. У вас есть несколько вариантов:

  • Bct( изменение до ( символ. (Примечание: не нужно использовать B, чтобы перейти к началу СЛОВА)
  • BC изменить до конца строки. Там действительно не так много, чтобы спасти. (B не требуется)
  • c3iw изменение 3 внутренние слова. (Предупреждение требует подсчета и для первого слова)
  • ciW изменить СЛОВО. Примечание. Это также изменяет круглые скобки, но это небольшая цена для оплаты.

Если вы действительно хотите, чтобы сделать удаление вы можете сделать подобную команду просто заменить c с d или C с D. Другой вариант - сделать diw И повторить действие дважды с помощью команды ..

Лично я предпочитаю поиск по счету, поэтому я предпочитаю использовать Bct(, чтобы внести изменения. Однако каждый вариант имеет свою полезность в зависимости от ваших потребностей.

Для получения дополнительной справки обратитесь к разделу:

:h word 
:h WORD 
:h c 
:h C 
:h t 
:h B 
:h iw 
:h iW 
:h .