From the error message you're getting, it seems your Vim doesn't have Ruby support compiled in.
See this code snippet:
call s:ErrMsg( "Error: Rubycomplete requires vim compiled with +ruby" )
call s:ErrMsg( "Error: falling back to syntax completion" )
" lets fall back to syntax completion
noinsert - do not insert any text for a match until the user selects a match from the menu. Only works in combination with "menu" or "menuone". No effect if "longest" is present.
For more info:
You can use <C-x><C-f> to enter filename completion.
Vim will understand the partial path already typed and offer you suggestions from paths in the filesystem. You can use the usual <C-p> and <C-n> to navigate the completion menu, also <C-f> works the same as <C-n> in this specific menu.
If you pick a directory name, you ...
Don’t do the 'path' trick. The 'path' option affects many of vim’s best navigational techniques.
Instead (and I only learned about this recently—see :help 'wildmenu'), when you’re dealing with directories:
use Down to “drill down” into the subdirectory and start completing filenames below
use Up to “move up” into the parent directory and complete filenames ...
Put this in your .vimrc:
This will also search in all subdirectories.
Then use the :find command. Start writing a part of the filename, for example...
...and then when you press Tab, it will autocomplete or offer possible matches from which you can choose. It will find io.py even if it's in a subdirectory.