KTouch

KTouch is a software application to learn and practice touch typing. It comes with courses for many different keyboard layouts across dozens of languages. KTouch keeps track of the user's progress. If the user completes a lesson well enough the next lesson will be unlocked.
Features.
KTouch is user customizable. The user can set how well they must do in order to advance to the next lesson, add new layouts and languages, and change the lessons with the built-in editor. There is also a statistics page which contains a histogram of the user's typing speed. The statistics page also keeps track of how well the user does on individual keys so they know which keys they need to practice.
Although KTouch was designed for the KDE SC, it still works in other desktop environments (DE) such as GNOME.