Когда выполняется команда :substitute
, перед выполнением фактических замеров позиция курсора сохраняется в списке переходов. Чтобы вернуться к позиции перед самым последним прыжком, можно использовать команды ``
или ''
Normal mode . В то время как первый прыгает точно в сохраненное положение, последний перемещает курсор на первый непустой символ в строке, где находится позиция .
Таким образом, чтобы быстро вернуть курсор обратно в исходное местоположение, тип `` после подстановки команд завершается.
Совместить подставляя и перемещая курсор в одну команду, выпуск
:%s/pat/str/g|norm!``
или, если это достаточно, чтобы перейти не в точном положении, но только к своей линии,
:%s/pat/str/g|''
Как как показано выше, ''
может использоваться вместо norm!''
во второй команде из-за синтаксиса диапазона команд Ex (см. :help :range
).
Не уверен в том, чтобы сделать это, не перемещая курсор, но вы можете переместить его назад, дважды нажав одну кавычку. –