vi 에서 여러 라인 앞쪽에 탭을 삽입할 수 있는지요..

sharefeel의 이미지

코딩하다가 자주 부딪히는 문제라고 생각합니다.
예를 들어보겠습니다.

제가 우선 다음과 같은 소스를 짰습니다.

int manylinefunc(void){
  printf("하하");
  /* 100여라인 쯤... */
  a = b;
  return a;
}

근데 만약 다음과 같이 if를 삽입하고 싶다면 어떻게 하시는 지요..?

int manylinefunc(void){
  if (조건){
    printf("하하");
    /* 100여라인 쯤... */
    a = b;
  }
  return a;
}

저는 아직 방법을 몰라서 100여라인을 따라가며 일일이 탭을 쳐넣고 있습니다.
물론 함수로 만든다던가 하면 되겠지만..
그런 방법은 논외로 하구요..

다른 분들도 이 문제에 많이 부딪히실 거라고 생각하는데요.. :lol:
VC혹은 많은 에디터에서 shift + 화살표 키로 선택 => tab
하는 것처럼 간단히 vi에서도 탭을 삽입할 수는 없을까요?

cdpark의 이미지

'>' 명령과 '<' 명령이 있습니다.

vim을 쓴다면 Shift-V로 원하는 block을 잡고 > 를 눌러보세요.

nanosec의 이미지

저는 비주얼 라인모드

shift + v

에서 블럭 설정하고 = 눌러 자동으로 정렬시키는 방법으로 합니다.

아니면 일반 모드에서

100= 친후 아래화살표를 한번 눌러주면 101라인이 말끔이 정렬 됩니다.

이방법을 알고 요긴하게 쓰고 있습니다. ^^

0x2B | ~0x2B
- Hamlet