Я довольно новый пользователь Vim, и я обнаружил, что его кривая обучения довольно крутая (по крайней мере, для меня). Я только что установил этот сценарий vim для проверки ошибок JavaScriptLint, который показывает ошибки в окне быстрого исправления vim после сохранения буфера.
Однако я не знаю, что делать дальше .. Как мне «пролистать» все ошибки? Как закрыть «окно» quickfix? Как мне заставить его проверять наличие ошибок после того, как я внес изменения в свой код?
Я просмотрел документы vim quickfix, но количество команд слишком велико, и я не могу найти то, что хочу. Любая помощь будет оценена.
Дополнительный вопрос: есть ли способ проверить javascriptlint на наличие ошибок js для кода, находящегося в файле .html?
Спасибо!
:cn
не следует закрывать окно qf, но оно переключится на окно, содержащее ошибку: это то, что вы имеете в виду под «прыжком»? Вы можете быстро переключиться обратно с помощьюCtrl-W p
или:wincmd p
, чтобы вы могли сделать:command! CN :cn | wincmd p<CR>
что-то в этом роде (непроверено). Это должно дать вам:CN
команду, которая перейдет к следующей ошибке, не выходя из окна быстрого исправления. В качестве альтернативы вы можете сделать что-то вроде:au BufWinEnter quickfix nmap <buffer> <Enter> :.cc | wincmd p<CR>
(снова непроверено) и использовать Enter для выбора ошибки, не выходя из окна быстрого исправления.Самый простой способ перемещаться по списку быстрых исправлений (или списку местоположений, если на то пошло) - это
unimpaired
плагин .После того , как окно QuickFix заполняется,
[q
и]q
идти вперед и назад (соответственно) в списке QuickFix.[Q
и]Q
перейти в начало и конец (что особенно удобно, если у вас есть только один элемент в списке; это заставляет vim жаловаться на[q
и]q
). Итак, рабочий процесс:[Q
чтобы перейти к первому элементу[q
и]q
Если вы используете Syntastic, вы получите список местоположений вместо списка quickfix. Нет проблем; просто использовать
[L
,]L
,[l
и]l
таким же образом.unimpaired
также есть множество других удобных отображений -[e
и]e
"пузырьковые" линии вверх и вниз,[<Space>
и]<Space>
вставка пустых строк сверху и снизу и т. д. Я был удивлен, что никто не упомянул об этом здесь раньше; вероятно, потому, что он не существовал до января 2010 года, хотя вопрос был задан в 2009 году.источник
Поместите следующие две строки в ваш файл .vimrc:
Теперь вы можете перемещаться по ошибкам, используя ctrl-j и ctrl-k, которые имитируют стандартные команды движения вниз и вверх j и k.
источник
<c-j>
иногда (зависит от терминала ?!) ошибочен или вообще не работает, потому что это означает то же самое, что и <NL> // самый простой ist, чтобы использовать<c-n>
и<c-p>
вместо этого // в противном случае: stackoverflow.com/questions/8304421/…noremap <F7> :cprevious<CR>
иnoremap <F8> :cnext<CR>
в.vimrc
<C-j>
и<C-k>
для навигации между разделами vim и панелями tmux с помощью навигатора vim tmux . Комбинации<C-M-j>
и<C-M-k>
могут быть альтернативой.Вы также можете использовать
:cc 2
(или любой другой номер) для перехода в этом случае ко второй ошибке в окне быстрого исправления. Перемещение с помощью:cn
,:cc 4
и т. Д. Поместит курсор на нужную строку.источник
Лучшим способом интеграции проверки синтаксиса JavaScript является использование плагина Syntastic Vim , который использует список местоположений Vim (который параллельно с quickfix окно ).
Я написал ответы на этот вопрос и этот вопрос, объясняющий, как это сделать, а также как получить просмотр исходного кода / список тегов для Vim с помощью управляемого сообществом jshint.com (что намного лучше, чем JSLint IMO) и DoctorJS от Mozilla (ранее jsctags ).
источник
Возможно, эта опция не существовала, когда был написан этот вопрос (или, может быть, я смущаюсь, потому что в моем есть что-то,
.vimrc
что заставляет это происходить), но когда я получаюQuickfix List
, я просто просматриваю его,j
аk
затем нажимаю<CR>
(например, клавишу Enter) чтобы перейти к этому месту в файле.Затем, чтобы вернуться к
Quickfix List
I, набираюCtrl
+W
j
для "перемещения окна вниз", я возвращаюсь.Наконец, когда я закончу, я просто печатаю
:q
, как будто закрываю любое обычное окно.источник
nmap <CR> o<Esc>
, у меня было , поэтому я мог добавлять новые строки в обычном режиме.Окно quickfix работает в основном так же, как и любое другое окно vim: j на строку, k вверх на строку,: cn для перехода к следующей ошибке / предупреждению и т. д.
экспериментировать!
источник
В дополнение к отличному ответу @DrAl о том, как открывать и закрывать быстрое окно и перемещаться между записями, я сделал изображение, чтобы показать некоторые другие команды навигации быстрого исправления.
Каждая группа из 3 файлов ниже представляет собой набор результатов быстрого исправления, например, от vimgrep. cnewer и холоднее предназначены для просмотра исторических наборов результатов.
источник