updated for version 7.1a
diff --git a/runtime/autoload/adacomplete.vim b/runtime/autoload/adacomplete.vim
new file mode 100644
index 0000000..28d68f6
--- /dev/null
+++ b/runtime/autoload/adacomplete.vim
@@ -0,0 +1,109 @@
+"------------------------------------------------------------------------------
+"  Description: Vim Ada omnicompletion file
+"     Language:	Ada (2005)
+"	   $Id$
+"   Maintainer:	Martin Krischik
+"      $Author$
+"	 $Date$
+"      Version: 4.2
+"    $Revision$
+"     $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/adacomplete.vim $
+"      History: 24.05.2006 MK Unified Headers
+"		26.05.2006 MK improved search for begin of word.
+"		16.07.2006 MK Ada-Mode as vim-ball
+"		15.10.2006 MK Bram's suggestion for runtime integration
+"		05.11.2006 MK Bram suggested not to use include protection for
+"			      autoload
+"		05.11.2006 MK Bram suggested agaist using setlocal omnifunc 
+"		05.11.2006 MK Bram suggested to save on spaces
+"    Help Page: ft-ada-omni
+"------------------------------------------------------------------------------
+
+if version < 700
+   finish
+endif
+
+" Section: adacomplete#Complete () {{{1
+"
+" This function is used for the 'omnifunc' option.
+"
+function! adacomplete#Complete (findstart, base)
+   if a:findstart == 1
+      return ada#User_Complete (a:findstart, a:base)
+   else
+      "
+      " look up matches
+      "
+      if exists ("g:ada_omni_with_keywords")
+	 call ada#User_Complete (a:findstart, a:base)
+      endif
+      "
+      "  search tag file for matches
+      "
+      let l:Pattern  = '^' . a:base . '.*$'
+      let l:Tag_List = taglist (l:Pattern)
+      "
+      " add symbols
+      "
+      for Tag_Item in l:Tag_List
+	 if l:Tag_Item['kind'] == ''
+	    "
+	    " Tag created by gnat xref
+	    "
+	    let l:Match_Item = {
+	       \ 'word':  l:Tag_Item['name'],
+	       \ 'menu':  l:Tag_Item['filename'],
+	       \ 'info':  "Symbol from file " . l:Tag_Item['filename'] . " line " . l:Tag_Item['cmd'],
+	       \ 'kind':  's',
+	       \ 'icase': 1}
+	 else
+	    "
+	    " Tag created by ctags
+	    "
+	    let l:Info	= 'Symbol		 : ' . l:Tag_Item['name']  . "\n"
+	    let l:Info .= 'Of type		 : ' . g:ada#Ctags_Kinds[l:Tag_Item['kind']][1]  . "\n"
+	    let l:Info .= 'Defined in File	 : ' . l:Tag_Item['filename'] . "\n"
+
+	    if has_key( l:Tag_Item, 'package')
+	       let l:Info .= 'Package		    : ' . l:Tag_Item['package'] . "\n"
+	       let l:Menu  = l:Tag_Item['package']
+	    elseif has_key( l:Tag_Item, 'separate')
+	       let l:Info .= 'Separate from Package : ' . l:Tag_Item['separate'] . "\n"
+	       let l:Menu  = l:Tag_Item['separate']
+	    elseif has_key( l:Tag_Item, 'packspec')
+	       let l:Info .= 'Package Specification : ' . l:Tag_Item['packspec'] . "\n"
+	       let l:Menu  = l:Tag_Item['packspec']
+	    elseif has_key( l:Tag_Item, 'type')
+	       let l:Info .= 'Datetype		    : ' . l:Tag_Item['type'] . "\n"
+	       let l:Menu  = l:Tag_Item['type']
+	    else
+	       let l:Menu  = l:Tag_Item['filename']
+	    endif
+
+	    let l:Match_Item = {
+	       \ 'word':  l:Tag_Item['name'],
+	       \ 'menu':  l:Menu,
+	       \ 'info':  l:Info,
+	       \ 'kind':  l:Tag_Item['kind'],
+	       \ 'icase': 1}
+	 endif
+	 if complete_add (l:Match_Item) == 0
+	    return []
+	 endif
+	 if complete_check ()
+	    return []
+	 endif
+      endfor
+      return []
+   endif
+endfunction adacomplete#Complete
+
+finish " 1}}}
+
+"------------------------------------------------------------------------------
+"   Copyright (C) 2006	Martin Krischik
+"
+"   Vim is Charityware - see ":help license" or uganda.txt for licence details.
+"------------------------------------------------------------------------------
+" vim: textwidth=78 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
+" vim: foldmethod=marker