It is sort of like a grammar check. There is a javascript function that has a loop that checks every character of the exercise you have typed into the text box. If it is listed as a letter of the alphabet, or as a number, it is automatically accepted. If it is any other character, it is compared to the list of allowed characters, and if not in the list, it gets flagged by turning it red and listing everything for you to look at.
That's what has me stumped is that an apostrophe should ALWAYS be accepted. One possible explanation is that it just might be dependent upon your computer keyboard, your operating system, the keyboard driver you are using, and the keycode generated by your equipment. Also, it could be related to the speed of your computer.
If you don't mind, contact me via direct email: drachels at drachels dot com
I have some ideas to try and will need to give you details of how and where to access my development server to see if I can come up with a fix that works for you. I know that early versions of MooTyper would not let you type hardly anything except the alphabet, numbers, periods, and question marks, but since I took over support of MooTyper I have been trying to make sure that you can include just about any character in an exercise.