저는 꽤 새로운 Vim 사용자이며 학습 곡선이 상당히 가파르다는 것을 발견했습니다 (적어도 저에게는). JavaScriptLint 오류 검사를 위해이 vim 스크립트 를 설치 했습니다 . 버퍼를 저장하면 vim의 quickfix 창에 오류가 표시됩니다.
그러나 다음에 무엇을해야할지 모르겠습니다. 모든 오류를 어떻게 ‘스크롤’합니까? Quickfix ‘창’을 어떻게 닫습니까? 코드를 변경 한 후 오류를 확인하려면 어떻게해야합니까?
vim quickfix 문서를 살펴 보았지만 명령의 양이 너무 많아서 원하는 것을 찾을 수없는 것 같습니다. 어떤 도움을 주시면 감사하겠습니다.
부수적 인 질문 : javascriptlint가 .html 파일에있는 코드에 대한 js 오류를 확인하도록하는 방법이 있습니까?
감사!
답변
당신이 말했듯이 빠른 수정을위한 많은 명령 이 있지만, 나는 그것들 중 작은 부분만을 사용하는 경향이 있습니다.
:copen " Open the quickfix window
:ccl " Close it
:cw " Open it if there are "errors", close it otherwise (some people prefer this)
:cn " Go to the next error in the window
:cp " Go to the previous error in the window
:cnf " Go to the first error in the next file
:.cc " Go to error under cursor (if cursor is in quickfix window)
나는 이것을 사용하는 경향이 :make
와 :vimgrep
나는 자바 스크립트 보풀이 검사기에 대해 언급 할 수 있도록, 그러나 이것은 시작하는 당신에게 무언가를 제공해야합니다.
JavascriptLint의 일반적인 사용과 관련하여 저는 자바 스크립트 프로그래머는 아니지만 스크립트가 “JavascriptLint”라는 함수를 노출하는 것처럼 보이므로 수동으로 호출하려는 경우 :call JavascriptLint()
. 그러나 파일의 디스크 복사본에서 작동하므로 먼저 저장해야합니다. 명령 줄 jsl
이 html 파일에서 작동 하는 경우에만 html 파일에서을 사용 :call JavascriptLint()
하여 내부 javascript를 확인할 수 있습니다. 다음을 수행 할 수도 있습니다.
autocmd BufWritePost,FileWritePost *.html call JavascriptLint()
자동화합니다. 에서 jsl
html 파일을 지원하지 않는 경우 (응용 프로그램을 패치하거나 작성자에게 변경을 요청하지 않음) 아마도 손실 된 원인 일 수 있습니다.
답변
빠른 수정 목록 (또는 해당 문제에 대한 위치 목록)을 탐색하는 가장 쉬운 방법 은 unimpaired
플러그인 입니다.
quickfix 창이 채워지면 [q
과 ]q
앞뒤 (각각)에 quickfix 목록에서 이동합니다. [Q
그리고 ]Q
시작과 끝으로 이동 (만 목록에서 하나 개의 항목이있는 경우 특히 유용합니다,이 차종은 불평 정력 [q
과 ]q
). 따라서 워크 플로는 다음과 같습니다.
- 빠른 수정 목록을 채우는 명령을 실행하십시오.
[Q
첫 번째 항목으로 이동하려면 입력 하세요.- 후속 항목을 스크롤 (있는 경우)
[q
및]q
Syntastic을 사용하는 경우 빠른 수정 목록 대신 위치 목록이 표시됩니다. 문제 없어요; 단지 사용 [L
, ]L
, [l
,와 ]l
같은 방법으로한다.
unimpaired
– 너무 다른 편리한 매핑의 부하를 가지고 [e
와 ]e
“거품”라인 위, 아래, [<Space>
그리고 ]<Space>
, 나는 아무도 전에 여기 언급되지 놀랐다 등, 위의 빈 줄을 삽입하고 아래 2009 년에 질문을 받았지만 2010 년 1 월까지는 존재하지 않았기 때문일 것입니다.
답변
.vimrc 파일에 다음 두 줄을 넣으십시오.
map <C-j> :cn<CR>
map <C-k> :cp<CR>
이제 ctrl-j 및 ctrl-k를 사용하여 오류를 탐색 할 수 있습니다. 이는 표준 아래로 및 위로 동작 명령 j 및 k를 모방합니다.
답변
당신은 또한 사용할 수 있습니다 :cc 2
(또는 다른 번호)는 quickfix 창에서,이 경우에 두 번째 오류를 이동합니다. 함께 탐색 :cn
, :cc 4
등은 문제의 줄에 커서를 넣어 것입니다.
답변
JavaScript 구문 검사를 통합하는 가장 좋은 방법은 Vim의 위치 목록 ( quickfix 와 병행 ) 창을 사용하는 Syntastic Vim 플러그인을 사용 하는 것입니다 .
나는에 대한 답변을 서면으로 작성했습니다 이 질문 과 이 질문 도하는 방법에 그것을, 플러스하는 방법을 설명하는 소스 코드 검색 / 태그 목록을 사용하여 빔을위한 지역 사회 중심의 jshint.com (방법은 IMO 더 나은 JSLint 이상이다) 및 Mozilla의 DoctorJS (이전 jsctags ).
답변
어쩌면이 옵션이 질문이 작성 될 때 존재하지 않았다 (뭔가가 있기 때문에 자신을 또는 어쩌면 내가 당황하고있어 내 .vimrc
이런 일이 있습니다)하지만 난을 얻을 때 Quickfix List
, 난 그냥 그것을 이동 j
하고 k
다음 공격 <CR>
(즉, 키를 입력) 파일의 해당 위치로 이동합니다.
그런 다음 Quickfix List
I로 돌아가려면 “창 아래로 이동”에 Ctrl
+ W
j
를 입력 하면 돌아 갑니다.
마지막으로 작업이 끝나면 :q
일반 창을 닫는 것처럼을 입력 합니다.
답변
빠른 수정 창은 대부분 다른 vim 창과 같이 작동합니다. j는 한 줄, k는 한 줄, : cn은 다음 오류 / 경고로 이동합니다.
실험!