2015-08-06 3 views
0

Так что я использую плагин omnisharp-vim вместе с синтаксисом, чтобы показать свои ошибки в моем веб-проекте. Когда я загружаю файл cs, он сообщает обо всех этих ошибках. Когда я открываю тот же проект в VS 2015 я не вижу те же ошибкиvim syntastic omnisharp-vim дает ложные ошибки

MyProject.Web\Controllers\DashboardController.cs|11 col 52 error| 'MyProjectAuthorizeAttribute' is not a known identifier 
MyProject.Web\Controllers\DashboardController.cs|11 col 54 error| Error: ? 
MyProject.Web\Controllers\DashboardController.cs|12 col 51 error| 'BaseController' is not a known identifier 
MyProject.Web\Controllers\DashboardController.cs|14 col 27 error| 'ILogger' is not a known identifier 
MyProject.Web\Controllers\DashboardController.cs|15 col 44 error| 'ILoggerFactory' is not a known identifier 

Может быть, мне не хватает какой-то конфигурации в моем файле .vimrc?

" General ----------------------- 
set nocompatible    " Makes vim better 

scriptencoding utf-8   " Setting everything to UTF-8 
set encoding=utf-8 
set history=256 
set timeoutlen=250 
set clipboard+=unnamed 
let g:autotagTagsFile = ".git/tags" 
set tags=./.git/tags,tags,./.git/coffeetags,coffeetags;$HOME 

set nobackup 
set nowritebackup 
set noswapfile 

set hlsearch 
set ignorecase 
set smartcase 
set incsearch 

" turn off search highlight 
nnoremap <leader><space> :nohlsearch<CR> 

let mapleader = ',' 
let maplocalleader = ' ' 
let g:netrw_banner = 0 


" Formatting -------------------- 
set nowrap 

set tabstop=4 
set softtabstop=4 
set shiftwidth=4 

set backspace=indent 
set backspace+=eol 
set backspace+=start 

set autoindent 
set cindent 
set indentkeys-=0# 
set cinkeys-=0# 
set cinoptions=:s,ps,ts,cs 
set cinwords=if,else,while,do 
set cinwords+=for,switch,case 

set linespace=4 
set listchars=tab:>.,trail:.,extends:\#,nbsp:. 
set list 

" Plugins ------------------------ 
filetype off 

set rtp+=~/.vim/bundle/Vundle.vim 
call vundle#begin() 

Plugin 'gmarik/Vundle.vim' 
Plugin 'OmniSharp/omnisharp-vim' 
Plugin 'tpope/vim-dispatch' 
Plugin 'scrooloose/syntastic' 
Plugin 'Shougo/unite.vim' 
Plugin 'xero/sourcerer.vim' 
Plugin 'bling/vim-airline' 
Plugin 'airblade/vim-gitgutter' 
Plugin 'ap/vim-css-color' 
Plugin 'groenewege/vim-less' 
Plugin 'hail2u/vim-css3-syntax' 
Plugin 'kien/ctrlp.vim' 
Plugin 'jasoncodes/ctrlp-modified.vim' 
Plugin 'kaneshin/ctrlp-git-log' 
Plugin 'jiangmiao/auto-pairs' 
Plugin 'lokaltog/vim-easymotion' 
Plugin 'majutsushi/tagbar' 
Plugin 'mattn/ctrlp-git' 
Plugin 'tacahiroy/ctrlp-funky' 
Plugin 'mattn/emmet-vim' 
Plugin 'mtscout6/rainbow_parentheses.vim' 
Plugin 'mtscout6/vim-ctags-autotag' 
Plugin 'mtscout6/vim-tagbar-css' 
Plugin 'scrooloose/nerdtree' 
Plugin 'terryma/vim-multiple-cursors' 
Plugin 'tpope/vim-fugitive' 
Plugin 'tpope/vim-git' 
Plugin 'tpope/vim-markdown' 
Plugin 'tpope/vim-surround' 


call vundle#end() 
filetype plugin indent on 

" Rainbow 
map <leader>rt :RainbowParenthesesToggle<CR> 
map <leader>r(:RainbowParenthesesLoadRound<CR> 
map <leader>r[ :RainbowParenthesesLoadSquare<CR> 
map <leader>r{ :RainbowParenthesesLoadBraces<CR> 
map <leader>r< :RainbowParenthesesLoadChevrons<CR> 

" File Type Settings -------------------- 

" Markdown editing 
autocmd Filetype markdown setlocal wrap 
autocmd Filetype markdown setlocal linebreak 
autocmd Filetype markdown setlocal nolist 
autocmd Filetype markdown setlocal columns=80 
autocmd Filetype markdown setlocal tw=80 
autocmd Filetype markdown setlocal wm=4 

" GVIM Options ----------------------- 
set guioptions-=m 
set guioptions-=T 
set guioptions-=r 
set guioptions-=L 

" Visual ------------------------ 
syntax on 

set showmatch 

if has('gui_running') 
    set guifont=InputMono:h14 

    colorscheme sourcerer 

    if has('mac') 
    set noantialias 
    endif 
endif 

set novisualbell 
set noerrorbells 
set vb t_vb= 
set laststatus=2 

" Airline Settings 
let g:airline_powerline_fonts = 1 
let g:airline#extensions#tabline#enabled = 1 
" Default 
let g:airline#extensions#tmuxline#enabled = 0 
" Presentation 
"let g:airline#extensions#tmuxline#enabled = 1 

" Ctrl-P settings 
let g:ctrlp_working_path_mode = 'r' 
let g:ctrlp_extensions = ['tag', 'buffertag', 'line', 'funky'] 
", 'git-log', 'git_branch', 'git_files', 'modified'] 
let g:ctrlp_custom_ignore = 'node_modules\|DS_Store\|git|bower_components' 
map <leader>t :CtrlP<CR> 
map <leader>gs :CtrlPGitFiles<CR> 
map <leader>gb :CtrlPGitBranch<CR> 
map <leader>gl :CtrlPGitLog<CR> 
map <leader>gm :CtrlPModified<CR> 


" ctrlp-modified 
map <Leader>m :CtrlPModified<CR> 
map <Leader>M :CtrlPBranch<CR> 

" Tagbar settings 
map <F8> :TagbarToggle<CR> 

" Emmet settings 
imap <C-e> <C-y>, 

" Multiple Cursor Settings 
let g:multi_cursor_use_default_mapping=0 
let g:multi_cursor_start_key='<leader>m' 
let g:multi_cursor_next_key='<C-n>' 
let g:multi_cursor_prev_key='<C-p>' 
let g:multi_cursor_skip_key='<C-x>' 
let g:multi_cursor_quit_key='<Esc>' 

" Git Gutter Settings 
highlight clear SignColumn 
map ]h <Plug>GitGutterNextHunk 
map [h <Plug>GitGutterPrevHunk 
map <leader>hv <Plug>GitGutterPreviewHunk 
map <Leader>hs <Plug>GitGutterStageHunk 
map <Leader>hr <Plug>GitGutterRevertHunk 

" NERD Tree Settings 
map <TAB> :NERDTreeToggle<CR> 
map <leader>ff :NERDTreeFind<CR> 
let NERDTreeShowHidden=1 
let NERDTreeIgnore=[] 

" Syntastic Settings 
let g:syntastic_always_populate_loc_list = 1 
let g:syntastic_auto_loc_list = 1 
let g:syntastic_check_on_open = 1 
let g:syntastic_check_on_wq = 0 
"let g:syntastic_<filetype>_checkers = ['omnisharp'] 
let g:syntastic_cs_checkers = ['syntax', 'semantic', 'issues'] 

" Omnisharp settings 
let g:OmniSharp_server_type = 'roslyn' 
let g:OmniSharp_selector_ui = 'unite' 
let g:OmniSharp_selector_ui = 'ctrlp' 
let g:OmniSharp_timeout = 1 
set noshowmatch 
set completeopt=longest,menuone,preview 
set splitbelow 

augroup omnisharp_commands 
    autocmd! 

    "Set autocomplete function to OmniSharp (if not using YouCompleteMe completion plugin) 
    autocmd FileType cs setlocal omnifunc=OmniSharp#Complete 

    " Synchronous build (blocks Vim) 
    "autocmd FileType cs nnoremap <F5> :wa!<cr>:OmniSharpBuild<cr> 
    " Builds can also run asynchronously with vim-dispatch installed 
    autocmd FileType cs nnoremap <leader>b :wa!<cr>:OmniSharpBuildAsync<cr> 
    " automatic syntax check on events (TextChanged requires Vim 7.4) 
    autocmd BufEnter,TextChanged,InsertLeave *.cs SyntasticCheck 

    " Automatically add new cs files to the nearest project on save 
    autocmd BufWritePost *.cs call OmniSharp#AddToProject() 

    "show type information automatically when the cursor stops moving 
    autocmd CursorHold *.cs call OmniSharp#TypeLookupWithoutDocumentation() 

    "The following commands are contextual, based on the current cursor position. 

    autocmd FileType cs nnoremap gd :OmniSharpGotoDefinition<cr> 
    autocmd FileType cs nnoremap <leader>fi :OmniSharpFindImplementations<cr> 
    autocmd FileType cs nnoremap <leader>ft :OmniSharpFindType<cr> 
    autocmd FileType cs nnoremap <leader>fs :OmniSharpFindSymbol<cr> 
    autocmd FileType cs nnoremap <leader>fu :OmniSharpFindUsages<cr> 
    "finds members in the current buffer 
    autocmd FileType cs nnoremap <leader>fm :OmniSharpFindMembers<cr> 
    " cursor can be anywhere on the line containing an issue 
    autocmd FileType cs nnoremap <leader>x :OmniSharpFixIssue<cr> 
    autocmd FileType cs nnoremap <leader>fx :OmniSharpFixUsings<cr> 
    autocmd FileType cs nnoremap <leader>tt :OmniSharpTypeLookup<cr> 
    autocmd FileType cs nnoremap <leader>dc :OmniSharpDocumentation<cr> 
    "navigate up by method/property/field 
    autocmd FileType cs nnoremap <C-K> :OmniSharpNavigateUp<cr> 
    "navigate down by method/property/field 
    autocmd FileType cs nnoremap <C-J> :OmniSharpNavigateDown<cr> 

augroup END 

nnoremap <leader><space> :OmniSharpGetCodeActions<cr> 

vnoremap <leader><space> :call OmniSharp#GetCodeActions('visual')<cr> 

" rename with dialog 
nnoremap <leader>nm :OmniSharpRename<cr> 
nnoremap <F2> :OmniSharpRename<cr> 
" rename without dialog - with cursor on the symbol to rename... ':Rename newname' 
command! -nargs=1 Rename :call OmniSharp#RenameTo("<args>") 

" Force OmniSharp to reload the solution. Useful when switching branches etc. 
nnoremap <leader>rl :OmniSharpReloadSolution<cr> 
nnoremap <leader>cf :OmniSharpCodeFormat<cr> 
" Load the current .cs file to the nearest project 
nnoremap <leader>tp :OmniSharpAddToProject<cr> 

" (Experimental - uses vim-dispatch or vimproc plugin) - Start the omnisharp server for the current solution 
nnoremap <leader>ss :OmniSharpStartServer<cr> 
nnoremap <leader>sp :OmniSharpStopServer<cr> 

" Add syntax highlighting for types and interfaces 
nnoremap <leader>th :OmniSharpHighlightTypes<cr> 
"Don't ask to save when changing buffers (i.e. when jumping to a type definition) 
set hidden 

ответ

0

вероятно VS не используют одни и те же шашки, как syntastic, Запустите COMAND :SyntasticInfo и он вернется, что шашка он использует их, вы можете найти почему эти ошибки пришедшие и как сделать вы программируете передать синтаксис проверки

набл я не знаю, Visual Studio, но большая часть вашей ошибки являются is not a known identifier

может быть, потому, что она определена в другом файле и VS проверяет его, но не syntastic проверки

Смежные вопросы