Monday, September 22, 2014

[LINUX] vi의 꽃 macro(매크로) 사용법!


개인적으로 vi 사용하면서 일반적인 에디터 중에 가벼우면서 이만큼 강력한게 없는 것 같다는 느낌이 든다.
특히 코딩(C언어나 verilogHDL 다른건 안해봄) 할때는 vi는 정말 최적의 환경을 제공하는 것 같다.
따라서 그런 vi의 꽃이라고도 할 수 있는 macro(매크로)에 대해서 정리해 보고자 한다!!! 두둥

매크로라는 것은 특정한 움직임 또는 입력을 키에 저장함으로써 단순하면서 반복되는 동작을
쉽고 빠르게 해주는 것을 말한다.
vi에서 매트로는 명령어 모드에서 
q + 알파벳을 눌러 특정 알파벳에 매크로를 저장할 수 있다.

순서는
1. q + a       a키에 recording 시작
2. 반복을 위한 내가 원하는 동작
3. q             recoding 종료
4. @a          1회 실행 
or @@         방금 실행한 매크로 실행
or 10@a       매크로 10회 실행

위와 같은 순서로 매크로를 실행한다.
비교적 여기까지는 인터넷에서 손쉽게 찾을 수 있는 vi의 매크로 동작
그럼 응용 단계!
숫자 증가는 어떻게 하는가?~

1. 1 숫자 입력
2. 매크로 시작
3. 1 숫자를 복사해서 다음줄에 붙여넣기
4. 두번째줄 1에 커서를 올리고 Ctrl+a(숫자 증가)
5. 매크로 종료

위와 같이 한 후 매크로를 실행하면
1
2
3
4
5
6
.
.
.
이런 식으로 숫자가 증가하는 것을 볼 수 있다.
그럼 ? 1000000@a 이런식으로하면 ... 숫자 증가를 아주 손쉽게 할 수 있다.

더 예를 들면
2의 배수 라던지 8의 배수, 16의 배수, 32의 배수 등 증가를 쉽게 할 수 있다는 뜻 ㅠ
최근 verilogHDL 코딩하면서 vi의 매크로 기능으로 많은 시간을 아낄 수 있었기에
여기다 정리해 본다.
숫자 증가 매크로의 핵심 키는
ctrl + a (숫자 증가)
ctrl + x ( 숫자 감소)

1 comment :