Vim 명령 모드 완료 단어


12

명령 모드에서 Vim을 사용하여 현재 파일에서 단어를 완성하는 방법이 있습니까? 이 파일이 있다고 가정 해보십시오.

one
two
three
once

명령 행 모드로 들어갑니다

:myruncommand o|

여기서 |커서 위치를 나타냅니다. Vim을 완료 one하거나 onceTab 키를 누를 때 어떻게합니까 ?



스크립트 설명에서 인용 : " ':'모드에서 완료는 '/'후에 만 가능합니다." 내가 정말로 필요한 것은 아닙니다.
Nickolay Kolev

답변:



5

jamesc의 대답 이 가장 편리하지만 명령이나 검색 문자열에 자동 완성 기능을 사용하거나 버퍼에서만 사용할 수있는 다른 기능을 미리 알고 싶을 때 적절한 버퍼를 얻는 또 다른 방법이 있습니다. :

  • q :명령 버퍼를 열려면 입력 하십시오
  • 입력 a새로운 명령을 입력 시작합니다 : myruncommand o
  • jamesc의 답변과 마찬가지로 키워드 완성에 Ctrl+ N/ Ctrl+ P를 사용하십시오.

기본적 q :으로 : Ctrl+ 와 동일한 기능을 수행합니다 F. 버퍼에 텍스트를 입력하는 것처럼 명령을 입력 할 수 있습니다. 이와 유사하게, q /그리고 / Ctrl+ F는 버퍼에 검색 문자열을 입력하자 모두.


좋은 대답입니다. 커맨드 버퍼는 확실히 더 잘 사용하고 싶은 것입니다.
jamesc

@ jamesc : 도움이되어서 다행입니다. 에 대해 몰랐 Ctrl+F으므로 귀하의 답변도 저에게 도움이되었습니다.
Michael Scheper

3

'tab'을 사용하여 기본적으로 완료 할 수는 없지만 다음과 같은 가능성이 있습니다.

  • 명령 행 모드에서 원하는 명령을 입력하십시오. 위의 예에서 이것은 다음과 같습니다.

    :myruncommand o
    
  • 이제를 눌러 Ctrl-F명령 창으로 들어갑니다.

  • A줄 끝으로 이동을 사용 하고 삽입 모드로 들어갑니다.
  • 사용 Ctrl-N/ Ctrl-P키워드 완성을 열고 원하는 옵션을 선택합니다 -이 예에서는 모두 oneonce그들이 열려있는 버퍼에 있기 때문에 사용할 수 있습니다.

"명령 모드에서 vim complete word"를 검색하면 여기에 왔으며 'tab'키를 사용하지 않더라도 실행 가능한 솔루션 인 것 같습니다.

이것은 Vim 7.4에서 작동합니다.


이미 명령이나 검색 문자열을 입력하는 동안 명령 / 검색 버퍼로 이동하는 쉬운 방법이있을 것 같아요! 감사! 내가 이미 알고있는 방식으로 귀하의 답변을 추가했습니다. 그러나 의심 할 여지없이 Ctrl+F많은 경우에 더 편리합니다. superuser.com/a/1016058/219388
Michael Scheper

1

명령 모드 이력을 입력하면 완료가 가능합니다. 이전에 사용한 명령을 변경하거나 반복하는 데 매우 편리합니다.

일반 모드에서 q : 를 눌러 명령 기록 창에 들어갑니다.

자세한 내용은 http://vim.wikia.com/wiki/Using_command-line_history 를 참조하십시오.


1
명령 행 모드에서, Ctrl-f명령 행 히스토리 를 입력 하면 해당 창을 닫으려면 다음을 입력하십시오.Ctrl-w q
SergioAraujo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.