재귀 grep 검색 결과를 보려면 vim/emacs 플러그인을 사용하시겠습니까?

재귀 grep 검색 결과를 보려면 vim/emacs 플러그인을 사용하시겠습니까?

다음 형식의 파일이 있다고 가정해 보겠습니다.

file1:123
file2:4444
some/other/file:2233

이는 명령의 검색 결과 grep(예: format )를 나타냅니다.file:line-number

나는 이러한 클릭을 빠르게 찾아볼 수 있는 vim 플러그인을 원합니다. 상단 창에는 히트 항목이 표시되고 하단 창에는 현재 선택된 히트 항목이 표시되는 2개 창(가로 분할)이 표시됩니다. 위쪽 창에서 선택 항목을 변경하면 아래쪽 창의 지정된 줄 번호에 지정된 파일이 표시됩니다.

이런 일을 겪은 사람이 있습니까? vim이 아닌 솔루션(emacs/전문 프로그램, ...)도 고려할 것입니다.

답변1

Emacs에서 grep 결과를 열고 M-x grep-mode.

grep을 실행한 디렉터리에 없는 파일에 grep 결과를 저장한 경우 grep을 실행하여 M-x cd올바른 디렉터리로 변경해야 합니다.

출력은 줄 번호 뒤에 포함되어야 grep합니다 . 즉, have가 필요합니다 . 여기서는 선택 사항이지만 두 번째 것은 그렇지 않습니다. 이 설정을 조정하여 변경할 수 있습니다 .:file_name:line_number:texttext:grep-regexp-alist

물론 를 실행하면 M-x grep이 모든 것이 자동으로 실행됩니다 .

답변2

존재하다명령 모드:

내부 grep의 경우,

:vimgrep pattern-to-search files
:copen

:help vimgrep도움 요청을 참조하세요 .

외부 grep의 경우,

:grep pattern-to-search files
:copen

:help grep도움 요청을 참조하세요 .

답변3

Emacs는 이를 다음을 통해 지원합니다.rgrep그리고lgrep명령( M-x rgrep또는 입력 M-x lgrep, 여기서 Emacs의 + M-x표기법), 이러한 명령은 버전 22 이상부터 Emacs에 포함되었습니다.Altxrgrep재귀 grep 검색을 실행하는 동안lgrep단일 디렉터리에 있는 파일만.

그들은 보여줍니다grep결과는 행당 하나씩 별도의 창을 생성하며 다음과 같은 방법으로 결과를 탐색할 수 있습니다.

  • 결과 행을 클릭합니다(해당 파일이 다른 창에서 열립니다).

  • 반복해서 누르기CX`( Ctrl+ x다음에 백틱 표시): 이 키 조합을 누를 때마다 현재 창에 다음 항목이 표시됩니다.grep목록에 있어요.텍스트 강조

자세한 내용은 다음을 참조하세요.GNU Emacs 매뉴얼, "Grep 검색" 장

노트:Emacs 용어에서는 창(pane)을 페인(pane)이라고 합니다.창문, 창이 호출됩니다.액자.

관련 정보