Vim 녹화 란 무엇이며 어떻게 비활성화 할 수 있습니까?


761

recordinggVim 7.2 창의 맨 아래에 메시지가 계속 나타납니다 .

무엇이며 어떻게 끄나요?


55
vim 녹음을 해제하려면 map q <Nop>.vimrc 파일에 추가 하십시오.
Joey Adams

4
녹음을 끄고 싶다고 믿을 수 없습니다! 나는 정말 성가신 팝업을 보여줄 것입니다. 하나를 끄라고 요청하는 경우 (또는 Windows 10 업데이트와 같은 옵션을 제공하려는 경우).
0xc0de

답변:


1054

녹음을 시작 q<letter> 하고 q다시 입력하여 녹음을 종료 할 수 있습니다 .

녹음은 Vim의 유용한 기능입니다.

입력 한 모든 내용을 기록합니다. 그런 다음을 입력하여 간단하게 재생할 수 있습니다 @<letter>. 기록 검색, 이동, 교체 ...

Vim IMHO의 가장 큰 특징 중 하나입니다.


109
다른 곳에서 볼 수 있듯이 q 다음에 레지스터가옵니다. 이것의 정말로 멋진 (그리고 직관적이지 않은) 부분은 이것들이 delete, yank 및 put과 같은 것들에 의해 사용되는 것과 동일한 레지스터라는 것입니다. 즉, 편집기에서 텍스트를 레지스터로 가져 와서 명령으로 실행할 수 있습니다.
Cascabel

68
한가지 더 주목해야 할 점은 @ 앞에 숫자를 두어 (100 @ <letter>)와 같은 여러 번 동작을 100 번 재생할 수있는 기록을 재생할 수 있다는 것입니다.
Tolga E

7
put / yank로 레지스터를 편집하여 나중에 추가 할 수 있습니다. 그러나 왜 매크로의 일부로 녹화를 켜고 끄고 싶은지 모르겠습니다. ( 'q'는 삽입 모드에서 입력 할 때 아무 영향을 미치지 않습니다.)
anisoptera

3
@Wade- "기본 레지스터라고합니다.
Cascabel

4
and how to turn off또한 질문이었습니다
n611x007

103

:h recording자세히 알아 보려면 입력하십시오 .

                           * q *  * recording * 
q {0-9a-zA-Z "} 형식화 된 문자를 레지스터 {0-9a-zA-Z"}에 기록
                        (대문자 추가). ' q '명령이 비활성화되었습니다
                        실행하는 동안 등록을 하고, 그것은 내부 작동하지 않습니다매핑 . {Vi : 기록 없음}

Q                        중지 녹음 . (구현 메모 : ' q '
                        중지 기록 에 기억되지 않은 레지스터 않으면,
                         그것은 (A)의 결과였다 매핑 ) {바이 없음 기록}


                                                        * @ *
@ {0-9a-z ". = *} 레지스터 {0-9a-z" 의 내용을 실행합니다 . = *} [count] 
                        번. 참고 레지스터 ' % 현재의'(이름을
                        파일) 및 ' # '(대체 파일 이름)은
                        익숙한. " @ = "의 경우  을 입력하라는 메시지가 표시됩니다
                         . 결과의 표현은 다음이다
                        처형. 참조 | @ : |. {Vi : 명명 된 레지스터 만}


31

입력하면 q매크로 기록이 시작되고 사용자가 q다시 충돌하면 기록이 중지됩니다 .

Joey Adams가 언급했듯이 기록을 비활성화하려면 .vimrc홈 디렉토리에 다음 줄을 추가하십시오 .

map q <Nop>

11
질문의 "끄는 방법"에 대해서만 답변하십시오. 글쎄, 그것은 기록에 액세스 할 수 없게 만들고, 효과적으로 끕니다-적어도 vi 가이 코드에 대해 별도의 스레드를 가질 것으로 기대하는 사람은 아무도 없습니다.
n611x007

25

다른 사람들이 말했듯이 매크로 기록이므로 q로 끄십시오. 방법과 유용한 이유에 대한 좋은 기사 가 있습니다.


15

"매크로 기록"모드에 있다는 것을 의미합니다. 이 모드는 q레지스터 이름을 입력하여 입력 한 다음 q다시 입력하여 종료 할 수 있습니다 .


실제로 q는 0-9, az, AZ, "등의 레지스터 이름을 입력하여 입력 합니다.
ephemient

3
실제로, 그것은 q {0-9a-zA-Z "}입니다-매크로를 임의의 레지스터 (숫자, 문자,"로 명명)에 기록 할 수 있습니다. 실제로 사용하고 싶다면 @ <register>로 레지스터의 내용을 실행하십시오. 참조 :help q하고 :help @당신이 그것을 사용에 관심이 있다면.
Cascabel
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.