grep 플러그인을 VIM에 사용할 때 다음과 같이 파일 세트 내에서 문자열의 모든 발생을 현재 디렉토리에서 검색 할 수 있습니다.
:grep Ryan *.txt
이것은 다음과 같이 출력됩니다 :
file1.txt:3:Ryan was here
file2.txt:10:Ryan likes VIM
file3.txt:5:superuser.com is a fav of Ryan
(1 of 3): Ryan was here
Press ENTER or type command to continue
Enter 키를 누르면 편집자로 돌아갑니다. 내가 정말로하고 싶은 것은 그 파일 중 하나를 열고 문자열을 찾은 곳으로 이동할 수 있다는 것입니다. 이것을 할 수있는 방법이 있습니까? 이 1 of 3
부분은 결과를 탭하는 방법이 있다고 생각하지만 어떤 명령을 사용할 수 있는지 모르겠습니다. 아무도 이것에 약간의 빛을 비출 수 있습니까?
답변
Enter 키를 누르면 file1.txt의 3 행을보고 있어야합니다. 다음 경기로 넘어가려면 :cn
; 이전 경기로 이동하려면을 실행하십시오 :cp
. 실행 :copen
하면 일치하는 목록이 포함 된 창이 열립니다. 커서를 원하는 일치 항목으로 이동하고 ENTER를 눌러 해당 일치 항목으로 이동하십시오.
사용에 대한 자세한 내용 :grep
은
:help grep
:help quickfix.txt
빠른 수정 사항 목록에서 입력 :cn
하고 :cp
앞뒤로 이동하는 것이 어색 할 수 있으므로 다음 맵핑을 사용합니다.
nmap <silent> <C-N> :cn<CR>zv
nmap <silent> <C-P> :cp<CR>zv
또한이 :grep
명령은 플러그인이 아닙니다. 그것은 Vim의 일부입니다.