Удалить до первого символа в следующей строке - PullRequest
2 голосов
/ 17 октября 2019

У меня есть код, который выглядит следующим образом:

DataAssociator::Impl::Impl(const VoxelHasherSettings& settings_voxelhasher,
                           const CameraSettings& settings_camera)
{
    initialize(settings_camera);
}

Когда я позиционирую свой курсор на c первого const и нажимаю либо +, либо <CR>, я перехожу кследующий const.

Однако нажатие d+ / d<CR> удаляет слишком много и оставляет следующее:

{
    initialize(settings_camera);
}
  1. Почему это так?
  2. Как мне добиться эффекта удаления до первого символа в следующей строке?

Я использую neovim.

Заранее спасибо, Ричард

Ответы [ 2 ]

5 голосов
/ 17 октября 2019

Когда вы проверяете :help +, это упоминает также . Поэтому, когда вы используете + в обычном режиме, он перемещается (как задокументировано) к первому непустому, но после оператора (например, d или y) все затронутые строки будут включены по умолчанию.

Вы можете изменить это поведение по умолчанию в каждом конкретном случае с помощью :help o_v: так dv+ вместо d+.

В качестве альтернативы, вы можете сначалаперейти в визуальный режим;выбор предоставит отзыв о том, какой текст вы будете охватывать: v+d. Сложность здесь заключается в том, что в зависимости от настроек 'selection' это может привести к выбору одного символа слишком много (с выбором по умолчанию inclusive).

1 голос
/ 17 октября 2019

Еще один вариант для этого конкретного случая: D J x

...