aTypeTrainer4Mac is a multilingual typing tutor for OS X. It is an advanced version of TypeTrainer4Mac. All the system keyboard layouts (but not input methods!) as well as a wide variety of non-system keyboard layouts (i.e., Dvorak, Colemak, or custom layouts being built using Ukelele) are completely or partially supported.
You have to type a mixed-string of random characters. You can customize a character set at each of the 30 levels, and thus, you can control the learning process. You can also import text files from TextEdit, from Mail, or from your Web browser. Each session provides a run log in RTFD format. By default, you will find it on your desktop. In the Preferences, you can adjust a host of settings to make your typing exercises to your liking.