gnatxref can generate a tags file output, which can be used directly from `vi'. Note that the standard version of `vi' will not work properly with overloaded symbols. Consider using another free implementation of `vi', such as `vim'.
$ gnatxref -v gnatfind.adb > tags
The following command will generate the tags file for gnatfind itself (if the sources are in the search path!):
$ gnatxref -v gnatfind.adb > tags
From `vi', you can then use the command :tag `entity'
(replacing entity by whatever you are looking for), and vi will
display a new file with the corresponding declaration of entity.