Вот примеры использования surround.vim. В обычном режиме vim поместите курсор на нужное слово (в данном случае солнечное) и введите:
ysiw
Затем введите )
So:
начальная строка:
It is sunny outside.
Конечная строка:
It is (sunny) outside.
Дополнительный пробел. Используйте открывающую скобку или квадратную скобку, например ysiw(
, чтобы окружить скобками и пробелом между скобкой и началом + концом слова)
Проще в визуальном режиме Войдите в визуальный режим, нажав v
. Теперь, если вы наберете S(
, слово будет окружено пробелами. Однако, если вы используете закрывающую )
вместо S)
, она не будет окружена пробелами.
Это относится ко всем окружениям пар скобок, <> [] {} ()
, а не только к ()
. Поведение S<
таково, что он ожидает включения тега, поэтому только S>
может окружать как <>
.
Подробнее:
Введите ysiw
, а затем }
, чтобы сделать то же самое для завитков.
Сюда же можно добавить еще несколько примеров:
введите cs('
, чтобы [c]изменить [s]окружение с ( на '
cs'(
для перехода от ' окружения к ()
ds(.
на [d]удалить (
[s]окружение полностью
Даже больше:
И почему бы не процитировать остальную часть страницы Tpope, чтобы мы не переходили по ссылке?
// начало цитаты:
Проще всего объяснить на примерах.
Нажмите cs"'
внутри
"Привет мир!" изменить его на
'Hello world!'
--
Теперь нажмите cs'<q>
, чтобы изменить его на
<q>Hello world!</q>
--
Чтобы пройти полный круг, нажмите cst"
, чтобы получить
"Hello world!"
--
Чтобы полностью удалить разделители, нажмите ds".
Hello world!
--
Теперь, когда курсор находится на «Hello», нажмите ysiw]
(iw — текстовый объект).
[Hello] world!
Давайте сделаем эти фигурные скобки и добавим немного пробела (используйте } вместо { для отсутствия пробела): cs]{
{ Hello } world!
--
Теперь заключите всю строку в круглые скобки с помощью yssb
или yss)
.
({ Hello } world!)
--
Вернуться к исходному тексту: ds{ds)
Hello world!
--
Подчеркните привет: ysiw<em>
<em>Hello</em> world!
--
Наконец, давайте попробуем визуальный режим. Нажмите заглавную V
(для линейного визуального режима), а затем S<p class="important">
.
<p class="important">
<em>Hello</em> world!
</p>
Этот плагин очень мощный для редактирования HTML и XML, ниши, которая в настоящее время кажется недостаточно заполненной в мире Vim. (В отличие от вставки HTML/XML, для которой доступно множество плагинов). Добавлять, изменять и удалять пары тегов одновременно очень просто.
Команда .
будет работать с ds
, cs
и yss
, если вы установите repeat.vim.
person
Danny
schedule
28.08.2014