0

I'm having trouble installing vundle on Vim(Windows 10). Following the instruction here https://github.com/VundleVim/Vundle.vim I basically get to the point where I modify my vimrc. When I try to run :PluginInstall the output I get is that theres no such command. Here is my vimrc, modified:

set nocompatible              " be iMproved, required
filetype off                  " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/vundle.vim
call vundle#begin()

Plugin 'VundleVim/Vundle.vim'
call vundle#end()            " required
filetype plugin indent on    " required

" Vim with all enhancements
source $VIMRUNTIME/vimrc_example.vim

" Use the internal diff if available.
" Otherwise use the special 'diffexpr' for Windows.
if &diffopt !~# 'internal'
  set diffexpr=MyDiff()
endif
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg1 = substitute(arg1, '!', '\!', 'g')
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg2 = substitute(arg2, '!', '\!', 'g')
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let arg3 = substitute(arg3, '!', '\!', 'g')
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      if empty(&shellxquote)
        let l:shxq_sav = ''
        set shellxquote&
      endif
      let cmd = '"' . $VIMRUNTIME . '\diff"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  let cmd = substitute(cmd, '!', '\!', 'g')
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
  if exists('l:shxq_sav')
    let &shellxquote=l:shxq_sav
  endif
endfunction
set number
set encoding=utf-8

Searching for solution i suddendly encountered here Vundle - E492: Not an editor command: PluginInstall this comment:

This happened to my work machine (Windows) because I was using Cygwin VIM. The problem was that when I cloned Vundle.vim it used Windows style line endings and the Vundle plugin wasn't loading. I had to run find ~/.vim -type f -iname '*.vim' -exec dos2unix {} \+ to convert my files to unix line endings before it worked.

This assumes you have dos2unix installed.

I indeed have installed Cygwin and I run windows but then nor the proposed solution worked nor I really understood what could be the matter.

filbranden
  • 8,522
  • 2
  • 16
  • 32

2 Answers2

2

The issue was related to cygwin, since git and cygwin will interpret the paths differently, i did:

$ git clone https://github.com/VundleVim/Vundle.vim.git /cygwin64/home/USERNAME/.vim/bundle/Vundle.vim 

and then in the vimrc instead of

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

i put this

set rtp+=c:/cygwin64/home/USERNAME/.vim/bundle/Vundle.vim/ call vundle#begin('c:/cygwin64/home/USERNAME/.vim/bundle/')
0

Do you have curl and git installed on your windows machine and on your path (not in cygwin)? You should be able to type both from a comamnd prompt and see some output.

The wiki specifies git and curl as requirements for Vundle on Windows.

DoYouEvenCodeBro
  • 391
  • 3
  • 14