Closed rodrigomocca closed 4 years ago
I don't think that error is coming from OmniSharp-vim - can you please share your full .vimrc?
Yes, of course:
set path=.\**
set number
set mouse=a
set numberwidth=1
set clipboard=unnamed
syntax enable
set showcmd
set ruler
set encoding=utf-8
set showmatch
set sw=2
set relativenumber
set laststatus=2
set noshowmode
set wildmenu
set wildmode=list:longest,full
call plug#begin('~/.vim/plugged')
" Themes
Plug 'morhetz/gruvbox'
" IDE
Plug 'easymotion/vim-easymotion'
Plug 'scrooloose/nerdtree'
Plug 'christoomey/vim-tmux-navigator'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'OmniSharp/omnisharp-vim'
call plug#end()
colorscheme gruvbox
let g:gruvbox_contrast_dark = "hard"
let NERDTreeQuitOnOpen=1
let mapleader=" "
nmap <Leader>s <Plug>(easymotion-s2)
nmap <Leader>nt :NERDTreeFind<CR>
nmap <Leader>w :w<CR>
nmap <Leader>q :q<CR>
nmap <Leader><Tab> :bn<CR>
nmap <Leader><S-Tab> :bp<CR>
nmap <Leader>d :bd<CR>
nmap <Leader>m :find<Space>
"===========CoC============
" TextEdit might fail if hidden is not set.
set hidden
" Some servers have issues with backup files, see #649.
set nobackup
set nowritebackup
" Give more space for displaying messages.
set cmdheight=2
" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
" delays and poor user experience.
set updatetime=300
" Don't pass messages to |ins-completion-menu|.
set shortmess+=c
" Always show the signcolumn, otherwise it would shift the text each time
" diagnostics appear/become resolved.
if has("patch-8.1.1564")
" Recently vim can merge signcolumn and number column into one
set signcolumn=number
else
set signcolumn=yes
endif
" Use tab for trigger completion with characters ahead and navigate.
" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by
" other plugin before putting this into your config.
inoremap <silent><expr> <TAB>
\ pumvisible() ? "\<C-n>" :
\ <SID>check_back_space() ? "\<TAB>" :
\ coc#refresh()
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
function! s:check_back_space() abort
let col = col('.') - 1
return !col || getline('.')[col - 1] =~# '\s'
endfunction
" Use <c-space> to trigger completion.
if has('nvim')
inoremap <silent><expr> <c-space> coc#refresh()
else
inoremap <silent><expr> <c-@> coc#refresh()
endif
" Use <cr> to confirm completion, `<C-g>u` means break undo chain at current
" position. Coc only does snippet and additional edit on confirm.
" <cr> could be remapped by other vim plugin, try `:verbose imap <CR>`.
if exists('*complete_info')
inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>"
else
inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
endif
" Use `[g` and `]g` to navigate diagnostics
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)
" GoTo code navigation.
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)
" Use K to show documentation in preview window.
nnoremap <silent> K :call <SID>show_documentation()<CR>
function! s:show_documentation()
if (index(['vim','help'], &filetype) >= 0)
execute 'h '.expand('<cword>')
else
call CocAction('doHover')
endif
endfunction
" Highlight the symbol and its references when holding the cursor.
autocmd CursorHold * silent call CocActionAsync('highlight')
" Symbol renaming.
nmap <leader>rn <Plug>(coc-rename)
" Formatting selected code.
xmap <leader>f <Plug>(coc-format-selected)
nmap <leader>f <Plug>(coc-format-selected)
augroup mygroup
autocmd!
" Setup formatexpr specified filetype(s).
autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected')
" Update signature help on jump placeholder.
autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
augroup end
" Applying codeAction to the selected region.
" Example: `<leader>aap` for current paragraph
xmap <leader>a <Plug>(coc-codeaction-selected)
nmap <leader>a <Plug>(coc-codeaction-selected)
" Remap keys for applying codeAction to the current buffer.
nmap <leader>ac <Plug>(coc-codeaction)
" Apply AutoFix to problem on the current line.
nmap <leader>qf <Plug>(coc-fix-current)
" Map function and class text objects
" NOTE: Requires 'textDocument.documentSymbol' support from the language server.
xmap if <Plug>(coc-funcobj-i)
omap if <Plug>(coc-funcobj-i)
xmap af <Plug>(coc-funcobj-a)
omap af <Plug>(coc-funcobj-a)
xmap ic <Plug>(coc-classobj-i)
omap ic <Plug>(coc-classobj-i)
xmap ac <Plug>(coc-classobj-a)
omap ac <Plug>(coc-classobj-a)
" Use CTRL-S for selections ranges.
" Requires 'textDocument/selectionRange' support of LS, ex: coc-tsserver
nmap <silent> <C-s> <Plug>(coc-range-select)
xmap <silent> <C-s> <Plug>(coc-range-select)
" Add `:Format` command to format current buffer.
command! -nargs=0 Format :call CocAction('format')
" Add `:Fold` command to fold current buffer.
command! -nargs=? Fold :call CocAction('fold', <f-args>)
" Add `:OR` command for organize imports of the current buffer.
command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport')
" Add (Neo)Vim's native statusline support.
" NOTE: Please see `:h coc-status` for integrations with external plugins that
" provide custom statusline: lightline.vim, vim-airline.
set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}
" Mappings for CoCList
" Show all diagnostics.
nnoremap <silent><nowait> <space>a :<C-u>CocList diagnostics<cr>
" Manage extensions.
nnoremap <silent><nowait> <space>e :<C-u>CocList extensions<cr>
" Show commands.
nnoremap <silent><nowait> <space>c :<C-u>CocList commands<cr>
" Find symbol of current document.
nnoremap <silent><nowait> <space>o :<C-u>CocList outline<cr>
" Search workspace symbols.
nnoremap <silent><nowait> <space>s :<C-u>CocList -I symbols<cr>
" Do default action for next item.
nnoremap <silent><nowait> <space>j :<C-u>CocNext<CR>
" Do default action for previous item.
nnoremap <silent><nowait> <space>k :<C-u>CocPrev<CR>
" Resume latest coc list.
nnoremap <silent><nowait> <space>p :<C-u>CocListResume<CR>
nnoremap <Leader>u :OmniSharpFindUsages<CR>
nnoremap <Leader>gd :OmniSharpGotoDefinition<CR>
nmap <silent> oi :OmniSharpFindImplementations<CR>
nnoremap <Leader>pd:OmniSharpPreviewDefinition<CR>
nnoremap <Leader>run :cd %:p:h<CR>:!dotnet run<CR>
inoremap { {}<Left>
inoremap {<CR> {<CR>}<Esc>O
inoremap {{ {
inoremap {} {}
I appreciate your help.
Thanks - do you mind editing that and wrapping the .vimrc in ```
regions? Some of the vimscript is being lost in the markdown translation.
I've updated the message, please let me know if you need anything else
Sorry, I got called away - yes that's much easier to read.
Is it possible that CoC is using its coc-omnisharp integration, and it's that that is giving the error?
I have no idea. The same .vimrc is working on another pc without problems, but maybe I've done something without knowing. How can I disable coc-omnisharp?
I don't know, I don't use Coc. But I can see someone getting the same error here: https://github.com/coc-extensions/coc-omnisharp/issues/5#issuecomment-525761961
Does CoC have its own configuration file, outside the .vimrc?
I don't have any additional coc file. I've tried to remove coc and now the timeout dissappeared, but nothing of omnisharp is working. The OmnisharStatus says everything is running but I can't see anything. In the PC I have this working, once I open a .cs file, I have colors in code, and I have suggestions while I'm typing. Edit: If I execute :OmniSharpGotoDefinition it's also not working
Can you post the log? :OmniSharpOpenLog
NVIM v0.4.3
OmniSharp server started. Path: C:\Users\rodri\AppData\Local\omnisharp-vim\omnisharp-roslyn\OmniSharp.exe Target: C:\repos\test PID: 4048
Starting OmniSharp on Windows 6.2.9200.0 (x64)
DotNetPath set to dotnet
Located 2 MSBuild instance(s)
1: Visual Studio Enterprise 2019 16.6.30204.135 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin"
2: StandAlone 16.4 - "C:\Users\rodri\AppData\Local\omnisharp-vim\omnisharp-roslyn\.msbuild\Current\Bin"
Registered MSBuild instance: Visual Studio Enterprise 2019 16.6.30204.135 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin"
Detecting Cake files in 'C:\repos\test'.
Could not find any Cake files
No solution files found in 'C:\repos\test'
Queue project update for 'C:\repos\test\test.csproj'
Detecting CSX files in 'C:\repos\test'.
Could not find any CSX files
Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0
Loading project: C:\repos\test\test.csproj
Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100
Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110
Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140
Configuration finished.
Omnisharp server running using Stdio at location 'C:\repos\test' on host -1.
Miscellaneous file: C:\repos\test\Program.cs added to workspace
Replaying requests for buffer 3
Successfully loaded project file 'C:\repos\test\test.csproj'.
All projects loaded
Adding project 'C:\repos\test\test.csproj'
Update project: test
Replaying on-load requests
Reading the log, it's mandatory to have a sln file?
Edit: I don't know why the issue was closed, I didn't mean to.
Ah this is neovim on Windows. This is the issue described in the README, and in #499 - it's a neovim bug (which has been fixed, but isn't yet part of a main neovim release). The solution is to either use Vim instead of neovim, or use neovim-nightly.
Oh, but the other PC is also with Windows and it's working great. Well, I'll move to vim and let you know. Thanks for your help.
Can you check the version of neovim running on the other PC? Could it be a nightly build?
Wait, you're right. NVIM v0.5.0-610-g326b87f3b
Yeah that's a nightly build
Great, I'll install this version on this PC too.
Thanks for all your help.
No worries
Hi, I've copied/pasted the .vimrc file from another pc and I can't get Omnisharp working. In the other pc is working as expected, but in this is giving me a timeout.
I'm installing like this: Plug 'OmniSharp/omnisharp-vim'
And I have this mappings: nnoremapu :OmniSharpFindUsages
nnoremap gd :OmniSharpGotoDefinition
nmap oi :OmniSharpFindImplementations
nnoremap pd:OmniSharpPreviewDefinition
nnoremap run :cd %:p:h:!dotnet run
inoremap { {}
inoremap { {}O
inoremap {{ {
inoremap {} {}
When opening a .cs file, after a few seconds, I'm getting the timeout error:
What I'm doing wrong?
Thanks for your help.