I have updated my vim to 8.1.0037 (vim --version showed compiled 13th June), and when I opened it today multiple plugins are broken.
on a restart and reinstall all these plugins, they are still broken.
Any direction? it seems to me that the update has broken the plugins. (or plugins need to be updated)
running vim -N -u NONE started vim successfully without any error message.
my .vimrc looks like:
filetype plugin indent on
syntax on
set number
set encoding=utf-8
autocmd vimenter * NERDTree /home/myname
map <F4> :NERDTreeToggle<CR>
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
error messages looks like below.
Error detected while processing /home/myname/.vim/pack/myname/start/ctrlp.vim/plugin/ctrlp.vim:
line 13:
E475: Invalid argument:
line 14:
E10: \ should be followed by /, ? or &
line 15:
E10: \ should be followed by /, ? or &
Error detected while processing function ctrlp#mrufiles#opts:
line 1:
E15: Invalid expression:
E15: Invalid expression: ['g:ctrlp_mruf_', {
line 2:
E10: \ should be followed by /, ? or &
line 3:
E10: \ should be followed by /, ? or &
line 4:
E10: \ should be followed by /, ? or &
line 5:
E10: \ should be followed by /, ? or &
line 6:
line 10:
E121: Undefined variable: opts
E116: Invalid arguments for function items(opts)
E15: Invalid expression: items(opts)
Error detected while processing /home/myname/.vim/pack/myname/start/ctrlp.vim/plugin/ctrlp.vim:
line 50:
E10: \ should be followed by /, ? or &
line 53:
E10: \ should be followed by /, ? or &
Error detected while processing /home/myname/.vim/pack/myname/start/tagbar/plugin/tagbar.vim:
line 39:
E10: \ should be followed by /, ? or &
line 40:
E10: \ should be followed by /, ? or &
Error detected while processing function <SNR>45_setup_options:
line 6:
E697: Missing end of List ']':
E15: Invalid expression: [
Error detected while processing
/home/myname/.vim/pack/myname/start/tagbar/plugin/tagbar.vim:
line 88:
E15: Invalid expression:
E15: Invalid expression: has('multi_byte') && has('unix') && &encoding == 'utf-8' &&
line 89:
E10: \ should be followed by /, ? or &
Error detected while processing function <SNR>45_setup_keymaps:
line 1:
E697: Missing end of List ']':
E15: Invalid expression: [
Error detected while processing function airline#init#bootstrap:
line 24:
E15: Invalid expression:
E116: Invalid arguments for function extend
line 25:
E10: \ should be followed by /, ? or &
line 26:
E10: \ should be followed by /, ? or &
line 33:
E10: \ should be followed by /, ? or &
line 34:
E10: \ should be followed by /, ? or &
line 35:
E10: \ should be followed by /, ? or &
line 36:
E10: \ should be followed by /, ? or &
line 37:
E10: \ should be followed by /, ? or &
line 40:
E15: Invalid expression:
E116: Invalid arguments for function extend
line 41:
E10: \ should be followed by /, ? or &
line 42:
E10: \ should be followed by /, ? or &
line 43:
E10: \ should be followed by /, ? or &
line 44:
E10: \ should be followed by /, ? or &
line 45:
E10: \ should be followed by /, ? or &
line 46:
E10: \ should be followed by /, ? or &
line 47:
E10: \ should be followed by /, ? or &
line 48:
E10: \ should be followed by /, ? or &
line 49:
E10: \ should be followed by /, ? or &
line 55:
E15: Invalid expression:
E116: Invalid arguments for function extend
line 56:
E10: \ should be followed by /, ? or &
line 57:
E10: \ should be followed by /, ? or &
line 58:
E10: \ should be followed by /, ? or &
line 59:
E10: \ should be followed by /, ? or &
line 60:
E10: \ should be followed by /, ? or &
line 61:
E10: \ should be followed by /, ? or &
line 62:
E10: \ should be followed by /, ? or &
line 72:
E10: \ should be followed by /, ? or &
line 73:
E10: \ should be followed by /, ? or &
line 74:
E10: \ should be followed by /, ? or &
line 75:
E10: \ should be followed by /, ? or &
line 76:
E10: \ should be followed by /, ? or &
line 77:
E10: \ should be followed by /, ? or &
line 78:
E10: \ should be followed by /, ? or &
line 79:
E10: \ should be followed by /, ? or &
line 87:
E15: Invalid expression:
E116: Invalid arguments for function extend
line 88:
E10: \ should be followed by /, ? or &
line 89:
E10: \ should be followed by /, ? or &
line 90:
E10: \ should be followed by /, ? or &
line 91:
E10: \ should be followed by /, ? or &
line 92:
E10: \ should be followed by /, ? or &
line 93:
E10: \ should be followed by /, ? or &
line 94:
E10: \ should be followed by /, ? or &
line 95:
E10: \ should be followed by /, ? or &
line 103:
E10: \ should be followed by /, ? or &
line 104:
E10: \ should be followed by /, ? or &
line 105:
E10: \ should be followed by /, ? or &
line 106:
E10: \ should be followed by /, ? or &
line 107:
E10: \ should be followed by /, ? or &
line 108:
E10: \ should be followed by /, ? or &
line 109:
E10: \ should be followed by /, ? or &
line 110:
E10: \ should be followed by /, ? or &
line 113:
E15: Invalid expression:
E116: Invalid arguments for function airline#parts#define
line 114:
E10: \ should be followed by /, ? or &
line 115:
E10: \ should be followed by /, ? or &
line 116:
E10: \ should be followed by /, ? or &
line 122:
E15: Invalid expression:
E116: Invalid arguments for function airline#parts#define
line 123:
E10: \ should be followed by /, ? or &
line 124:
E10: \ should be followed by /, ? or &
line 125:
E10: \ should be followed by /, ? or &
line 128:
E15: Invalid expression:
E116: Invalid arguments for function airline#parts#define
line 129:
E10: \ should be followed by /, ? or &
line 130:
E10: \ should be followed by /, ? or &
line 131:
E15: Invalid expression:
E116: Invalid arguments for function airline#parts#define
line 132:
E10: \ should be followed by /, ? or &
line 133:
E10: \ should be followed by /, ? or &
line 135:
E697: Missing end of List ']':
E116: Invalid arguments for function airline#parts#define_empty
line 136:
E10: \ should be followed by /, ? or &
line 137:
E10: \ should be followed by /, ? or &
line 138:
E10: \ should be followed by /, ? or &
--- Auto-Commands ---
Error detected while processing function <SNR>46_airline_toggle:
line 19:
E10: \ should be followed by /, ? or &
line 20:
E10: \ should be followed by /, ? or &
--- Auto-Commands ---
line 33:
E10: \ should be followed by /, ? or &
--- Auto-Commands ---
VimEnter
*NERDTree /home/qiuxiao/
FileExplorer VimEnter
*sil call s:VimEnter(expand("<amatch>"))
youcompletemeStart VimEnter
*call youcompleteme#Enable()
NERDTreeHijackNetrw VimEnter
*silent! autocmd! FileExplorer
call nerdtree#checkForBrowse(expand("<amatch>"))
matchparen WinEnter
*call s:Highlight_Matching_Pair()
CtrlPMRUF BufWinEnter
*cal s:record(expand('<abuf>', 1))
filetypeplugin FileType
*call s:LoadFTPlugin()
filetypeindent FileType
*call s:LoadIndent()
syntaxset FileType
*exe "set syntax=" . expand("<amatch>")
line 35:
E10: \ should be followed by /, ? or &
--- Auto-Commands ---
line 43:
E10: \ should be followed by /, ? or &
line 44:
E10: \ should be followed by /, ? or &
--- Auto-Commands ---
Error detected while processing
/home/myname/.vim/pack/myname/start/vim-fugitive/plugin/fugitive.vim:
line 151:
E10: \ should be followed by /, ? or &
line 152:
E10: \ should be followed by /, ? or &
line 153:
E10: \ should be followed by /, ? or &
line 154:
E10: \ should be followed by /, ? or &
line 155:
E10: \ should be followed by /, ? or &
line 156:
E10: \ should be followed by /, ? or &
Press ENTER or type command to continue
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
Sounds like you're using jonathonf's vim PPA, which just updated to 8.1.0053. That has a bug which was fixed in 8.1.0055.
E10 is often caused by using continuation lines in 'compatible' mode, it says so under ":help E10". Adding -N on the command-line sets 'nocompatible' mode, which confirms the guess.
However, it is said under ":help 'compatible'" that this option defaults to off when a .vimrc is found, so you ought to be running in 'nocompatible' mode, unless those scripts are sourced before your vimrc.
So check the output of :scriptnames to see when those "start" scripts are sourced. Any script sourced before the vimrc needs something like the following if it uses continuation lines:
at the top (or after an "early finish" if there is a condition which prevents sourcing the script):
let s:save_cpo = &cpo set cpo&vim
at bottom:
let &cpo = s:save_cpo
and no finish in between.
Have this problem too!
I don't see how any of the recent patches has an effect on 'compatible'. Perhaps the change is in some plugin?
@brammool I am using vim8's plugin manager which doesn't seem to update the plugin automatically? I am saying this because the plugins are just sitting there, only thing changes was vim got updated to 8.1.0037 (with patch 8.1.0057). Any chance it is not to do with ompatible ?
probably it is wrong term I used; I didn't mean it was a plugin manager strictly but rather it has capacity to load plugins. I'll try update the plugins before I build vim from source.
right latest update on this one. so here's what I did:
First Try:
git pull origin master on nerdTree to get the latest nerdTree.result: it didn't fix vim and nerdTree in vim still didn't work.
Second Try:
.vim folder remained intact, nerdTree is there as is)./configure --enable-multibyte --enable-perlinterp=dynmaic --enable-rubyinterp --with-ruby-command=/usr/bin/ruby --enable-pythoninterp --enable-python3interp --with-python3-command=python3 --enable-luainterp=dynamic --enable-cscope --enable-gui=auto --with-features=huge --with-x --enable-fontset --enable-largefile --with-compiledby=MQX --enable-fail-if-missingto run above, make sure you have lua-5.1-dev and ruby-dev installed.
4.make and install vim.
result: re-run vim with existing nerdTree, nerdTree worked fine. installed all other plug-ins and they also worked fine. (e.g ctrllp, vim-airline worked fine)
@jamessan @chrisbra it does seem to fix the issue in 8.1.0053, whatever that was..
I similarly have this problem with jonathonf's Vim, but not with a Vim I build myself, even at the same patch version. I can't really see how patch 53 (commit ffa9684) would be related either.
The following vimrc reproduces the problem, plugins have nothing to do with it:
let g:some_variable = { \'key': 'value' \}
with this error on startup:
Error detected while processing /home/josh/.vimrc:
line 1:
E15: Invalid expression:
E15: Invalid expression: {
line 2:
E10: \ should be followed by /, ? or &
line 3:
E10: \ should be followed by /, ? or &
Running with this vimrc is interesting:
echo &compatible " output: 0 echo &cpo " output: aAbBcCdDeEfFgHiIjJkKlLmMnoOpPqrRsStuvwWxXyZ$!%*-+<>; set nocompatible echo &cpo " output: aABceFs let g:some_variable = { \'key': 'value' \}
In other words, inserting an explicit set nocompatible fixes the problem, but nocompatible is apparently already set when vimrc executes: echo &compatible at the start of the vimrc prints 0! Nevertheless, cpo is set as if Vim is in compatible mode.
As far as I can tell, all the previous scripts in :scriptnames behave properly and save/restore cpo at start and end.
All the above was with Vim from jonathonf's PPA; with my own compiled Vim (version details below), everything works fine. I have emailed Jonathan to see if he has any ideas.
vim --version for jonathonf's Vim
VIM - Vi IMproved 8.1 (2018 May 17, compiled Jun 13 2018 07:46:35)
Included patches: 1-53
Modified by pkg-vim-m...@lists.alioth.debian.org
Compiled by pkg-vim-m...@lists.alioth.debian.org
Huge version with GTK2 GUI. Features included (+) or not (-):
+acl +farsi +mouse_sgr -tag_any_white
+arabic +file_in_path -mouse_sysmouse +tcl
+autocmd +find_in_path +mouse_urxvt +termguicolors
-autoservername +float +mouse_xterm +terminal
+balloon_eval +folding +multi_byte +terminfo
+balloon_eval_term -footer +multi_lang +termresponse
+browse +fork() -mzscheme +textobjects
++builtin_terms +gettext +netbeans_intg +timers
+byte_offset -hangul_input +num64 +title
+channel +iconv +packages +toolbar
+cindent +insert_expand +path_extra +user_commands
+clientserver +job +perl +vertsplit
+clipboard +jumplist +persistent_undo +virtualedit
+cmdline_compl +keymap +postscript +visual
+cmdline_hist +lambda +printer +visualextra
+cmdline_info +langmap +profile +viminfo
+comments +libcall -python +vreplace
+conceal +linebreak +python3 +wildignore
+cryptv +lispindent +quickfix +wildmenu
+cscope +listcmds +reltime +windows
+cursorbind +localmap +rightleft +writebackup
+cursorshape +lua +ruby +X11
+dialog_con_gui +menu +scrollbind -xfontset
+diff +mksession +signs +xim
+digraphs +modify_fname +smartindent +xpm
+dnd +mouse +startuptime +xsmp_interact
-ebcdic +mouseshape +statusline +xterm_clipboard
+emacs_tags +mouse_dec -sun_workshop -xterm_save
+eval +mouse_gpm +syntax
+ex_extra -mouse_jsbterm +tag_binary
+extra_search +mouse_netterm +tag_old_static
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
system gvimrc file: "$VIM/gvimrc"
user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
defaults file: "$VIMRUNTIME/defaults.vim"
system menu file: "$VIMRUNTIME/menu.vim"
fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/freetype2 -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -L. -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lnsl -lselinux -lacl -lattr -lgpm -ldl -L/usr/lib -llua5.2 -Wl,-E -fstack-protector-strong -L/usr/local/lib -L/usr/lib/x86_64-linux-gnu/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt -L/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu -lpython3.5m -lpthread -ldl -lutil -lm -L/usr/lib/x86_64-linux-gnu -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -lm
vim --version for my own Vim
VIM - Vi IMproved 8.1 (2018 May 17, compiled Jun 15 2018 23:51:07)
Included patches: 1-53
Compiled by josh@yes
Huge version without GUI. Features included (+) or not (-):
+acl +farsi +mouse_sgr -tag_any_white
+arabic +file_in_path -mouse_sysmouse -tcl
+autocmd +find_in_path +mouse_urxvt +termguicolors
-autoservername +float +mouse_xterm +terminal
-balloon_eval +folding +multi_byte +terminfo
+balloon_eval_term -footer +multi_lang +termresponse
-browse +fork() -mzscheme +textobjects
++builtin_terms +gettext +netbeans_intg +timers
+byte_offset -hangul_input +num64 +title
+channel +iconv +packages -toolbar
+cindent +insert_expand +path_extra +user_commands
-clientserver +job -perl +vertsplit
-clipboard +jumplist +persistent_undo +virtualedit
+cmdline_compl +keymap +postscript +visual
+cmdline_hist +lambda +printer +visualextra
+cmdline_info +langmap +profile +viminfo
+comments +libcall -python +vreplace
+conceal +linebreak -python3 +wildignore
+cryptv +lispindent +quickfix +wildmenu
+cscope +listcmds +reltime +windows
+cursorbind +localmap +rightleft +writebackup
+cursorshape -lua -ruby -X11
+dialog_con +menu +scrollbind -xfontset
+diff +mksession +signs -xim
+digraphs +modify_fname +smartindent -xpm
-dnd +mouse +startuptime -xsmp
-ebcdic -mouseshape +statusline -xterm_clipboard
+emacs_tags +mouse_dec -sun_workshop -xterm_save
+eval -mouse_gpm +syntax
+ex_extra -mouse_jsbterm +tag_binary
+extra_search +mouse_netterm +tag_old_static
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
defaults file: "$VIMRUNTIME/defaults.vim"
fall-back for $VIM: "/usr/local/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -O2 -fno-strength-reduce -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -L/usr/local/lib -Wl,--as-needed -o vim -lm -ltinfo -lnsl -lselinux -lacl -lattr -ldl
I've got Launchpad building a daily PPA (ppa:jonathonf/vim-daily). You can check whether that version works better and let me know so I can push the package to the "main" PPA.
Packaging files are based on the Debian/Ubuntu packaging files with adaption to reintroduce things dropped since Xenial. It's quite possible this introduces issues.
A recent version of Vim "broke" an older Pathogen version so you might simply need to update your plugins.
@anowlcalledjosh the problem wasn’t with a vim built by myself; it started with Jonathan’s ppa version; with your findings it seems more likely it’s related to what @jonathonf mentioned.
I’ve tried updating plugins with @jonathonf build it didn’t help. that was my first try which I detailed in comment above.
I'm having this problem w/ vim (particularly vim-gtk3) installed from @jonathonf 's ppa (thanks Jonathon), version 2:8.1.0037+v8.1.0053-0~ubuntu16.04.1 on Linux Mint 18.3 (based on Ubuntu 16.04). The previous version which worked was 2:8.1.0037-0york1~16.04
Based on the comment above I've added the vim-daily ppa and tested version 2:8.1.0037+v8.1.0055-0~ubuntu16.04.1
The issue still exists. I get (there's more but it's pretty much the same as above):
Error detected while processing /home/mike/dotfiles/vim/pack/my-plugins/start/vim-colors-solarized/colors/solarized.vim:
line 138:
E697: Missing end of List ']':
E15: Invalid expression: [
line 139:
In https://groups.google.com/d/topic/vim_use/94wo-ZiqJwo/discussion someone had suggested looking at cpoptions and it's value is different than it was before the version that broke.
What I reported in that thread was:
running :verbose set cpoptions?
cpoptions=aAbBcCdDeEfFgHiIjJkKlLmMnoOpPqrRsStuvwWxXyZ$!%*-+<>;
Last set from /usr/share/vim/vim81/menu.vim
I happen to have a VM which hadn't installed the update and running :verbose set cpoptions? gave:
cpoptions=aABceFs
Last set from /usr/share/vim/vim81/menu.vim
so something changed, but I'm not sure how to figure out what.
/usr/share/vim/vim81/menu.vim
Can you share that please?
IIUC, and contrary to the documentation, Vim no longer sets 'nocompatible' when a vimrc is found. Apparently it is assumed that it is enough to have defaults.vim start with set nocompatible, but what if a vimrc doesn't source defaults.vim or vimrc_example.vim, doesn't explicitly set 'nocompatible' and yet expects it to be set by the mere fact of there being a vimrc, like it used to be?
P.S. I expect that menu.vim saves and restores 'cpoptions'. If Vim "forgot" to :set nocompatible when it found the vimrc, all flags will be set, while once upon a time, Vim didn't forget, and only a few flags were set.
Best regards,
Tony.
Here's the beginning and end of /usr/share/vim/vim81/menu.vim
" Make sure the '<' and 'C' flags are not included in 'cpoptions', otherwise
" <CR> would not be recognized. See ":help 'cpoptions'".
let s:cpo_save = &cpo
set cpo&vim
<snip 1138 lines> If you need them I can post them.
" Restore the previous value of 'cpoptions'.
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: set sw=2 :
I looked at pack/my-plugins/start/vim-colors-solarized/colors/solarized.vim, it doesn't include any lines similar to the above that save-set-restore cpoptions.
I can certainly add a set cpo&vim to the top of my .vimrc. Would that affect plugins (what order are vimrc & plugins loaded in?)
—
Thanks @brammool I think that helped me track down what's going on although I think it's related to the packages, so @jonathonf probably has to see if what I'm saying makes sense.
Looking at the system /usr/share/vim/vimrc file I saw the runtime! debian.vim and the following comments about nocompatible. When I went to look for debian.vim it wasn't where it belonged in vim81, instead there was a new directory (which didn't exist in the previously installed version from the jonathonf/ vim PPA) /usr/share/vim/vim810037+v81/ which contained debian.vim and a doc subdirectory.
I'm pretty sure that new directory is an error and its contents belong in /usr/share/vim/vim81/
@brammool : Maybe I jumped to conclusions, but I saw two different posters in this thread with "minimum" vimrc scripts (with no set nocompatible, no runtime vimrc_example.vim and no runtime defaults.vim in them), and AFAICT both those vimrc scripts were started in 'compatible' mode (or at least with all 'cpoptions' flags set), while they said (albeit I cannot rule out their being mistaken) that "nothing had changed" since when it worked.
Now it looks like some third-party scripts had been misbehaving.
Best regards,
Tony.
instead there was a new directory ... /usr/share/vim/vim810037+v81/
I suspect this is down to the "odd" version number of the daily builds in trying to work around the allowed variables in the Launchpad build recipes.
It looks like the Debian packaging rules are parsing the version number differently to how I expected and so installing files in the wrong place,
rules.conf
166:# Convert x.y.z to x.y
167:VERSION:=$(basename $(DEB_VERSION_UPSTREAM))
168:VIMCUR:=$(NAME)$(substr .,,$(VERSION))
vim-common.install.in
3:debian/runtime/debian.vim usr/share/vim/@VIMCUR@/
Either I need to come up with a different version number scheme or alter the logic for VIMCUR.
Thanks @jonathonf . Took me a while to be able to install the new version because of broken packages (probably due to the mucking about I did trying to figure out what was going on), but I've now got version 2:8.1.0061-0york1~16.04 (of vim-gtk3) installed and working perfectly. And thanks for maintaining the vim PPA.
Thanks also to all the commenters. I learned a whole lot and would never have figured out what was going on without your helpful comments on what might be happening.
It looks like there are other uses of VIMCUR throughout the packaging files. To fix the file conflicts it should just be a case of:
apt-get upgrade
apt-get install -f
apt-get upgrade
(I just had to do the same thing)
closing this, as this seems to be no problem we can fix here.
Closed #3014.