Recording

recording의 핵심은 패턴을 잘 설정하는 것이다.

사용법

  1. q와 매크로로 설정할 키(a)를 누른다. 그러면 하단 상태바에 recording @a 라고 표시된다.
  2. 매크로로 설정한 행동(?)을 한다.
  3. q를 눌러 레코딩을 종료한다.
  4. @ + 매크로로 설정할 키(a)를 누르면 매크로가 실행된다.

사용 예시

다음과 같은 코드가 있다고 가정하자

a = 0
b = 1
c = 2
d = 3

위 코드를 다음과 같이 바꾸고 싶다.

{
    ‘a’ : 0,
    ‘b’ : 1,
    ‘c’ : 2,
    ‘d’ : 3,
}

이것을 그냥 바꾸려면

  1. 맨 위와 아래에 {, }를 삽입하고
  2. 각 라인별로 탭을 삽입하고, a 는 ‘a’로 = 는 : 로 바뀌고 줄끝에 , 를 삽입하면 된다.

1번을 수행하고 아래처럼 되어있는 상태에서 이제 2번을 수행하면 되는데 이때 Recording을 사용하자

{
a = 0
b = 1
c = 2
d = 3
}

커서를 2번 째 라인 맨 앞에 두고 레코딩을 시작하자.

  1. 레코딩 시작(q) + 매크로로 설정할 키 입력(a)

q + a

  1. INSERT MODE 진입 + 탭 입력 + ‘ 입력 후 [ESC]

i + [TAB] + ‘ + [ESC]

  1. key 값이 될 문자의 끝으로 이동(e) 후 ‘ 입력

e + a + ‘ + [ESC]

  1. = 를 : 로 리플레이스

/= [ENTER] + r + :

  1. 라인 맨 끝에 , 삽입

$ + a + , + [ESC]

  1. 다음 매크로를 위해 다음 줄 처음으로 커서 이동

j + ^

  1. 레코딩 종료(q)

q

커서가 3번 쨰 줄 맨 앞에 있는 상태가 되어있을 텐데 이제 매크로를 실행하면 된다.

{
    'a' : 0,
b = 1
c = 2
d = 3
}

@ + a 를 누르면 매크로가 실행할 수 있다.

숫자 키와 조합하면 매크로를 몇번 실행할지도 설정할 수 있는데 3번을 더 하기 위해 3@a로 실행한다.

{
    'a' : 0,
    'b' : 1,
    'c' : 2,
    'd' : 3,
}

성공!