Уже долгие годы я использую vim, но как и многие - я очень плохо умею использовать его мегафичи.
Вот озвученная в сабже тема постоянно решалась мной вручную и очень долго.
Но есть решение!
Итак, сначала нам нужно установить режим отступа, :с=4 означает, что 1 отступ - это 4 пробела.
После этого, выделяем построчно нужный текст используя команды - Esc, SHIFT + V, после этого увидим строку выделения и щелкаем клавишами вверх либо вниз чтобы выделить весь нужный нам текст.
После того, как текст выделен жмем SHIFT + >. И в результате этой операции текст сдвинется на 4 пробела вправо!
Ура! Цель достигнута! А вообще рекомендую использовать clang format либо язык Go + vimgo для автовыравнивания кода, чтобы вообще не беспокоится об отступах вручную.
Вот озвученная в сабже тема постоянно решалась мной вручную и очень долго.
Но есть решение!
Итак, сначала нам нужно установить режим отступа, :с=4 означает, что 1 отступ - это 4 пробела.
После этого, выделяем построчно нужный текст используя команды - Esc, SHIFT + V, после этого увидим строку выделения и щелкаем клавишами вверх либо вниз чтобы выделить весь нужный нам текст.
После того, как текст выделен жмем SHIFT + >. И в результате этой операции текст сдвинется на 4 пробела вправо!
Ура! Цель достигнута! А вообще рекомендую использовать clang format либо язык Go + vimgo для автовыравнивания кода, чтобы вообще не беспокоится об отступах вручную.
Публикую комментарий от пользователя stargrave@stargrave.org:
ReplyDeleteЕсли вам надо сделать отступ на например пяти строчках начиная с
текущей, то можно просто ввести "5>>".
Так как визуально большое количество строк (например больше 3-4) уже
мгновенно не подсчитать на экране, то очень полезно иметь включённую
относительную нумерацию строк (:set relativenumber). С ней сразу
показывается на экране фактически номер рядом со строкой который
надо ввести перед ">>" или "<<" (или любыми другими) командами.
Сдвигать можно через ex-режим, командой ">" ("<"): :.,+5> -- сдвинет
с текущей строки, на пять следующих. Соответственно тут удобно
применять метки (mark) и например начало/конец файла (%> -- сдвинуть
все строки в файле).
Если сдвинуть необходимо параграф, то есть то, что отделено пустыми
строками, то можно мощь motion-ов использовать: находясь внутри
параграфа (где угодно) "vip>" ("v" -- перейти в режим визуального
выделения, "ip" -- inner paragraph, весь параграф выделить).