Ответ 1
Примечание. Для этого решения требуется встроенный плагин, на который ссылается вопрос.
В вашей конкретной ситуации вы можете сделать следующее:
cs()
Это изменяет foo( bar )
на foo(bar)
, однако это не общее решение вашей проблемы.
Я использую awesome https://github.com/tpope/vim-surround плагин, чтобы окружать слова скобкой, например, я часто использую: viws<space><space>
, чтобы окружать слово пробелами.
То, что мне не хватает, - это противоположность этого, т.е. удаление окружающих пространств вокруг слова.
Наиболее частое использование для меня - это аргументы функции, такие как foo (bar) vs foo (bar) в зависимости от стиля кода.
Кто-нибудь знает хороший способ сделать это?
Примечание. Для этого решения требуется встроенный плагин, на который ссылается вопрос.
В вашей конкретной ситуации вы можете сделать следующее:
cs()
Это изменяет foo( bar )
на foo(bar)
, однако это не общее решение вашей проблемы.
Я часто продуманно затягиваю в поисках плагинов vim, когда я мог просто определить для этого сопоставление.
nnoremap <leader>dd F<space>xf<space>x
ИЗМЕНИТЬ больше информации
<leader>
общий ключ для пользовательских сопоставлений (,
является хорошим)
dd
для использования (любой другой мнемонический будет достаточно)
F<space>x
искать назад для пробела, а затем удалить его
F<space>x
искать вперед для пробела, а затем удалить его
Возможно, просто BXElx
в нормальном режиме.
На самом деле идеальным решением для меня является отображение, предоставляемое @puk, но с учетом ожидаемых в первую очередь ключей @sarnold (чего можно было бы ожидать от плагина окружения, если бы это реализовано).
Это:
nnoremap ds<space> F<space>xf<space>x