Сдвиньте блок выбранного кода вправо
Я использую VIM. Вот моя ситуация:
1111111111111
2222222222222
3333333333333
4444444444444
Выше оригинального кода, я хочу сделать их, как показано ниже. После того, как я выберу эти четыре строки, что мне следует сделать, чтобы сместить их?
1111111111111
2222222222222
3333333333333
4444444444444
С наилучшими пожеланиями,
Ответы
Ответ 1
В командном режиме вы можете использовать >>
для отступов одной строки. 4>>
будет отступать текущая и следующая три строки.
Если вы не знаете, сколько строк заранее (оно может быть довольно большим), вы можете использовать диапазоны. Перейдите в первую строку диапазона и введите ma
, чтобы поместить маркер A. Затем перейдите к последней строке и введите >'a
в отступ отсюда до отметки A. Вы можете делать всевозможные чудесные вещи с диапазонами.
Как они отступают, зависит от нескольких вещей, таких как настройки ширины. У меня всегда есть настройки shiftwidth и tabstop, чтобы избежать проблем:
:set ts=4 sw=4
(например).
Ответ 2
Если вы уже выбрали четыре строки в визуальном режиме: >
сдвинет их shiftwidth
вправо. После их смещения визуальный выбор исчезнет, но вы можете снова отступить через .
(повторить последнюю команду).
Если вы обычный режим, с курсором в любой точке первой строки:
-
>>
будет отступать эта строка,
-
4>>
будет отступать все четыре строки,
-
>3j
будет делать то же самое по-другому (отступ от этой строки до трех строк вниз),
-
>}
будет отступать все строки до конца абзаца (т.е. до первой пустой строки, см. :help object-motions
) и
-
>ap
будет отступать все строки для a p -aragraph (см. :help text-objects
), даже если ваш курсор не находится в первой строке.
Опять же, вы можете повторить эти команды через .
для более глубоких уровней отступов (или вы можете установить shiftwidth
соответственно).
Если ваш файл красиво составлен из "абзацев" (и большая часть моего кода и прозы), я думаю, вы найдете текстовый объект ap
наиболее распространенным способом работы с блоками текста это. Вы также можете использовать text-objects
для ускорения визуального выбора.
Ответ 3
Нажмите >
Что все.
Ответ 4
Используйте v для выбора блока, а затем нажмите клавишу > .
Ответ 5
Используйте клавишу >
.
Ответ 6
Для меня число должно быть после, например >>4
, для перемещения вправо или раньше, например 4<<
, для перемещения влево. Я использую Vim 7.4.52.