다음 형식의 파일이 있다고 가정해 보겠습니다.
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:text
text
:
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)이라고 합니다.창문, 창이 호출됩니다.액자.