I notice that a script I sometimes use to automatically check in files with RCS when I save a file gives error under the new Vim 7.x but did not under Vim 6.4.
Here is the script: ==== Begin script autoci if version >= 600 if has("autocmd") syntax enable function! s:RCSCheckIn() cd %:p:h exe '!ci -l -m"'.strftime("%Y %b %d %X").'" -t- %:t' cd - endfuction function! s:HiStatusLines() hi StatusLine ctermfg=0 ctermbg=1 guifg=Black guibg=Red term=bold hi StatusLineNC ctermfg=0 ctermbg=1 guifg=Black guibg=DarkGreen endfuction augroup autoci au! autocmd BufWrite * exe 'silent call <sid>RCSCheckIn()' autocmd FileType * exe 'silent call <sid>HiStatusLines()' augroup END endif " has("autocmd") endif ==== E n d script autoci When I source this script under Vim 7.0 I receive the following errors: line 20: E126: Missing :endfunction line 21: E171: Missing :endif I have :endfunction and :endif commands for each :function and :if command so I do not understand why I am getting the error. Does it have something to do with defining function inside the scope of an :if statement? I compiled Vim 7.0 myself so I suppose I might have messed something up. I have enabled the Perl interpreter and CScope features using configure but otherwise done a straight forward compile. Here is the output of the :version command: VIM - Vi IMproved 7.0 (2006 May 7, compiled May 9 2006 22:25:48) Compiled by [EMAIL PROTECTED] Normal version with GTK2 GUI. Features included (+) or not (-): -arabic +autocmd +balloon_eval +browse +builtin_terms +byte_offset +cindent +clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments +cryptv +cscope +cursorshape +dialog_con_gui +diff +digraphs +dnd -ebcdic -emacs_tags +eval +ex_extra +extra_search -farsi +file_in_path +find_in_path +folding -footer +fork() +gettext -hangul_input +iconv +insert_expand +jumplist -keymap -langmap +libcall +linebreak +lispindent +listcmds +localmap +menu +mksession +modify_fname +mouse +mouseshape -mouse_dec +mouse_gpm -mouse_jsbterm -mouse_netterm +mouse_xterm +multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype +path_extra +perl +postscript +printer -profile -python +quickfix +reltime -rightleft -ruby +scrollbind +signs +smartindent -sniff +statusline -sun_workshop +syntax +tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup +X11 -xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save system vimrc file: "$VIM/vimrc" user vimrc file: "$HOME/.vimrc" user exrc file: "$HOME/.exrc" system gvimrc file: "$VIM/gvimrc" user gvimrc file: "$HOME/.gvimrc" system menu file: "$VIMRUNTIME/menu.vim" fall-back for $VIM: "/usr/local/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -I/opt/gnome/include/gtk-2.0 -I/opt/gnome/lib/gtk-2.0/include -I/usr/X11R6/include -I/opt/ gnome/include/atk-1.0 -I/opt/gnome/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/opt/gnome/include/glib-2.0 -I/opt/gnome/lib/glib-2.0/include -g -O2 -I/usr/X11 R6/include -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib/perl5/5.8.5/i586-linux-thread-multi/CORE Linking: gcc -L/opt/gnome/lib -L/usr/X11R6/lib -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.5/i586-linux-thread-multi/CORE -L/usr/local/lib -o vim -Wl,--export-dynamic -L/opt/gnome/lib -lgtk-x11-2 .0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lXt -lncurses -lgpm -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.5/i586-linux- thread-multi/CORE /usr/lib/perl5/5.8.5/i586-linux-thread-multi/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl5/5.8.5/i586-linux-thread-multi/CORE -lperl -lm -lutil -lc Press ENTER or type command to continue