Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

E117: Unknown function: vundle#begin #506

Closed
naijim opened this issue Aug 22, 2014 · 12 comments
Closed

E117: Unknown function: vundle#begin #506

naijim opened this issue Aug 22, 2014 · 12 comments

Comments

@naijim
Copy link

naijim commented Aug 22, 2014

I had old vundle installed. Instead of using git pull to update vundle, I removed old vundle from ~/.vim and installed it folowing Quick Start section in the Github page of vundle.
I am currently using Archlinux.

Maybe I broke something when I installed new vundle. I get this:

jack@Jack-PC ~ $ vim .vimrc
Error detected while processing /home/jack/.vimrc:
line    6:
E117: Unknown function: vundle#begin
Error detected while processing function vundle#config#bundle..vundle#config#init_bundle..<SNR>6_rtpath..1:
line    1:
E121: Undefined variable: g:bundle_dir
E116: Invalid arguments for function s:expand_path(g:bundle_dir.'/'.self.name)
E15: Invalid expression: s:expand_path(g:bundle_dir.'/'.self.name)
Error detected while processing function vundle#config#bundle..<SNR>6_rtp_rm_a:
line    1:
E121: Undefined variable: g:bundles
E116: Invalid arguments for function copy(g:bundles), 'v:val.rtpath')
E116: Invalid arguments for function map(copy(g:bundles), 'v:val.rtpath')
E15: Invalid expression: map(copy(g:bundles), 'v:val.rtpath')
line    2:
E121: Undefined variable: paths
E116: Invalid arguments for function join(paths, ',')
E15: Invalid expression: join(paths, ',')
line    3:
E121: Undefined variable: paths
E116: Invalid arguments for function join(paths, '/after,').'/after'
E15: Invalid expression: join(paths, '/after,').'/after'
line    4:
E121: Undefined variable: prepends
E116: Invalid arguments for function fnameescape(prepends)
E15: Invalid expression: 'set rtp-='.fnameescape(prepends)
line    5:
E121: Undefined variable: appends
E116: Invalid arguments for function fnameescape(appends)
E15: Invalid expression: 'set rtp-='.fnameescape(appends)
Error detected while processing function vundle#config#bundle:
line    3:
E121: Undefined variable: g:bundles
E116: Invalid arguments for function add
Error detected while processing function vundle#config#bundle..<SNR>6_rtp_add_a:
line    1:
E121: Undefined variable: g:bundles
E116: Invalid arguments for function copy(g:bundles), 'v:val.rtpath')
E116: Invalid arguments for function map(copy(g:bundles), 'v:val.rtpath')
E15: Invalid expression: map(copy(g:bundles), 'v:val.rtpath')
line    2:
E121: Undefined variable: paths
E116: Invalid arguments for function join(paths, ',')
E15: Invalid expression: join(paths, ',')
line    3:
E121: Undefined variable: paths
E116: Invalid arguments for function join(paths, '/after,').'/after'
E15: Invalid expression: join(paths, '/after,').'/after'
line    4:
E121: Undefined variable: prepends
E116: Invalid arguments for function fnameescape(prepends)
E15: Invalid expression: 'set rtp^='.fnameescape(prepends)
line    5:
E121: Undefined variable: appends
E116: Invalid arguments for function fnameescape(appends)
E15: Invalid expression: 'set rtp+='.fnameescape(appends)
Error detected while processing /home/jack/.vimrc:
line   15:
E117: Unknown function: vundle#end
Press ENTER or type command to continue

I exactally followed the instractions on the Github page.

" .vimrc
set nocompatible
filetype off 

" Vundle 
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'gmarik/Vundle.vim'
call vundle#end()
filetype plugin indent on

/etc/vimrc only contains one line:

runtime! archlinux.vim    

And the content of archlinux.vim:

" The ArchLinux global vimrc - setting only a few sane defaults
"
" Maintainer:      Thomas Dziedzic [[email protected]]
"
" NEVER EDIT THIS FILE, IT'S OVERWRITTEN UPON UPGRADES, GLOBAL CONFIGURATION
" SHALL BE DONE IN /etc/vimrc, USER SPECIFIC CONFIGURATION IN ~/.vimrc

" Normally we use vim-extensions. If you want true vi-compatibility
" remove change the following statements
set nocompatible                " Use Vim defaults instead of 100% vi compatibility
set backspace=indent,eol,start  " more powerful backspacing

" Now we set some defaults for the editor
set history=50                  " keep 50 lines of command line history
set ruler                       " show the cursor position all the time

" Suffixes that get lower priority when doing tab completion for filenames.
" These are files we are not likely to want to edit or read.
set suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc,.png,.jpg

if has('gui_running')
  " Make shift-insert work like in Xterm
  map <S-Insert> <MiddleMouse>
  map! <S-Insert> <MiddleMouse>
endif

The Dir tree:

.vim
└── bundle
    └── Vundle.vim
        ├── autoload
        │   ├── vundle
        │   │   ├── config.vim
        │   │   ├── installer.vim
        │   │   └── scripts.vim
        │   └── vundle.vim
        ├── changelog.md
        ├── CONTRIBUTING.md
        ├── doc
        │   └── vundle.txt
        ├── LICENSE-MIT.txt
        ├── README.md
        └── test
            ├── files
            │   └── test.erl
            ├── minirc.vim
            └── vimrc

The output of :scriptnames

  1: /etc/vimrc
  2: /usr/share/vim/vimfiles/archlinux.vim
  3: ~/.vimrc
  4: /usr/share/vim/vim74/ftoff.vim
  5: /usr/share/vim/vimfiles/autoload/vundle.vim
  6: /usr/share/vim/vimfiles/autoload/vundle/config.vim
  7: /usr/share/vim/vim74/filetype.vim
  8: /usr/share/vim/vimfiles/ftdetect/conkyrc.vim
  9: /usr/share/vim/vimfiles/ftdetect/systemd.vim
 10: /usr/share/vim/vimfiles/ftdetect/udev.vim
 11: /usr/share/vim/vim74/ftplugin.vim
 12: /usr/share/vim/vim74/indent.vim
 13: /usr/share/vim/vim74/plugin/getscriptPlugin.vim
 14: /usr/share/vim/vim74/plugin/gzip.vim
 15: /usr/share/vim/vim74/plugin/matchparen.vim
 16: /usr/share/vim/vim74/plugin/netrwPlugin.vim
 17: /usr/share/vim/vim74/plugin/rrhelper.vim
 18: /usr/share/vim/vim74/plugin/spellfile.vim
 19: /usr/share/vim/vim74/plugin/tarPlugin.vim
 20: /usr/share/vim/vim74/plugin/tohtml.vim
 21: /usr/share/vim/vim74/plugin/vimballPlugin.vim
 22: /usr/share/vim/vim74/plugin/zipPlugin.vim
 23: /usr/share/vim/vim74/scripts.vim
@naijim
Copy link
Author

naijim commented Aug 23, 2014

Anyone has an idea what happened?

@lucc
Copy link
Contributor

lucc commented Aug 23, 2014

what is the output of these commands:

cd ~/.vim/bundle/Vundle.vim
git remote -v
git pull
git rev-parse HEAD
grep -nC 3 'vundle#begin' autoload/vundle.vim

for me it is

origin  https://github.com/gmarik/Vundle.vim.git (fetch)
origin  https://github.com/gmarik/Vundle.vim.git (push)

git pull says Already up-to-date. and HEAD is at 0b28e33.
grep reports

69-
70-" Alternative to vundle#rc, offers speed up by modifying rtp only when end()
71-" called later.
72:func! vundle#begin(...) abort
73-  let g:vundle_lazy_load = 1
74-  call call('vundle#rc', a:000)
75-endf

Is this similar for you?

@naijim
Copy link
Author

naijim commented Aug 23, 2014

I have totally the same output as you

@lucc
Copy link
Contributor

lucc commented Aug 24, 2014

There is something that I noticed only now:
Your :scriptnames says that you load Vundle from /usr/share/vim/vimfiles but your directory listing seems to be for ~/.vim. I guess you have two versions of Vundle installed (in your &rtp). If that is the case please remove one version. Else please provide the output of :echo &rtp and of find ~/.vim /usr/share/vim/vimfiles -ls. And also the output of the commands from my previous post for the directory /usr/share/vim/vimfiles.

@naijim
Copy link
Author

naijim commented Aug 24, 2014

I remember that I have not installed Vunlde in /usr/share/vim/vimfiles/autoload/vundle.vim
and /usr/share/vim/vimfiles/autoload/vundle/config.vim. That is strange.

@naijim
Copy link
Author

naijim commented Aug 24, 2014

Problem resolved! Thanks!

@whatyouhide
Copy link

@naijim Since this issue has been resolved, could you consider closing it? Thanks! 👍

@naijim naijim closed this as completed Sep 4, 2014
@ideamean
Copy link

@lucc thanks, resolved it.

@Hearen
Copy link

Hearen commented Nov 13, 2015

@naijim Since you solved it! How about sharing some experience with us?! Thanks in advance!

@naijim
Copy link
Author

naijim commented Nov 13, 2015

search your system and delete other vundle. just keep one copy of vundle in your .vim directory

@Hearen
Copy link

Hearen commented Dec 3, 2015

@naijim Thanks so much, though I have already solved that by reconfiguring the .vimrc.

tallamjr added a commit to tallamjr/dotfiles that referenced this issue Jan 2, 2016
when dotfiles are cloned onto another system, the command git remote -v
in .vim/bundle/Vundle.vim reveals it tracks the dotfiles repo instead of
gmariks repo. Better to have in install script to install Vundle fresh

For reference see:

https://github.com/VundleVim/Vundle.vim
VundleVim/Vundle.vim#506
@Why-did-your
Copy link

I encountered the following error:
E492 :Not an editor command: ^m
E182:Invalid command name
E15:Invalid expression: (has('sign')) ^m
E171: Missing : endif
E117: Unknown function : vundle#end

My .vimrc just like:
set nocompatible
filetype off
set rtp+=/home/auto/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin VundleVim/Vundle.vim
call vundle#end()
filetype plugin indent on

set tabstop=4
...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants