Скажем, у меня есть несколько строк:
@Override
public void draw(Graphics g) {
g.setColor(Color.MAGENTA);
g.fillRect(rectangle.x, rectangle.y, rectangle.width, rectangle.height);
g.setColor(Color.BLACK);
g.drawRect(rectangle.x, rectangle.y, rectangle.width, rectangle.height);
}
Когда я хочу закомментировать их с помощью //
(я предпочитаю строчные комментарии вместо блочных комментариев), я делаю следующее:
- Поместить курсор перед символом
@
Ctrl-V
: перейти в режим выбора блока - Выбрать столбец до закрывающей скобки
}
используя несколько нажатий j
Shift-I
: для ввода вставки блока - Введите
//
ESC
для возбуждения Enter
для завершения команды
-> Строки теперь закомментированы.
Есть ли более простой способ, когда мне не нужно делать выбор блока? Я обнаружил, что могу использовать подстановку, например :'<, '>s/^/\/\///g
, но у нее есть две проблемы:
- Она очень неуклюжая и подвержена ошибкам (необходимо избегать нескольких прямых и обратных слешей)
- Он размещает символы комментария (
//
) в начале строки (позиция 0), а не в той позиции, где был первый символ этой строки (поэтому отступы теряются).
Как вставить //
в выделенные строки в позиции первого символа каждой строки, используя Vi?