VIM Surround + повторить, обернуть мой текст ^ м
Вопрос
Я использую плагины Surround и Report, чтобы обернуть линии текста с тегами HTML.
Я буду использовать "Йсu003Cp> "И" ys $ $u003Cp> «Они оба работают нормально.
Я пытаюсь повторить команду с ".", И это показываетu003Cp> в терминале, но всякий раз, когда я нажимаю в Enter, чтобы выполнить команду, Surround заменяет, что должно бытьu003Cp> а такжеu003C/p> с ^ м.
Моя линия выглядит как ^ mtext здесь ^ m
Я узнаю персонаж как концом строки, но я не понимаю, почему объемность не будет обернуть мою строку с кодом, который он показывает в терминале (что правильно), но вместо этого обертывает мою линию с концовками линии DOS.
Я использую GVIM на Windows XP, если это имеет значение.
Решение
Это на самом деле, потому что <p>
не совсем там, когда вы повторяете команду с .
Попробуйте это: прежде чем повторить команду с .
Первый удар o
Чтобы опустошить область командной строки любого текста, затем нажмите .
Вы увидите, что он фактически пробел, поэтому курсор находится на первом символе.
Чтобы правильно повторить обертывание, вы им тоже должны ввести <p>
каждый раз или записывать быстрый макрос.
Макрос: ys$<p>
Вставьте это в VIM, выделите его и введите "py
Теперь вы можете запустить макрос с @p
Другие советы
surround.vim
Документация говорит:
The "." command will work with ds, cs, and yss if you install repeat.vim, vimscript #2136.
Так что если вы используете yss
Это должно работать, но, видимо, другие версии "ys
«Не поддерживаются. Звуки, как хорошая функция, требуют отправки на repeat.vim
владелец.