подсветка строки ошибки (как ловить?:))

и другие vi-подобные редакторы

Модератор: /dev/random

Ответить
vsdfn
Сообщения: 147
ОС: Windows,Linux,BSD

подсветка строки ошибки

Сообщение vsdfn »

В данное время стоит бинд на copen cclose. Очень неудобно искать строку с ошибкой. Как ее отлавливать и подсвечивать и в автоматическом режиме чтобы открывался copen(если компиляция прошла с эррором) ?:)
Спасибо сказали:
Selius
Сообщения: 32
ОС: Debian GNU/Linux Squeeze

Re: подсветка строки ошибки

Сообщение Selius »

В своё время написал для себя такую функцию и автокоманду в ~/.vimrc

Код: Выделить всё

" Open QuickFix list after any quickfix command if there are any _real_ errors (messages), that point to a file
function! QFixAutoToggle()
    if !empty(getqflist())
        let real_err_count = 0
        for d in getqflist()
            if d.bufnr != 0
                let real_err_count += 1
            endif
        endfor
        if real_err_count > 0
            copen
            let g:QFixToggle_Bufnr = bufnr("$")
        else
            cclose
            unlet! g:QFixToggle_Bufnr
        endif
    endif
endfunction

autocmd QuickFixCmdPost * call QFixAutoToggle()


Ещё использую плагин QFixToggle, чтобы переключать видимость окна quickfix'а одной кнопкой, но он не обязателен для работы вышеприведённой функции.
Спасибо сказали:
vsdfn
Сообщения: 147
ОС: Windows,Linux,BSD

Re: подсветка строки ошибки

Сообщение vsdfn »

Selius писал(а):
17.09.2011 09:07
В своё время написал для себя такую функцию и автокоманду в ~/.vimrc

Код: Выделить всё

" Open QuickFix list after any quickfix command if there are any _real_ errors (messages), that point to a file
function! QFixAutoToggle()
    if !empty(getqflist())
        let real_err_count = 0
        for d in getqflist()
            if d.bufnr != 0
                let real_err_count += 1
            endif
        endfor
        if real_err_count > 0
            copen
            let g:QFixToggle_Bufnr = bufnr("$")
        else
            cclose
            unlet! g:QFixToggle_Bufnr
        endif
    endif
endfunction

autocmd QuickFixCmdPost * call QFixAutoToggle()


Ещё использую плагин QFixToggle, чтобы переключать видимость окна quickfix'а одной кнопкой, но он не обязателен для работы вышеприведённой функции.

плагин поставил и забиндил на хоткей. Хорошая вещь:) За функцию спасибо:)
Спасибо сказали:
Ответить