crontab (when invoked w/ the -e switch) can't find vi. It looks for it in /usr/bin instead of /bin. Also, crontab ignores the EDITOR environment variable.
this has been fixed in a later release of cron.