История изменений
Исправление
Moisha_Liberman,
(текущая версия)
:
В принципе, есть два варианта.
Либо вписываем в свой .vimrc
что-то типа let g:syntastic_c_include_dirs = [ '../my_include', 'another_include' ]
если для С, для С++ соответственно будет syntastic_cpp_include_dirs
.
Либо делаем в каталоге проекта файл .syntastic_cpp_config
, где на каждой строке строго по отдельности вписываем:
-Ipath_1
-Ipath_2
...
-Ipath_N
Тогда в .vimrc
можно указать для каждого своего проекта, например, let g:syntastic_cpp_config_file = '.my_custom_include_file_for_syntastic_project_1'
(например).
Но вообще посмотрите: help syntastic-checkers
и там конкретно по своему языку. Для С частенько конфиг один будет, для С++ – другой, для С# (и прочих) соответственно третьи.
Сам по себе syntastic штука крайне мощная, в особенности в паре со splint (для сишника), так что конфигурировать его надо крайне точно.
Наконец, приведу часть, касающуюся splint/syntastic из своего vimrc (она меняется от случая к случаю), вдруг кому сгодится в качестве примера:
" Syntastic settings.
" https://github.com/vim-syntastic/syntastic/wiki/C%3A---gcc
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
" Use syntastic on opening file and on saving/quitting.
" При открытии файл не проверяем -- пох, а вот при зарытии и
" сохранении -- в обязательном порядке!
let g:syntastic_check_on_open = 0
let g:syntastic_check_on_wq = 1
" Automatically jump to the first detected issue.
let g:syntastic_auto_jump = 1
" Include directory
"let g:syntastic_c_include_dirs = ['/usr/include/gtk-3.0/gtk','/usr/include/webkitgtk-4.0/webkit2']
let g:syntastic_c_check_header = 0
let g:syntastic_cpp_check_header = 0
let g:syntastic_c_no_include_search = 1
let g:syntastic_c_auto_refresh_includes = 1
let g:syntastic_c_no_default_include_dirs = 1
" Compiler's options:
" let g:syntastic_c_compiler_options = ' -std=gnu18'
"let b:syntastic_c_cflags = '-I/usr/include/gtk-3.0/gtk -I/usr/include/webkitgtk-4.0/webkit2'
" Опции можно указать и в конфигурационном файле:
" Создать данный файл можно так:
" pkg-config --cflags gtk+-3.0 glib-2.0 webkit2gtk-4.0 | tr ' ' '\n'
" >.syntastic_c_config
" И потом добавить -Wall, -Werror, -Wextra, -std=gnu18 по одной опции
" на строку.
let g:syntastic_c_config_file = '~/.vim/.syntastic_c_config'
" Syntax checkers.
let g:syntastic_c_checkers = ['make','splint','gcc']
" C-compiler.
let g:syntastic_c_compiler = 'gcc'
let g:syntastic_c_compiler_options = "-std=gnu99
\ -Wall -Wextra -Wshadow -Wpointer-arith
\ -Wcast-align -Wwrite-strings -Wmissing-prototypes
\ -Wmissing-declarations -Wredundant-decls -Wnested-externs
\ -Winline -Wno-long-long -Wuninitialized -Wconversion
\ -Wstrict-prototypes -pedantic"
" Конфигурационный файл splint.
" let g:syntastic_splint_config_file = '.syntastic_splint_config'
" Check syntax for bash:
let b:shell = 'bash'
" <F9> to open :Errors, <Ctrl+F9> to :lclose errors list.
map <F9> :Errors<CR>
map <C-F9> :lclose<CR>
highlight link SyntasticErrorSign SignColumn
highlight link SyntasticWarningSign SignColumn
highlight link SyntasticStyleErrorSign SignColumn
highlight link SyntasticStyleWarningSign SignColumn
Комменты там что к чему в принципе есть. Остальное – по ману.
Исправление
Moisha_Liberman,
:
В принципе, есть два варианта.
Либо вписываем в свой .vimrc
что-то типа let g:syntastic_c_include_dirs = [ '../my_include', 'another_include' ]
если для С, для С++ соответственно будет syntastic_cpp_include_dirs
.
Либо делаем в каталоге проекта файл .syntastic_cpp_config
, где на каждой строке строго по отдельности вписываем:
-Ipath_1
-Ipath_2
...
-Ipath_N
Тогда в .vimrc
можно указать для каждого своего проекта, например, let g:syntastic_cpp_config_file = '.my_custom_include_file_for_syntastic_project_1'
(например).
Но вообще посмотрите: help syntastic-checkers
и там конкретно по своему языку. Для С частенько конфиг один будет, для С++ – другой, для С# (и прочих) соответственно третьи.
Сам по себе syntastic штука крайне мощная, в особенности в паре со splint (для сишника), так что конфигурировать его надо крайне точно.
Наконец, приведу часть, касающуюся splint/syntastic из своего vimrc (она меняется от случая к случаю), вдруг кому сгодится в качестве примера:
" Syntastic settings.
" https://github.com/vim-syntastic/syntastic/wiki/C%3A---gcc
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
" Use syntastic on opening file and on saving/quitting.
let g:syntastic_check_on_open = 0
let g:syntastic_check_on_wq = 1
" Automatically jump to the first detected issue.
let g:syntastic_auto_jump = 1
" Include directory
"let g:syntastic_c_include_dirs = ['/usr/include/gtk-3.0/gtk','/usr/include/webkitgtk-4.0/webkit2']
let g:syntastic_c_check_header = 0
let g:syntastic_cpp_check_header = 0
let g:syntastic_c_no_include_search = 1
let g:syntastic_c_auto_refresh_includes = 1
let g:syntastic_c_no_default_include_dirs = 1
" Compiler's options:
" let g:syntastic_c_compiler_options = ' -std=gnu18'
"let b:syntastic_c_cflags = '-I/usr/include/gtk-3.0/gtk -I/usr/include/webkitgtk-4.0/webkit2'
" Опции можно указать и в конфигурационном файле:
" Создать данный файл можно так:
" pkg-config --cflags gtk+-3.0 glib-2.0 webkit2gtk-4.0 | tr ' ' '\n'
" >.syntastic_c_config
" И потом добавить -Wall, -Werror, -Wextra, -std=gnu18 по одной опции
" на строку.
let g:syntastic_c_config_file = '~/.vim/.syntastic_c_config'
" Syntax checkers.
let g:syntastic_c_checkers = ['make','splint','gcc']
" C-compiler.
let g:syntastic_c_compiler = 'gcc'
let g:syntastic_c_compiler_options = "-std=gnu99
\ -Wall -Wextra -Wshadow -Wpointer-arith
\ -Wcast-align -Wwrite-strings -Wmissing-prototypes
\ -Wmissing-declarations -Wredundant-decls -Wnested-externs
\ -Winline -Wno-long-long -Wuninitialized -Wconversion
\ -Wstrict-prototypes -pedantic"
" Конфигурационный файл splint.
" let g:syntastic_splint_config_file = '.syntastic_splint_config'
" Check syntax for bash:
let b:shell = 'bash'
" <F9> to open :Errors, <Ctrl+F9> to :lclose errors list.
map <F9> :Errors<CR>
map <C-F9> :lclose<CR>
highlight link SyntasticErrorSign SignColumn
highlight link SyntasticWarningSign SignColumn
highlight link SyntasticStyleErrorSign SignColumn
highlight link SyntasticStyleWarningSign SignColumn
Комменты там что к чему в принципе есть. Остальное – по ману.
Исходная версия
Moisha_Liberman,
:
Syntastic надо конфигурировать, как правило.
В принципе, есть два варианта.
Либо вписываем в свой .vimrc
что-то типа let g:syntastic_c_include_dirs = [ '../my_include', 'another_include' ] если для С, для С++ соответственно будет
syntastic_cpp_include_dirs`.
Либо делаем в каталоге проекта файл .syntastic_cpp_config
, где на каждой строке строго по отдельности вписываем:
-Ipath_1
-Ipath_2
...
-Ipath_N
Тогда в .vimrc
можно указать, например, let g:syntastic_cpp_config_file = '.my_custom_include_file_for_syntastic_project_1'
(например).
Но вообще посмотрите: help syntastic-checkers
и там конкретно по своему языку. Для С частенько конфиг один будет, для С++ – другой, для С# (и прочих) соответственно третьи.
Сам по себе syntastic штука крайне мощная, в особенности в паре со splint (для сишника), так что конфигурировать его надо крайне точно.
Наконец, приведу часть, касающуюся splint/syntastic из своего vimrc (она меняется от случая к случаю), вдруг кому сгодится в качестве примера:
" Syntastic settings.
" https://github.com/vim-syntastic/syntastic/wiki/C%3A---gcc
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
" Use syntastic on opening file and on saving/quitting.
let g:syntastic_check_on_open = 0
let g:syntastic_check_on_wq = 1
" Automatically jump to the first detected issue.
let g:syntastic_auto_jump = 1
" Include directory
"let g:syntastic_c_include_dirs = ['/usr/include/gtk-3.0/gtk','/usr/include/webkitgtk-4.0/webkit2']
let g:syntastic_c_check_header = 0
let g:syntastic_cpp_check_header = 0
let g:syntastic_c_no_include_search = 1
let g:syntastic_c_auto_refresh_includes = 1
let g:syntastic_c_no_default_include_dirs = 1
" Compiler's options:
" let g:syntastic_c_compiler_options = ' -std=gnu18'
"let b:syntastic_c_cflags = '-I/usr/include/gtk-3.0/gtk -I/usr/include/webkitgtk-4.0/webkit2'
" Опции можно указать и в конфигурационном файле:
" Создать данный файл можно так:
" pkg-config --cflags gtk+-3.0 glib-2.0 webkit2gtk-4.0 | tr ' ' '\n'
" >.syntastic_c_config
" И потом добавить -Wall, -Werror, -Wextra, -std=gnu18 по одной опции
" на строку.
let g:syntastic_c_config_file = '~/.vim/.syntastic_c_config'
" Syntax checkers.
let g:syntastic_c_checkers = ['make','splint','gcc']
" C-compiler.
let g:syntastic_c_compiler = 'gcc'
let g:syntastic_c_compiler_options = "-std=gnu99
\ -Wall -Wextra -Wshadow -Wpointer-arith
\ -Wcast-align -Wwrite-strings -Wmissing-prototypes
\ -Wmissing-declarations -Wredundant-decls -Wnested-externs
\ -Winline -Wno-long-long -Wuninitialized -Wconversion
\ -Wstrict-prototypes -pedantic"
" Конфигурационный файл splint.
" let g:syntastic_splint_config_file = '.syntastic_splint_config'
" Check syntax for bash:
let b:shell = 'bash'
" <F9> to open :Errors, <Ctrl+F9> to :lclose errors list.
map <F9> :Errors<CR>
map <C-F9> :lclose<CR>
highlight link SyntasticErrorSign SignColumn
highlight link SyntasticWarningSign SignColumn
highlight link SyntasticStyleErrorSign SignColumn
highlight link SyntasticStyleWarningSign SignColumn
Комменты там что к чему в принципе есть. Остальное – по ману.