On Fri, 14 Dec 2012 20:24:27 +0100
"Niels Kobschätzki" <[email protected]> wrote:
> Hi!
>
> When I install Ultisnips via vundle I get the following error
> messages shown for a very short moment:
>
> Error detected while processing
> /Users/username/Dotfiles/vim/bundle/LaTeX-Suite-aka-Vim-LaTeX/plugin/remoteOpen.vim:
> line 33:
> E174: Command already exists: add ! to replace it
> Error detected while processing
> /Users/username/Dotfiles/vim/bundle/vim-bclose/plugin/bclose.vim:
> line 61:
> E122: Function <SNR>43_Kwbd already exists, add ! to replace it
>
> I looked into those files and line 33 of remoteOpen.vim reads
> com -nargs=1 RemoteOpen :call RemoteOpen('<args>')
>
> and line 61 in bclose.vim just reads:
> endfunction (the whole function is at the end of the mail)
>
> Previously I had snipmate installed but after reading about ultisnips
> I wanted to try that. So I removed snipmate via vundle and installed
> ultisnips. Now the above error messages come up.
>
> Any ideas what I can do about it or at least get to know where the
> command and function exist as well?
When I received errors like the ones you've described the case was
always, that vim sourced the corresponding files (in your case
bclose.vim, remoteOpen.vim) more than once.
I suspect, that the reason for your errors is the same. That is
supported by the fact that vim mourns about the existence of s:Kwbd.
But actually, the 's:' prefix says that the function is scoped to the
file where the function is located. So the only way that another
function conflicts bclose.vim/s:Kwbd is a function with the same name
in the same file i.e. sourcing the file twice.
So i'm quite sure, that UltiSnips isn't the reason for your errors.
The easiest way to solve the error would be to do what vim suggest. Add
the '!' to the command and the function.
Another possibility is to study the output of ':scriptnames'.
>
> I am on OS X, using MacVim Snapshot 65 (which uses vim 7.3.646) and
> my .vim-folder is symlinked to ~/Dotfiles/vim.
>
> Thanks in advance for any help,
>
> Niels
>
> function from bclose.vim:
> function s:Kwbd(kwbdStage)
> if(a:kwbdStage == 1)
> if(!buflisted(winbufnr(0)))
> bd!
> return
> endif
> let s:kwbdBufNum = bufnr("%")
> let s:kwbdWinNum = winnr()
> windo call s:Kwbd(2)
> execute s:kwbdWinNum . 'wincmd w'
> let s:buflistedLeft = 0
> let s:bufFinalJump = 0
> let l:nBufs = bufnr("$")
> let l:i = 1
> while(l:i <= l:nBufs)
> if(l:i != s:kwbdBufNum)
> if(buflisted(l:i))
> let s:buflistedLeft = s:buflistedLeft + 1
> else
> if(bufexists(l:i) && !strlen(bufname(l:i)) &&
> !s:bufFinalJump)
> let s:bufFinalJump = l:i
> endif
> endif
> endif
> let l:i = l:i + 1
> endwhile
> if(!s:buflistedLeft)
> if(s:bufFinalJump)
> windo if(buflisted(winbufnr(0))) | execute "b! " .
> s:bufFinalJump | endif
> else
> enew
> let l:newBuf = bufnr("%")
> windo if(buflisted(winbufnr(0))) | execute "b! " . l:newBuf
> | endif
> endif
> execute s:kwbdWinNum . 'wincmd w'
> endif
> if(buflisted(s:kwbdBufNum) || s:kwbdBufNum == bufnr("%"))
> execute "bd! " . s:kwbdBufNum
> endif
> if(!s:buflistedLeft)
> set buflisted
> set bufhidden=delete
> set buftype=nofile
> setlocal noswapfile
> endif
> else
> if(bufnr("%") == s:kwbdBufNum)
> let prevbufvar = bufnr("#")
> if(prevbufvar > 0 && buflisted(prevbufvar) && prevbufvar !=
> s:kwbdBufNum)
> b #
> else
> bn
> endif
> endif
> endif
> endfunction
>
>
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php