Я хочу найти $maximumTotalAllowedAfterFinish
и заменить его на $minimumTotalAllowedAfterFinish
. Вместо того, чтобы вводить длинный текст:
:%s/$maximumTotalAllowedAfterFinish/$minimumTotalAllowedAfterFinish/g
Есть ли способ скопировать эти длинные имена переменных в строку поиска, поскольку в командной строке я не могу ввести " p
" для вставки?
$
потому что этот знак означает конец строки.\V
любое место в шаблоне поиска для отключения «магических» символов.Ответы:
Вы можете вставить содержимое нумерованного или именованного регистра, набрав CTRLR
{0-9a-z"%#:-=.}
. Набрав, CTRL-R CTRL-Wвы можете вставить текущее слово под курсором. Видеть:Чтобы получить больше информации.
источник
CTRL
+R
+
(что касается содержимого буфера обмена)0
Регистр содержит последнюю строку-рывок.Скопируйте его как обычно, затем CtrlR"вставьте. Есть много других CtrlRярлыков (например, калькулятор, текущее имя файла, содержимое буфера обмена). Введите,
:help c_<C-R>
чтобы увидеть полный список.источник
Копировать:
1)
v
(или выделить мышью в визуальном режиме)2)
y
(дернуть)Вставить:
1)
/
(режим поиска)2)
Ctrl + R + 0
(вставить из извлеченного регистра)источник
Введите,
q:
чтобы перейти в режим редактирования истории в новом буфере. Затем отредактируйте последнюю строку буфера и нажмите,Enter
чтобы выполнить ее.источник
q/
также полезен для доступа к истории поиска и вставки новых поисков.Или создайте команду в буфере vim, например введите ее в буфер:
И скопируйте его в именованный регистр с помощью
"ayy
(если курсор находится на этой строке!).Теперь вы можете выполнить содержимое регистра "
a
" из командной строки Vim Ex с помощью:Я использую это все время.
источник
Как правило, это делается с помощью выбора мыши (возможно, CtrlInsили CtrlCпосле выбора), а затем, когда вы находитесь в строке команд / поиска, щелчком средней кнопки мыши (или ShiftInsили CtrlV).
Другой способ - написать свою командную строку / строку поиска в текстовом буфере со всеми возможностями редактирования, доступными в текстовых буферах, начиная с
:
и все, а затем в строке выполните:который сохранит всю командную строку в буфере
a
, а затем выполнит ее. Однако он не будет сохранен в истории команд.Попробуйте создать следующую строку в текстовом буфере в качестве примера нажатия клавиш выше:
Наконец, вы можете войти,
q:
чтобы войти в редактирование истории в текстовом буфере.источник
Вы можете поместить курсор на слово, которое хотите добавить в свой образец, и затем нажать /или, :чтобы войти в режим поиска или командный режим, а затем нажмите, CtrlRCtrlWчтобы скопировать слово. Источник
источник