VIM에서 grep을 사용할 때 결과로 어떻게 이동합니까? or type command to continue Enter 키를 누르면

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의 일부입니다.


답변