1------------------------------------------------------------------------- 2THINGS TO DO for GNU Typist 3 4See our latest TODO file at 5http://git.savannah.gnu.org/gitweb/?p=gtypist.git;a=blob_plain;f=TODO;hb=master 6 7If you are interested in helping for some of the below items, we will 8be glad to have you in the development team! 9 10You can contact us by writing to bug-gtypist@gnu.org. Your suggestions 11are welcome too! 12 13------------------------------------------------------------------------- 14 15FOR 2.9.2 RELEASE 16 17 * test UTF-8 character input on MinGW build 18 19 * fix this weird bug on the MinGW build: 20 - on Windows, run "gtypist.exe cs.typ" 21 - press ENTER 7 times (this should enter the lesson "Lekce T1") 22 - press ESCAPE, E, Y (to return to the menu) 23 - press ESCAPE (to go back to the previous menu) 24 - press ENTER (to select "Série T") 25 almost immediately, the first lesson on the "Série T" menu is 26 selected, automatically, without any further key presses. 27 28FOR 2.10 RELEASE 29 30 * support multibyte encodings other than UTF8?? 31 32 * add a "beginner mode" which is enabled by default, and can be turned off 33 by --expert/-x 34 * this would explicitly show "return characters" (patch exists) 35 * this would set -e 10 36 * includes a help page that explains drills/speedtests, how to resize a 37 terminal window, ... 38 * how is that help page shown? 39 * either we have a beginner.typ that is executed before gtypist.typ 40 in beginner mode (requires switching of *.typ during runtime!), OR 41 * we have special T:[BEGINNER] commands that are only executed in 42 beginner mode 43 44 * Show correct line numbers when nonexistent label was hit in the M command. 45 46SHORT TERM 47 48 * Show the label of the last exercise on exit (so that the user can 49 easily return to it using -l). Currently, restarting at one of 50 these labels won't set the banner, though. 51 52 * Show a warning when caps lock is active 53 54 * I'd like an option that only enabled wordwrapping. The -w option does 55 enable wordwrapping, but it also changes how paragraph breaks and 56 spaces after periods are handled, which I don't want. 57 Requested by Adam Olsen <rhamph@d2dc.net> 58 59 * Make sure that all source files come with a suitable copyright 60 statement (may be different with lessons?) 61 62 * Make sure that the numpad's [ENTER] key is accepted in numpad 63 lessons. (Reported by gherald@myway.com) 64 65 * Another idea is to generate our lessons files directly in our 66 format from spelling dictionaries, as they do in KTouch. 67 68 * Reuse lessons from dvorak7min and possibly other typing tutors. 69 70 * Replace 'getopt' by 'GNU gengetopt' 71 72 * Improve the French translation of "lesson file", which includes 73 both Drills (translated by "Exercice") and Speed tests ("Tests de 74 vitesse"). 75 76 * Make a separate package for lessons, so that lessons compatible 77 with a given gtypist version can be released without having to 78 release the tool again. This is already done by other packages: 79 gimp plug-ins or TeTeX fonts are released separately. 80 81 This is definitely need for this tool, for which tutorial files 82 are at least as valuable as the raw program itself. 83 84 * Provide a variant of the `n.typ' calculator keypad lesson, in 85 which the `.' character is replaced by `,'. Useful for some 86 european keyboards. 87 88 * Add configuration file support. Should be very useful, in 89 particular for teachers! 90 91 * allow strings from a .typ file to be translated (things like 92 "lesson: ") 93 94 * Mac OS X Package? => there is already macports or similar! 95 96 97 * Test wpemu option in combination with multibyte lessons 98 99MEDIUM TERM 100 101 * Windows installer, shortcuts for different lessons and manual? 102 103 * Improve the interface by adding 2 interfaces: 104 105 * Graphical interface (Probably GTK) 106 107 The benefits we can expect from a GTK interface are: 108 109 - Much attractive than the `ncurses' interface. 110 - Not using `ncurses' should avoid problems supporting different 111 terminal types. 112 - We could have a graphical control panel, to change settings 113 that are so far only available in the command line (keyboard 114 type, silent mode...) 115 - Easy access to help and manual 116 - Could still be compiled on Win32 on which GTK has been ported. 117 118 * Audio interface 119 120 Could use a system like Speech Dispatcher to read the lessons 121 for visually impaired people or people living in very dense fog. 122 123 We could also support audio typing exercises. Users would type 124 from a text read by a speaker. Several audio files would be 125 need, according to the language and the targeted typing speeded. 126 That would be useful for people like secretaries and 127 journalists. 128 129 All this could be implemented in a clean way by implementing an 130 event based mechanism. The core application could send interface 131 messages to a generic interface manager, which could according 132 to user settings, ask the graphical, text or audio interface to 133 send it to the user. 134 135 Specifications are on going. 136 137 * Add support for saving the last lesson (or part of a lesson) the 138 user was working on, so the user can easily pick up where s/he 139 left off. (idea by Enrique Pedroso) 140 141 * Improve the documentation of course files 142 143 * Broaden our lesson database: 144 145 - Create new lessons for other languages and keyboard types. 146 - Translate lessons in other languages (for languages that share 147 the same keyboard, you can reuse instructions and drills) 148 - We can also look for teachers who are ready to contribute 149 lessons or let us reuse theirs... 150 - Reuse lessons from old typing teaching books which copyrights 151 have expired (how much time does it take?). 152 - This will most likely require UTF-8 support 153 154 * Better typing statistics. Speed and accuracy for individual keys, 155 and individual fingers. This helps to indicate where extra 156 practice may be useful to the user (see Jtypist which displays 157 this as graphical bars, using color to indicate areas that need 158 work). A measure of typing rhythm would also be useful. 159 160 * Emulate other keyboard types. For example, Jtypist can pretend 161 that you have a French, German, or Dvorak keyboard on the system 162 even if you don't. It will translate keypresses between keyboard 163 types before checking them for correctness, and registering 164 timings. This work requires that the program should have keyboard 165 layout maps available to it, and arises as a result of maintaining 166 typing statistics by key and by finger (the program needs to know 167 what key is operated by which finger). 168 169LONG TERM 170 171 * While typing, graphically show the finger that is supposed to be used. 172 173 * Read lessons in the file formats of other free typing tutors (such 174 as Jtypist). 175