vimtrainer helps students learn vim. It generates random text editing problems, allows students to work them within vim, and judges the answers.
It works, but right now we're actively requesting patches and ideas for improvement from the Ruby and Vim developer communities, especially in regard to correctness, robustness, and use of best programming practices. Please do not use vimtrainer in the classroom in its present state.
svn co https://vimtrainer.svn.sourceforge.net/svnroot/vimtrainer/trunk vimtrainer
If you have questions, suggestions, or patches, please consider posting to one of our mailing lists.