Я знаю, как использовать vкоманду в vim, но мне нужно что-то, что удалит всю строку, и это позволит мне вставить эту же строку куда-нибудь еще.
Я знаю, как использовать vкоманду в vim, но мне нужно что-то, что удалит всю строку, и это позволит мне вставить эту же строку куда-нибудь еще.
Ответы:
Нажатие Shift+ vвыделит всю эту строку, а нажатие dудалит ее.
Вы также можете использовать dd, который не требует входа в визуальный режим.
ddлегче чем shift + v->d
ddв командном режиме (после нажатия escape) обрежет строку, pв командном режиме вставит.
Обновить:
Для получения бонуса, dа затем движение будет вырезать эквивалент этого движения, поэтому dwбудет вырезать слово, d<down-arrow>разрезать эту линию, а линия ниже, d50wразрезать 50 слов.
yyэто строка копирования, и работает как dd.
D разрезает от курсора до конца строки.
Если вы использовали v(визуальный режим), вы должны попробовать V(режим визуальной линии) и <ctrl>v(режим визуального блока).
Pчтобы вставить строку перед курсором в командном режиме. И <Ctrl-R>"вставить строку в режиме вставки.
]pвставить с правильным отступом. Но мы должны быть осторожны, чтобы не публиковать здесь все руководство по vim :).
Есть несколько способов обрезать линию, все они контролируются dклавишей в обычном режиме. Если вы используете визуальный режим ( vклавиша), вы можете просто нажать dклавишу, как только выделите область, которую хотите вырезать. Переместитесь в место, которое вы хотите вставить, и нажмите pклавишу для вставки.
Также стоит упомянуть, что вы можете копировать / вырезать / вставить из регистров. Предположим, вы не уверены, когда и где вы хотите вставить текст. Вы можете сохранить текст до 24 регистров, обозначенных буквой алфавита. Просто добавьте в свою команду '(одинарную кавычку) и регистрационную букву (через z). Например, вы можете использовать визуальный режим ( vключ), чтобы выбрать какой-то текст, а затем набрать 'adтекст, чтобы вырезать текст и сохранить его в регистре «а». Как только вы перейдете к месту, куда вы хотите вставить текст, вы наберете текст, 'apчтобы вставить содержимое регистра a.
Удалить текущую строку и скопировать в буфер обмена:
d + d
Вставьте содержимое буфера обмена :
(Удерживать) Shift+P
Допустим, вы хотели сократить линию bbb и вставить ее под линию---
Перед:
aaa
bbb
---
После:
aaa
---
bbb
bbb---Да, используйте dd в командной строке. Также я рекомендую распечатать полезное изображение с помощью горячих клавиш ViM, доступных на http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html