Часто при редактировании кода я выбираю блок в визуальном режиме и выполняю поиск и замену блока. Однако после внесения изменений он покидает визуальный режим. Как вы делаете новую находку и заменяете ту же самую подборку?
vim
text-editors
text-editing
лабиринт
источник
источник
Ответы:
Вы можете повторно выбрать последнюю выбранную визуальную область с помощью
gv
.источник
:help
".:help select-visual
должен привести вас к правильному руководству внутри vim @skywinder.gv
это, безусловно, самый быстрый метод (используйте последний выбор), но если вы хотите сохранить сохраненный регион выделения (или несколько), вы всегда можете создать макросы.Допустим, я хочу сохранить выбор моего текущего метода, который идет из строк 25-35. Я могу создать макрос, который выбирает весь метод, набрав
Затем я могу вернуть этот выбор, набрав
@a
(запустить макрос в регистре а). Повторите с любым регистром, строками или секциями линий, которые вы хотите. Очевидно, что если вы вносите изменения в файл, выбор также может измениться, поэтому вы можете рассмотреть возможность использования меток вместо «жесткого кодирования» номеров строк.источник
gv
отлично работает для восстановления последнего выбора. Но иногда нужно немного больше.Если вам когда-нибудь понадобилась более постоянная запись, посмотрите этот плагин, над которым мы сейчас работаем, на GitHub.
VisualMarks позволяет сохранять и восстанавливать визуально выбранные области так же, как вы сохраняете и отмечать определенные места в ваших файлах
m
. После установки и с параметрами по умолчанию используйте:в визуальном режиме, чтобы сохранить текущий выбор, чтобы пометить
a
, затемв обычном режиме, чтобы вернуться к этому выбору.
источник
mkview
но .. я думаю, да, так как оценки сохраняются в отдельном файле и .. Я предлагаю вам попробовать в любом случае :) Если они не сохраняются, как вы хотите, мы будем рады получить вашу функцию запросите на GitHub и попробуйте его обработать.Предположим, я хотел заменить Goodbye на Hello, и был выбран код ниже:
Я бы
:s/Goodbye/Hello/
набрал и vim заменит все экземплярыGoodbye
сHello
Это просто сочетание регулярных выражений vim и выбора визуального режима. Когда вы выбираете, он должен заполнить автоматически
'<,'>
источник
gv
и ваш визуальный режим вернется к предыдущему состоянию выбора.