[Commits] typing-turtle branch master updated.

Wade Brainerd wadetb at gmail.com
Wed Jan 7 23:34:45 EST 2009


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "/home/olpc-code/git/activities/typing-turtle".

The branch, master has been updated
       via  7e62258bb503d7772a01c51a7cca8529c543687d (commit)
      from  c16b9c84ee9848da90259c5d74a3b02d2b2395e1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

 lessonbuilder                     |   69 ++++++------------------------------
 lessons/en_US/bottomrow.lesson    |    2 +-
 lessons/en_US/homerow.lesson      |    2 +-
 lessons/en_US/intro.lesson        |    2 +-
 lessons/en_US/leftcapital.lesson  |    2 +-
 lessons/en_US/rightcapital.lesson |    2 +-
 lessons/en_US/toprow.lesson       |    2 +-
 lessonscreen.py                   |   24 ++++++-------
 8 files changed, 29 insertions(+), 76 deletions(-)

- Log -----------------------------------------------------------------
commit 7e62258bb503d7772a01c51a7cca8529c543687d
Author: Wade Brainerd <wadetb at gmail.com>
Date:   Thu Jan 8 04:33:50 2009 +0000

    Progress toward release.  Improved lessons a bit.  The Top Row is particularly 'educational'.  Need to get a naughty word-less dictionary.

diff --git a/lessonbuilder b/lessonbuilder
index 7530e79..7de85a8 100755
--- a/lessonbuilder
+++ b/lessonbuilder
@@ -292,7 +292,7 @@ def build_game_words(
     return good_words 
 
 def build_key_steps(
-    new_keys, base_keys, 
+    count, new_keys, base_keys, 
     words, bad_words):
 
     all_keys = new_keys + base_keys
@@ -352,59 +352,26 @@ def build_key_steps(
 
     steps.append(make_step(
         get_congrats() + _('Practice typing the keys you just learned.'),
-        'text', make_random_doubles(new_keys, count=40)))
-    
-    steps.append(make_step(
-        _('Keep practicing the new keys.'),
-        'text', make_random_doubles(new_keys, count=40)))
+        'text', make_random_doubles(new_keys, count)))
     
     steps.append(make_step(
         get_congrats() + _('Now put the keys together into pairs.'),
-        'text', make_weighted_wordlist_pairs(pairs, new_keys, new_keys, count=50)))
-    
-    steps.append(make_step(
-        _('Keep practicing key pairs.'),
-        'text', make_weighted_wordlist_pairs(pairs, new_keys, new_keys, count=50)))
+        'text', make_weighted_wordlist_pairs(pairs, new_keys, new_keys, count)))
     
     if base_keys != '':
         steps.append(make_step(
             get_congrats() + _('Now practice all the keys you know.'),
-            'text', make_weighted_wordlist_pairs(pairs, new_keys, all_keys, count=50)))
-    
-        steps.append(make_step(
-            _('Almost done.  Keep practicing all the keys you know.'),
-            'text', make_weighted_wordlist_pairs(pairs, new_keys, all_keys, count=50)))
-
-    else:
-        steps.append(make_step(
-            _('Almost done.  Keep practicing key pairs.'),
-            'text', make_weighted_wordlist_pairs(pairs, new_keys, new_keys, count=100)))
+            'text', make_weighted_wordlist_pairs(pairs, new_keys, all_keys, count)))
 
     if len(good_words) == 0:
         steps.append(make_step(
             get_congrats() + _('Time to type jumbles.'),
-            'text', make_jumbles(new_keys, all_keys, 100, 5)))
+            'text', make_jumbles(new_keys, all_keys, count, 5)))
         
-        steps.append(make_step(
-            _('Keep practicing these jumbles.'),
-            'text', make_jumbles(new_keys, all_keys, 100, 5)))
-        
-        steps.append(make_step(
-            _('Almost finished. Try to type as quickly and accurately as you can!'),
-            'text', make_jumbles(new_keys, all_keys, 100, 5)))
-    
     else:
         steps.append(make_step(
             get_congrats() + _('Time to type real words.'),
-            'text', make_random_words(good_words, new_keys, all_keys, count=100)))
-        
-        steps.append(make_step(
-            _('Keep practicing these words.'),
-            'text', make_random_words(good_words, new_keys, all_keys, count=100)))
-        
-        steps.append(make_step(
-            _('Almost finished. Try to type as quickly and accurately as you can!'),
-            'text', make_random_words(good_words, new_keys, all_keys, count=200)))
+            'text', make_random_words(good_words, new_keys, all_keys, count)))
     
     text = '$report'
     steps.append(make_step(text, 'key', ' '))
@@ -415,26 +382,21 @@ def build_intro_steps():
     steps = []
 
     text = ''
-    text += _('Hi, welcome to Typing Turtle!  My name is Max the turtle, ')
-    text += _('and I\'ll to teach you how to type.\n\n')
-    text += _('First, I will tell you the secret of fast typing... ')
+    text += _('Hihowareyah!  Ready to learn the secret of fast typing?\n')
     text += _('Always use the correct finger to press each key!\n\n')
-    text += _('If you learn which finger presses each key, and keep practicing, you will be typing like a pro before you know it!\n\n')
     text += _('Now, place your hands on the keyboard just like the picture below.\n')
     text += _('When you\'re ready, press the SPACE bar with your thumb!')
     steps.append(make_step(text, 'key', ' '))
 
     text = ''
-    text += _('Good job!  You correctly typed your first key.  When typing, the SPACE bar is ')
-    text += _('used to insert blank spaces between words.\n\n')
+    text += _('Good job!  The SPACE bar is used to insert spaces between words.\n\n')
     text += _('Press the SPACE bar again with your thumb.')
     steps.append(make_step(text, 'key', ' '))
     
     text = ''
     text += _('Now I\'ll teach you the second key, ENTER.  ')
     text += _('That\'s the big square key near your right little finger.\n\n')
-    text += _('Without moving any other fingers, reach your little finger over and press ')
-    text += _('ENTER.\nCheck the picture below if you need a hint!')
+    text += _('Now, reach your little finger over and press ENTER.')
     steps.append(make_step(text, 'key', '\n'))
     
     text = ''
@@ -443,15 +405,6 @@ def build_intro_steps():
     steps.append(make_step(text, 'key', '\n'))
     
     text = ''
-    text += _('Wonderful!  Now I\'m going to tell you a little more about Typing Turtle.\n\n')
-    text += _('The box you are reading is where instructions will appear.  The keyboard ')
-    text += _('picture below shows what your hands should be doing.  The numbers ')
-    text += _('up top show how quickly and accurately you are typing.\n\n')
-    text += _('When you see a big picture of a key like this one, you are supposed to ')
-    text += _('press that key on the keyboard.\nRemember, always use the correct finger to ')
-    text += _('type each key!')
-    steps.append(make_step(text, 'key', ' '))
-
     text = '$report'
     steps.append(make_step(text, 'key', '\n'))
 
@@ -473,6 +426,8 @@ if __name__ == "__main__":
                       help="Keys to teach.")
     parser.add_option("--base-keys", dest="base_keys", metavar="KEYS", default='',
                       help="Keys already taught prior to this lesson.")
+    parser.add_option("--length", dest="length", type="int", metavar="N", default=60,
+                      help="Length of the lesson.  Default 60.")
     parser.add_option("--wordlist", dest="wordlist", metavar="FILE",
                       help="Text file containing words to use.")
     parser.add_option("--badwordlist", dest="badwordlist", metavar="FILE",
@@ -538,7 +493,7 @@ if __name__ == "__main__":
         
         lesson['type'] = 'normal' 
         lesson['steps'] = build_key_steps(
-            new_keys=options.keys, base_keys=options.base_keys, 
+            count=options.length, new_keys=options.keys, base_keys=options.base_keys, 
             words=words, bad_words=bad_words)
 
     elif options.make_game_lesson:
diff --git a/lessons/en_US/bottomrow.lesson b/lessons/en_US/bottomrow.lesson
index e19a53c..4f47807 100644
--- a/lessons/en_US/bottomrow.lesson
+++ b/lessons/en_US/bottomrow.lesson
@@ -1 +1 @@
-{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the z, x, c, v, b, n and m keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"z","mode":"key","instructions":"Press the z key with your left little finger."},{"text":"x","mode":"key","instructions":"Press the x key with your left ring finger."},{"text":"c","mode":"key","instructions":"Press the c key with your left middle finger."},{"text":"v","mode":"key","instructions":"Press the v key with your left index finger."},{"text":"b","mode":"key","instructions":"Press the b key with your left index finger."},{"text":"n","mode":"key","instructions":"Press the n key with your right index finger."},{"text":"m","mode":"key","instructions":"Press the m key with your right index finger."},{"text":"xx nn nn cc nn mm mm mm nn zz bb cc xx mm vv zz cc xx xx zz vv vv mm vv cc cc cc xx zz zz vv xx bb nn vv cc mm cc zz zz","mode":"text","instructions":"You did it! Practice typing the keys you
  just learned."},{"text":"mm bb vv nn cc bb zz nn nn bb vv xx vv vv mm cc vv vv mm vv nn nn bb xx mm cc nn vv mm zz mm nn nn mm cc vv xx zz zz bb","mode":"text","instructions":"Keep practicing the new keys."},{"text":"mb mb cm bv xn cc bz bc zz vv bv mv bb nc cn nx xb bm nm nm vv cz cc vv mc zv bb mm nb vv zv xn zz nc zm bb bb bz cn zv nv cm nv nv bv bm zv bv nx cn","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"cm nz nb mv cz zv bv nz mm cn bz mb cm cc nv nb nv xb vv bb xb bn zz zz bc nm nx nc mm mn bb mm bz nx cz vv mn bn cz mm nm bm nv vv bm zz bm zz bb bc","mode":"text","instructions":"Keep practicing key pairs."},{"text":"wn rc bj tm gz kb xf nf by vu dv um ic cy xg ac pm rb bb kc av wc xl be bm av xp bm cy ny nq rb nu vu im bg zv mc ib cl zp on nh yz nx bt vv gb xy ix","mode":"text","instructions":"Good job. Now practice all the keys you know."},{"text":"cr bw kv ve xc yz xw ux xh vv bj un pm sv fc bo nd bi om mp rz pc zm dv c
 l lm hb ub vi cs nx ub yx hm wm nq xc cu rc be iz vo bc bc xy zl xs bz xq bh","mode":"text","instructions":"Almost done.  Keep practicing all the keys you know."},{"text":"kielbasi pretax toweling contrary basalt urbanity loner gasoline bite cancer unease dormant but meekness glisten tomahawk syllabus zillion cliquish disgrace refract dominate behind whereon introit craftily popgun abs elixir badger foible nitty wiz rousing creased inertia bemire divvy circus devilry derby asphyxia dedicate mutt zone buyer ecstatic politic incense posting napalm knowable lecture heading baseness pitchman winner vice pontoon corpora recesses tramper bulky lick angular link clownish unisex abscissa moccasin forgive deliver moxie granule bidder telegram byroad ceramic hooves catheter wend lived steamer giving wallaby mamma assemble bigness affix banking nowhere affect rung niece viking unhorse therm beside fatness botch","mode":"text","instructions":"You did it! Time to type real words."},{"tex
 t":"pinky town strewn gabfest resown gelding scribe humane doings prophecy mah tokenism alderman coating ordinal closing rumbling inkwell unripe bridal pippin taxicab murk keno beguiler medical coward expel reattach reengage loch engross millrace sect eggnog snore cadence tatami mache destruct alum varsity cynic searing midyear abuser frantic unpeeled braise curious abject trisect swoon fetlock prospect beating analyze broaden winery mindedly insigne helium hound infield auxin moment nutria terbium mod tonsure deafness synapse pompon gaunt trauma scrawl burning untiring mound clutter foam artisan dualism penology unblock gangway species lichee buttress misled overdose veranda punt gasbag zonal govern cowardly stormily corbel smear","mode":"text","instructions":"Keep practicing these words."},{"text":"handwork illness twosome vaunt ratline overhand volcanic invasion canopy nosegay repent bicycle news ranks nitwit need beneath tibiae melody entrance salable playboy runnel cica
 da unction falconry snaky specimen seatmate roomy ceramist secretly zero aquiline ounce encumber clonk dipping tubal fable misuse pixie cabaret prevent spoken bread sheikdom crummy odium refine cocoon shine monthly thatcher bluffly coulomb tonearm hellcat destined valid crack rice deficit notary coiffure bonfire endeavor marsh oatmeal misuse mitosis clan nuclei united means curtsy flatland scolding gunfire fun exciting minatory cajolery ensconce unchaste affiance snail kicker biennium blintze pen peanuts ravenous genitals tang chili inertial mechanic europium regency halcyon souvenir obese gentrify savagely diver intrigue exempt crag gent secret amenable hybrid pong uprising shimmery bloat polarize inexpert rectum missive chyme curfew chiseled castle north slipcase pilchard barrier measure boner chemical misdeed stopover pigskin nuptials reason caviare aground vogue steam linage limn grocer comity viable fiscally frenetic em snowbird kiln reunify bleed airline mourn mensch i
 ronical futon umbel lutenist spinster kerchief prune rabidly bushed dingle belittle weakener moralize brights gimbals raging clomp sachet gardenia mistime enzyme bygones abortive dominate abyss mirage unnerve pointer amen accord uncloak faucet recall huntsman hewn loyalism veggies midrib eaves limiter dumps coed urgently canine","mode":"text","instructions":"Almost finished. Try to type as quickly and accurately as you can!"},{"text":" ","mode":"key","instructions":"$report"}],"order":3,"type":"normal","name":"The Bottom Row","description":"This lesson teaches you the z, x, c, v, b, n and m keys \non the bottom row of the keyboard."}
\ No newline at end of file
+{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the z, x, c, v, b, n and m keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"z","mode":"key","instructions":"Press the z key with your left little finger."},{"text":"x","mode":"key","instructions":"Press the x key with your left ring finger."},{"text":"c","mode":"key","instructions":"Press the c key with your left middle finger."},{"text":"v","mode":"key","instructions":"Press the v key with your left index finger."},{"text":"b","mode":"key","instructions":"Press the b key with your left index finger."},{"text":"n","mode":"key","instructions":"Press the n key with your right index finger."},{"text":"m","mode":"key","instructions":"Press the m key with your right index finger."},{"text":"xx nn nn cc nn mm mm mm nn zz bb cc xx mm vv zz cc xx xx zz vv vv mm vv cc cc cc xx zz zz vv xx bb nn vv cc mm cc zz zz mm bb vv nn cc bb zz nn nn bb vv xx vv vv mm cc vv vv mm vv","mode":"te
 xt","instructions":"You did it! Practice typing the keys you just learned."},{"text":"bb zz mv mb mc bb nx mb cm mb cc xc nn bv bn cz cm xn nb xc mb mb cm bv xn cc bz bc zz vv bv mv bb nc cn nx xb bm nm nm vv cz cc vv mc zv bb mm nb vv zv xn zz nc zm bb bb bz cn zv","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"fm bo be sb hn dz ml hm gb mq tn gn bm xl md ml nh ec nz tv ng gz am cu rb be zp uv ov kc mn xp ym tb va zi an ci cc cl no zk zi yz vy tc mn bv iv uc nm cu ux tn xi nm ym cl gm fn","mode":"text","instructions":"Nice work. Now practice all the keys you know."},{"text":"outclass waxy flannels mirror stubbly felicity cogently reinfect chef muteness mincing success fullback binding surcease picot soviet voluble suasion discern befogged cards meanness genii focus remiss clad libel beige capital embezzle popover inferno medullae grocery scanner flan concord sneering feverish view breakout banyan lawgiver audacity scarlet sunless r
 elaxer earmuffs gizzard sitting pimply svelte scalper scruff fraction laminate then purveyor callous","mode":"text","instructions":"Wonderful! Time to type real words."},{"text":" ","mode":"key","instructions":"$report"}],"order":3,"type":"normal","name":"The Bottom Row","description":"This lesson teaches you the z, x, c, v, b, n and m keys \non the bottom row of the keyboard."}
\ No newline at end of file
diff --git a/lessons/en_US/homerow.lesson b/lessons/en_US/homerow.lesson
index 06335a1..3103fe4 100644
--- a/lessons/en_US/homerow.lesson
+++ b/lessons/en_US/homerow.lesson
@@ -1 +1 @@
-{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the a, s, d, f, g, h, j, k and l keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"a","mode":"key","instructions":"Press the a key with your left little finger."},{"text":"s","mode":"key","instructions":"Press the s key with your left ring finger."},{"text":"d","mode":"key","instructions":"Press the d key with your left middle finger."},{"text":"f","mode":"key","instructions":"Press the f key with your left index finger."},{"text":"g","mode":"key","instructions":"Press the g key with your left index finger."},{"text":"h","mode":"key","instructions":"Press the h key with your right index finger."},{"text":"j","mode":"key","instructions":"Press the j key with your right index finger."},{"text":"k","mode":"key","instructions":"Press the k key with your right middle finger."},{"text":"l","mode":"key","instructions":"Press the l key with your right ring finger."},{"text":"ss kk j
 j dd kk kk ll ll jj aa hh ff ss ll hh aa ff dd ss aa gg gg ll hh dd ff ff ss aa aa gg ss jj kk gg ff kk dd aa ss","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"ll hh gg jj ff jj aa jj jj hh gg dd ff ff ll dd gg gg ll gg kk jj hh dd ll ff jj gg ll aa ll kk jj ll ff gg dd aa aa hh","mode":"text","instructions":"Keep practicing the new keys."},{"text":"la ll gj dj kj gl fj hf kl hs sd hh fa ll gf dh aa ja ld ld fs sj ga lh aj dk fa sa af hs jj kj ka ss kg ff fa lj gf fd gh gj gh gl sg ks jj kh lg gf","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"fg ja sk hh sj fd kh ja ad hd fg ll gj ga gh af gl hg kf ff hk sf ls ka hf ff sf ss sa dd fl ag fj sf kk kf dd sf kk sa ak ks gh hs ja ka ks ka fl df","mode":"text","instructions":"Keep practicing key pairs."},{"text":"kg ds ak lh gs gj aj jj gg ks sd df da ss dd fg sh fs af hl hk lf kg sj gl hh lf ls hd dd hl dj af gg sd sl jj lj fh dl fl hg a
 l ja kk kd sg aa gf gf lg gl hk gj la ah kk dk hs fs aa lh ll fs hk lj gh as da ag gl gd kk kj df fl gs sd ld gh lk kd ld gd lg kd dj ah gh ak da fa sk kd kd gf hs kj gk fd","mode":"text","instructions":"Almost done.  Keep practicing key pairs."},{"text":"fag ska ah slash ssh alfalfa sass glad gaga la hall sh alas shag ass all gash lad as aha hag gala dad hall fag slag hall dad ssh flak all da ash hajj sh gal flag ash flag ass lag lass saga dad lass as dash dash fa had half glad gall fag sass fa alas dash all ask ad dash glad ll ask gash ad hajj shad salad lad ska gag gash slash half ad gash has add salad gaga fa alfalfa ash hash salad hah gaff has ll glass flash lash half shah algal flag salsa salsa","mode":"text","instructions":"Good job. Time to type real words."},{"text":"lad la shad sass lad hajj hag shall hajj hall add algal sh gash dash flash alfalfa ad gag gala fall slag has lad gall gag half glad ha hash gas lass gash falls slash gaga ad had jag hag flag sash gash a
 las shall glass has salsa all halal ll hag hall ask shah algal falls all lass hash sass salad da ssh falls add ash lag fa aha hall dad da glad lad hag half gag sh add slash hah salad shad lag hah shad sh alas shad glass hall hall slag lash lad slag sag jag aha","mode":"text","instructions":"Keep practicing these words."},{"text":"sag ass hag gall lash flak fall ad sh gall has sag gag saga glad gad dash sad ssh shh as sh glad fall alfalfa sh ssh lass da half flask add flash halal dash gal aha gala fall hash glass gaff lag ska sash hag lag halal flash gaff salad flak hajj sad sh flask as lass slash sass gash lass lass lass gall lad sash add ash gal gaff shh gaff aha shh hajj all la gad fall shad hah ask ah flak lag salad sad fad flask gag ash gash ask fad ah sash hall ah fag sag fag fall lash had gala gaff ass alga hajj fa shad ah shad alas slash salsa fa gad saga alga salad half falls alfalfa ll all had ask lash saga fag hall saga half la hag sh all alga ask salad dash fag fl
 ask dash da has falls da gag gall salad ash ash sash has glass hash glass gala saga gas falls glad alas dash shh as shh sag ll sad as flash lass sad ll fa gag dad gall sass hag hall all as has halal gala ass sh alfalfa falls ah gad gag sass fag sh","mode":"text","instructions":"Almost finished. Try to type as quickly and accurately as you can!"},{"text":" ","mode":"key","instructions":"$report"}],"order":1,"type":"normal","name":"The Home Row","description":"This lesson teaches you the a, s, d, f, g, h, j, k and l keys \nin the middle of the keyboard.\nThese keys are called the Home Row."}
\ No newline at end of file
+{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the a, s, d, f, g, h, j, k and l keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"a","mode":"key","instructions":"Press the a key with your left little finger."},{"text":"s","mode":"key","instructions":"Press the s key with your left ring finger."},{"text":"d","mode":"key","instructions":"Press the d key with your left middle finger."},{"text":"f","mode":"key","instructions":"Press the f key with your left index finger."},{"text":"g","mode":"key","instructions":"Press the g key with your left index finger."},{"text":"h","mode":"key","instructions":"Press the h key with your right index finger."},{"text":"j","mode":"key","instructions":"Press the j key with your right index finger."},{"text":"k","mode":"key","instructions":"Press the k key with your right middle finger."},{"text":"l","mode":"key","instructions":"Press the l key with your right ring finger."},{"text":"ss kk j
 j dd kk kk ll ll jj aa hh ff ss ll hh aa ff dd ss aa gg gg ll hh dd ff ff ss aa aa gg ss jj kk gg ff kk dd aa ss ll hh gg jj ff jj aa jj jj hh gg dd ff ff ll dd gg gg ll gg","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"ff ka hd la aj ff lg la gj ll gl ld ha kh gs fh gk hj sk ld la ll gj dj kj gl fj hf kl hs sd hh fa ll gf dh aa ja ld ld fs sj ga lh aj dk fa sa af hs jj kj ka ss kg ff fa lj gf fd","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"hag lag salad hall la fa half shh ad has alga gal sash aha ass half alga dad gaff has gall had gash sad gag salad ask as glass halal ha hajj sh shag glad shh ska dash sag shall gaga lass shh flak as sag ha flak gaga all ll sad da alga hajj ll sh shall shah salsa","mode":"text","instructions":"Nice work. Time to type real words."},{"text":" ","mode":"key","instructions":"$report"}],"order":1,"type":"normal","name":"The Home Row","description":"T
 his lesson teaches you the a, s, d, f, g, h, j, k and l keys \nin the middle of the keyboard.\nThese keys are called the Home Row."}
\ No newline at end of file
diff --git a/lessons/en_US/intro.lesson b/lessons/en_US/intro.lesson
index 8e1146e..d3af6b3 100644
--- a/lessons/en_US/intro.lesson
+++ b/lessons/en_US/intro.lesson
@@ -1 +1 @@
-{"steps":[{"text":" ","mode":"key","instructions":"Hi, welcome to Typing Turtle!  My name is Max the turtle, and I'll to teach you how to type.\n\nFirst, I will tell you the secret of fast typing... Always use the correct finger to press each key!\n\nIf you learn which finger presses each key, and keep practicing, you will be typing like a pro before you know it!\n\nNow, place your hands on the keyboard just like the picture below.\nWhen you're ready, press the SPACE bar with your thumb!"},{"text":" ","mode":"key","instructions":"Good job!  You correctly typed your first key.  When typing, the SPACE bar is used to insert blank spaces between words.\n\nPress the SPACE bar again with your thumb."},{"text":"\n","mode":"key","instructions":"Now I'll teach you the second key, ENTER.  That's the big square key near your right little finger.\n\nWithout moving any other fingers, reach your little finger over and press ENTER.\nCheck the picture below if you need a hint!"},{"text":"\n
 ","mode":"key","instructions":"Great!  When typing, the ENTER key is used to begin a new line.\n\nPress the ENTER key again with your right little finger."},{"text":" ","mode":"key","instructions":"Wonderful!  Now I'm going to tell you a little more about Typing Turtle.\n\nThe box you are reading is where instructions will appear.  The keyboard picture below shows what your hands should be doing.  The numbers up top show how quickly and accurately you are typing.\n\nWhen you see a big picture of a key like this one, you are supposed to press that key on the keyboard.\nRemember, always use the correct finger to type each key!"},{"text":"\n","mode":"key","instructions":"$report"}],"order":0,"type":"normal","name":"Welcome","description":"Click here to begin your typing adventure."}
\ No newline at end of file
+{"steps":[{"text":" ","mode":"key","instructions":"Hihowareyah!  Ready to learn the secret of fast typing?\nAlways use the correct finger to press each key!\n\nNow, place your hands on the keyboard just like the picture below.\nWhen you're ready, press the SPACE bar with your thumb!"},{"text":" ","mode":"key","instructions":"Good job!  The SPACE bar is used to insert spaces between words.\n\nPress the SPACE bar again with your thumb."},{"text":"\n","mode":"key","instructions":"Now I'll teach you the second key, ENTER.  That's the big square key near your right little finger.\n\nNow, reach your little finger over and press ENTER."},{"text":"\n","mode":"key","instructions":"Great!  When typing, the ENTER key is used to begin a new line.\n\nPress the ENTER key again with your right little finger."},{"text":"\n","mode":"key","instructions":"$report"}],"order":0,"type":"normal","name":"Welcome","description":"Click here to begin your typing adventure."}
\ No newline at end of file
diff --git a/lessons/en_US/leftcapital.lesson b/lessons/en_US/leftcapital.lesson
index 6ea21ae..eaf534e 100644
--- a/lessons/en_US/leftcapital.lesson
+++ b/lessons/en_US/leftcapital.lesson
@@ -1 +1 @@
-{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the Q, W, E, R, T, A, S, D, F, G, Z, X, C, V and B keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"Q","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the Q key with your left little finger."},{"text":"W","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the W key with your left ring finger."},{"text":"E","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the E key with your left middle finger."},{"text":"R","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the R key with your left index finger."},{"text":"T","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the T key with your left index finger."},{"text":"A","mode":"key","ins
 tructions":"Press and hold the SHIFT key with your right little finger, then press the A key with your left little finger."},{"text":"S","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the S key with your left ring finger."},{"text":"D","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the D key with your left middle finger."},{"text":"F","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the F key with your left index finger."},{"text":"G","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the G key with your left index finger."},{"text":"Z","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the Z key with your left little finger."},{"text":"X","mode":"key","instructions":"Press and hold the SHIFT key with your right little finge
 r, then press the X key with your left ring finger."},{"text":"C","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the C key with your left middle finger."},{"text":"V","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the V key with your left index finger."},{"text":"B","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the B key with your left index finger."},{"text":"RR CC XX TT CC VV BB VV XX WW GG AA EE VV FF QQ AA TT EE QQ DD DD VV FF TT AA SS EE WW WW DD EE ZZ CC FF SS CC TT QQ WW","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"VV GG DD XX SS ZZ WW XX XX GG DD RR SS SS VV TT DD DD BB DD XX XX FF TT BB AA XX DD BB QQ BB CC ZZ VV AA DD RR QQ WW GG","mode":"text","instructions":"Keep practicing the new keys."},{"text":"BB WS SQ AA XB ES ZZ RC EA VZ WW EB XQ WC CC DW DT FZ RW 
 FV QB XC CE XE GF DX GC VQ TR RD DX FA FD ES TX QA ZD CS QG ZT EZ RC ZG GG ZZ CW XR BE RR ET","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"DC BQ RE TE BT CW VC ER XS ZA RF RD DS CZ GR TA QW VB SV XR AD ZS CX TR BV VG VV XA FG RS WC EV CT WQ BX WR CZ CT EF TG CC ZC TA ZQ VW FS WT FX WA GR","mode":"text","instructions":"Keep practicing key pairs."},{"text":"Cg uR rQ nA tF AS yZ WG Bm fX WB dF TQ QG oC XW SX Qa kS WZ Rs hV Sr bR pT aQ Fo Ws CR Fo Xb EG Gl Rl Qy Rf Fy Gn nX Xv jT SD VE BA SA FZ iD sT QR Ea","mode":"text","instructions":"Good job. Now practice all the keys you know."},{"text":"GC Xj TE Rt WQ ZC Sm DX jD nD SR GT rC Am AC TZ wT Vf Qx hW Wb So TE hE Ai Dp EE Va Ag pF sE BV WT nT Cc WR qF zE oX DV hG TB Xg vZ RQ XV Ey SF nT wR","mode":"text","instructions":"Almost done.  Keep practicing all the keys you know."},{"text":"XiEz FWSZ TQVZ XZVF VVEe RDEl VgAV AwWl ZmQR WfSm AxBB WhBv FFCA GSQn ERSu XFZm XcXt WVFz ZvQt BwVk WpF
 k GSCX SXDW SsCy SlVn AhTt WGBz GhXE EyGh ZVCR DXTo WZSR WVSX RsFv GEDc VTGZ TlDB ZBGt FARV GTZX QdRk EWBa AWFw QZQj CsCQ WxWr XgVf TETC GhDu FSRG ThXn SaCi EzEn EtZC GTFw XECj WtXC RGXS DZTm GpGz GuZg RnEl ViQV WZWj GFXl CjZo QQZR RXZt GBZa RkWq EZRW CeFn DwWS ChCV WtEy BlZr QuTb SWAS VdQj FDCD TmXn DQTr DXXl ZZTR DAQB WWDt WAFl GGSc TpDd BzEo TqGr ATWs AETq TjGi ScVo ZgEp ZyEf GfBV QQXr QzQv","mode":"text","instructions":"Well done! Time to type jumbles."},{"text":"TdBB EsSE SFQs GbRd XqEV EoWg WiVv FmCu FZZe QXDy AZZh AvXW EyGh FyWT ToRo GgFW RsAl SBSk XEDi CqAl BgTZ TCCq TlCQ ZASh ZzCV GxWi VkRZ QRTl DlZb QyAd SiXv XpTR XlWX ZDCv ZtCF ZCFx GmTk GnAG ElEz WCFW EuZo RBBk QvWc BjTA VAZy BSSQ DfRW GAXo EWRc XfSc BnCZ RTSl TnAu WmEw SoXd XtDQ WlTy EAWZ RABn RESy BnFf ElQz FtGz EGDm CqGf GDCr ZaRE SXRb XDCu EmQX ExCj EiZA ZiFd RrDj CuDj WWSF WhTl RnFG CcGD DzGE VrDG CQTQ VSCW CxQm DXWm ZDVF VoRy TSDh XaWZ GxVs RyAZ SwTX TaEV BxXj ZxVf GZWb GVAr ErAp QEEh QBVA","mode":"text","i
 nstructions":"Keep practicing these jumbles."},{"text":"CrVb FVTx DbRr BWGB FdTQ DTRA CXXC QQSn VrCV EAGR RwTl ToFZ SyXW AEWT WpGt EuFb QzBF GBXt GZQn GESb WTEd QmXZ FWWZ CGXS DQDT CuDo QhWx ThSb GTAl DXXV EoDs WtFq EWSD RoQg DcWo XfWF GrQf FtEd WjXQ StTl XeXQ VtVc CBGm RQVf QvXf DjTR EtSr EXWs DQVa FeFZ GtDR ZaVT GVDT SBAR CjXQ WeGE GaGl WfEG SpFW XDWi VfVw TdDA FFDz SWVR AQBj ZzSo TdTs DgFg EdBu GdSr FlXj EbAA VtQl GcFu RBFZ ESAx GxSr GnRy FpZp QhAA CyZn BzCX VrQQ GWEo RRZQ AzFo SXSk QcRx WZZT AWEs SyEl VqRb XfCh WgQE ESDW ZDWy ZRSk CVTw CgBc QrCS","mode":"text","instructions":"Almost finished. Try to type as quickly and accurately as you can!"},{"text":" ","mode":"key","instructions":"$report"}],"order":4,"type":"normal","name":"Left Hand Capitals","description":"This lesson teaches you the CAPITAL letters which are typed by your left hand.\nThese are Q, W, E, R, T, A, S, D, F, G, Z, X, C, V and B."}
\ No newline at end of file
+{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the Q, W, E, R, T, A, S, D, F, G, Z, X, C, V and B keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"Q","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the Q key with your left little finger."},{"text":"W","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the W key with your left ring finger."},{"text":"E","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the E key with your left middle finger."},{"text":"R","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the R key with your left index finger."},{"text":"T","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the T key with your left index finger."},{"text":"A","mode":"key","ins
 tructions":"Press and hold the SHIFT key with your right little finger, then press the A key with your left little finger."},{"text":"S","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the S key with your left ring finger."},{"text":"D","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the D key with your left middle finger."},{"text":"F","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the F key with your left index finger."},{"text":"G","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the G key with your left index finger."},{"text":"Z","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the Z key with your left little finger."},{"text":"X","mode":"key","instructions":"Press and hold the SHIFT key with your right little finge
 r, then press the X key with your left ring finger."},{"text":"C","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the C key with your left middle finger."},{"text":"V","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the V key with your left index finger."},{"text":"B","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the B key with your left index finger."},{"text":"RR CC XX TT CC VV BB VV XX WW GG AA EE VV FF QQ AA TT EE QQ DD DD VV FF TT AA SS EE WW WW DD EE ZZ CC FF SS CC TT QQ WW VV GG DD XX SS ZZ WW XX XX GG DD RR SS SS VV TT DD DD BB DD","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"XF AB DB CB AV RQ ZG BQ WC SF RA BT FE ZT CT XE ZA GW XE QT QC AC WA QT ZT AW VT QB ZX TE DE SF BD XG QD TG VR DX GF FX GE TD WA DA BC QV ZG ZE TC TG SG AZ WQ XX BF RS TT CE BD EA","mode":"
 text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"Ty EE sB CF dW aD Ch ZF cR oC Xm RC WQ wR eT ZE Vg Fo pW CV xQ wA vA Rp jS GG TR DQ VQ VT pA VZ uZ XW Xg XC sS mB Sa WC Cu cE CR gQ AE Sl DE Db Cj Xk lZ Cu XE fB tQ aZ iD tQ Sv QR","mode":"text","instructions":"Good job. Now practice all the keys you know."},{"text":"RtZq XWEp EhQa EdGi ZWFZ CVVh ZcCT RbVV XtQa ZjZd WsSr WbFo SqAb GECk GRRl WQBE RfTj BWGn EpZu XvDV FpDS FwQV ABZB EuZF BfFq TsBZ QsEa TsRj XjAV QeRt QWQy CZZc GXDX ReGo DnDb WATG CsXx AmSt ExTZ ACVl VfQQ BXWh GTSC SoSD WnEh CaFS DpQA QDVa EaDW FpFA CuVB CVQi TnBs ScRW XiXx EzFp ZuDV DlFr TBQr FTZv","mode":"text","instructions":"Good job. Time to type jumbles."},{"text":" ","mode":"key","instructions":"$report"}],"order":4,"type":"normal","name":"Left Hand Capitals","description":"This lesson teaches you the CAPITAL letters which are typed by your left hand.\nThese are Q, W, E, R, T, A, S, D, F, G, Z, X, C, V and B."}
\ No newline at end of file
diff --git a/lessons/en_US/rightcapital.lesson b/lessons/en_US/rightcapital.lesson
index fa2937f..bb99c36 100644
--- a/lessons/en_US/rightcapital.lesson
+++ b/lessons/en_US/rightcapital.lesson
@@ -1 +1 @@
-{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the Y, U, I, O, P, H, J, K, L, B, N and M keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"Y","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the Y key with your right index finger."},{"text":"U","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the U key with your right index finger."},{"text":"I","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the I key with your right middle finger."},{"text":"O","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the O key with your right ring finger."},{"text":"P","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the P key with your right little finger."},{"text":"H","mode":"key","instructions
 ":"Press and hold the SHIFT key with your left little finger, then press the H key with your right index finger."},{"text":"J","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the J key with your right index finger."},{"text":"K","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the K key with your right middle finger."},{"text":"L","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the L key with your right ring finger."},{"text":"B","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the B key with your left index finger."},{"text":"N","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the N key with your right index finger."},{"text":"M","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then pres
 s the M key with your right index finger."},{"text":"II BB LL OO NN NN MM NN LL YY KK PP UU MM JJ YY PP OO II YY HH HH NN JJ OO PP PP UU YY UU JJ II LL NN JJ HH NN OO YY UU","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"NN KK HH BB HH LL UU BB LL KK HH II HH HH MM OO HH HH MM HH BB BB KK OO MM PP BB HH MM YY MM BB LL NN PP JJ II YY YY KK","mode":"text","instructions":"Keep practicing the new keys."},{"text":"MM UP HY PP BM UH LL IN UP NL UU IM BY UB BB JU HO JL IU JN YM BN BU BU KK HB KN NY OI IH JL JP KJ IH OL YP LJ BH YK LO UL IB LK KK LL NU BI MU IO IO","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"HB MY IU OU MO BY NB II BH LP OJ IH JP BL KO OP YU NM HN LI PJ LH BL OI MN MK NN LP KK IH UB IN NO UY MB UO NL NO UJ OK NB LB OP LY NU KH UO JB YP KI","mode":"text","instructions":"Keep practicing key pairs."},{"text":"Np DI RY zP SK PB CL UK Mx oB IM mJ OY YM QN BU LL Yi vH IL OA rN P
 T jI WO iY Kz UA BP Kz Bj OK Kw Iw YV Io KV Ky yL BG tO LJ NI gP LP NL sJ TO UO Uh","mode":"text","instructions":"Good job. Now practice all the keys you know."},{"text":"aB Bt OO OS IY bN Hx Hc uH yJ PP aO RB Px KN Ob ZO Mo YC rU Uj PQ JI rI Pr JW UO Mi Pp WK AU gM UO yO Bk UO EJ BI QL Hf qK Oh Bq GL IY Le UC LK yO ZO","mode":"text","instructions":"Almost done.  Keep practicing all the keys you know."},{"text":"LsIB KUHa OYNb LbNN MfIm ONIw MpPf PZUv LxYP UoHx PCMh UrMG JMNJ KLYy IPHF BNLx BjBD UfJB LGYS MXNu YWJv KLBc HcHU HABV HwNz PrOD UaMB KqLO UCKq LfNP JcOQ YaPP YfHd IAJF KOJk NJKb OwHg LhKS JKIf KHLc YmOu UUMi PUKZ YcYu BANY YCUT BqMo OOOd KqJD JLIa OrBy HhBs IBUy ISLd KJJZ BIBu YSBe IaBL JaOy KEKB KDLq IzIw MrYf UbYt KNLv BtLQ YYLP IdLS KhLh IvUE IbII BnJy JZUL NqBe YSUC MwLR YDOj HUPK NmYt KBNB OxLy HYOT HdBv LbOP HJYg YUHS UJJw KaPk OWJl MVIz OEKR PHYA POOR OuKs PkNz LpIW LCIo KoMf YYBT YBYG","mode":"text","instructions":"Well done! Time to type jumbles."},{"text"
 :"OmMg IAHO PNYA KiIm BRIf UQUp UrNG KxBD JbLn YdHV PbLq PFBI UCKq JVYJ OQOz KpKU OAPw PgPu BOJs NEPw MpOc OeBR OwNU LKPq LVBe KXYs NuIb YPOv JvLi YCPl HsBG BQOH BvUd LBNG LSNN LdKX KxOu KzPa UwUB UdJU IDLQ IgMu YFYk MuOJ NJLV MLHY HpOI KJBz UIIk BoHl MzBb IJHv OzPF UxUZ HzBm BSHU YvOV IJUb IKMy IOHC MyJo UwYB KSKB IMJx NEKp KBNT LhIO PcIj BNBD UxYc UXBu IrLK LrJl ITHu BDJu YIHN UrOw IyKa NlKB JVKI MRJa NYOY MKNU NCYy JcYy LBNM MQIV OLHr BhUb KXMA IVPb HZOd OiUf MCBt LXNo KaYj KfPR UTPW YOIq YhNK","mode":"text","instructions":"Keep practicing these jumbles."},{"text":"NTNj JfOX HiIT MUKh JlOY HHIK NdBe YYPz NRBf IKKO IZOv OQKb HCBU PIUJ UQKS UDKj YBMN KgBS KbYz KOHj UHUl YxBc JUUa BMBL HYJH NDHQ YqUC OrHj KJPw HcBe UzHA YSJE UUHB IQYp JkUz BoUM KRYo JSUl UtBY HDOw BmBY MSNk BgKx OYNo YGBo JtOH UDHT IcUA JYNi JmJb KSHP LiMH KfHJ HhPP BtLY UmKO KhKv UoIM HQJU LNUs NoNZ OlJJ JMJB HINP PYMt LVPQ OlOA HqKq ImMD KmHT JvBt UjPK MSYv KkKD OhJb IBPX KXHT KyOC KWLW YqPK NVLz MBBd NRYY
  KIIz IPLY PBJz HdHv YlIC UbLH PIUA HVUw NRIj BnNq UpYO ILHI LBYV LPHv BgOZ BpMl YRNL","mode":"text","instructions":"Almost finished. Try to type as quickly and accurately as you can!"},{"text":" ","mode":"key","instructions":"$report"}],"order":5,"type":"normal","name":"Right Hand Capitals","description":"This lesson teaches you the CAPITAL letters which are typed by your right hand.\nThese are Y, U, I, O, P, H, J, K, L, B, N, and M."}
\ No newline at end of file
+{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the Y, U, I, O, P, H, J, K, L, B, N and M keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"Y","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the Y key with your right index finger."},{"text":"U","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the U key with your right index finger."},{"text":"I","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the I key with your right middle finger."},{"text":"O","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the O key with your right ring finger."},{"text":"P","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the P key with your right little finger."},{"text":"H","mode":"key","instructions
 ":"Press and hold the SHIFT key with your left little finger, then press the H key with your right index finger."},{"text":"J","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the J key with your right index finger."},{"text":"K","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the K key with your right middle finger."},{"text":"L","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the L key with your right ring finger."},{"text":"B","mode":"key","instructions":"Press and hold the SHIFT key with your right little finger, then press the B key with your left index finger."},{"text":"N","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then press the N key with your right index finger."},{"text":"M","mode":"key","instructions":"Press and hold the SHIFT key with your left little finger, then pres
 s the M key with your right index finger."},{"text":"II BB LL OO NN NN MM NN LL YY KK PP UU MM JJ YY PP OO II YY HH HH NN JJ OO PP PP UU YY UU JJ II LL NN JJ HH NN OO YY UU NN KK HH BB HH LL UU BB LL KK HH II HH HH MM OO HH HH MM HH","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"BK PM HM BM PN IY LK MY UN HK OP MO JU LO NO BU LP KU BI YO YB PB UP YO LO PU NO YM LB OU HU HK MH BK YH OK NI JB KJ KB KI OJ UP JP MB YM LK LI OB OK PK PL UY BB MJ OP OO BU MJ UP","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"OC OU AM NN lU hJ Bq LN kO QB Bx Id UY ZI mO aI Np KQ WU Ne CY ZP GP IQ uH KM JI BY fY NH WP Mb DL dU Bq dB AP xM Hi UB BF kU BP qY PO Hw BI Jj Nu Bu vL ND dI oM DY iL sH SY HF YP","mode":"text","instructions":"Good job. Now practice all the keys you know."},{"text":"OSLR BUIW UqYi UmKs LIJb BfNr LjBH IjNf LSYi LtLm UAPT UjKz PEPi KONu KPIw UUMO IoOt MUKy IWLD BGHf KWJL KZYf PgLh UDLN 
 MoJE OTMb YAUh OAIt BtPf YmOS YIYC NbLk KcHc InKQ JyJj UKOa BABX PxHS UXOb PeMw MoYY McUr KHPe PQHB UyIr BhJL JWYK YBMi IhJU KWJK BDMg NfYs OyMA HkOU BsBC IBJW LDHf HwJR OhYT JHLG","mode":"text","instructions":"Good job. Time to type jumbles."},{"text":" ","mode":"key","instructions":"$report"}],"order":5,"type":"normal","name":"Right Hand Capitals","description":"This lesson teaches you the CAPITAL letters which are typed by your right hand.\nThese are Y, U, I, O, P, H, J, K, L, B, N, and M."}
\ No newline at end of file
diff --git a/lessons/en_US/toprow.lesson b/lessons/en_US/toprow.lesson
index 079a373..db79b31 100644
--- a/lessons/en_US/toprow.lesson
+++ b/lessons/en_US/toprow.lesson
@@ -1 +1 @@
-{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the q, w, e, r, t, y, u, i, o and p keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"q","mode":"key","instructions":"Press the q key with your left little finger."},{"text":"w","mode":"key","instructions":"Press the w key with your left ring finger."},{"text":"e","mode":"key","instructions":"Press the e key with your left middle finger."},{"text":"r","mode":"key","instructions":"Press the r key with your left index finger."},{"text":"t","mode":"key","instructions":"Press the t key with your left index finger."},{"text":"y","mode":"key","instructions":"Press the y key with your right index finger."},{"text":"u","mode":"key","instructions":"Press the u key with your right index finger."},{"text":"i","mode":"key","instructions":"Press the i key with your right middle finger."},{"text":"o","mode":"key","instructions":"Press the o key with your right ring finger."},{"text":"p","
 mode":"key","instructions":"Press the p key with your right little finger."},{"text":"ee oo ii ee oo oo pp oo ii qq uu rr ww pp yy qq rr ee ww qq tt tt pp yy rr rr tt ww qq ww yy ww uu oo yy tt oo rr qq ww","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"pp uu tt ii tt ii ww ii ii uu tt ee tt tt pp ee tt tt pp tt ii ii yy ee pp rr ii tt pp qq pp oo ii pp rr yy ee qq qq uu","mode":"text","instructions":"Keep practicing the new keys."},{"text":"or te uq eu uy ur iy ei ip iu tw yr ut re eq ew pw wi pi pi wr yw to oy oe wp ut pe ry iu iw uy rr ti yu ty ut ww py iw po uw po pr ye wo iw tw oi py","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"uq pp ry rw yw wt tw pp ou yo ii te uw to rt tu pr rq oy ty wy pt qu ip ei ee oi ti pe ru ot tr iy oi yt wr ru pt yt pe oo ui rt iu wi rr ui ip ot ei","mode":"text","instructions":"Keep practicing key pairs."},{"text":"ef tu lp rg fw py uy ow ew ik ft p
 o le qu dq ro yi do up kp tt yf gt pa wd tt eg oh qu up yp wa gi ik ol oj yj sr ir ap rq ti fr yg tp eh dt iq dw ok","mode":"text","instructions":"Good job. Now practice all the keys you know."},{"text":"ia pf pj is ug yg rj ae yr pw yo ar yi pw pg id ri rt il ge wf uk gp ft ap rg eq og id hy tp og aq hr tp rf ug ot ry pa ig fo ji uk yd je pk uw iw lw","mode":"text","instructions":"Almost done.  Keep practicing all the keys you know."},{"text":"surefire solely fiat fed flukey testify atrial suppose drolly lawyer koala wall washer ugly legwork rigged killjoy firer flay southpaw hula quietly those sagely diaper ethyl lipread tattler superior hod reap tidy lopsided letup thyself degree works fatality shay relight dishes soda furor twirly spurge taper horde wrath hay jest draft trooper stuffy sure keg aloft pleura retool addle lee pa aside edgewise august shuffle tortured yaw leafage roadster powder are fraught ego jut daddy drill payer literary headrest quart jeweled wow dowdy 
 tarsus stopple tither steal roguery jostle solute superego folder guy shit keepsake fretsaw hallowed yippee swatter spottily","mode":"text","instructions":"You did it! Time to type real words."},{"text":"pesky supply fetish tread hadst rust oh thereof wrestle yodeler fillip aerator riotous distort gorily flukey high settle wide papal futility firth grayish protege aspire digital draft laetrile palette slug stuff derriere willow polarity wail await fig staid ref theorist odious watt glister stylist torpor hasp prey result parfait shorty pule pail grout hardly roster fifty gutter your sport people garde pusher upshot applier sully parlous freeware jilt tepee titled psst fleurs equator whisky west housetop agitator stet soapy eyeteeth jaws you pathos target pshaw plead tailpipe distrust fretful fitful airport field reroute wastes adopter drowsily kirk waterway whew purpose","mode":"text","instructions":"Keep practicing these words."},{"text":"jotter wheels far wright edit footw
 ear ligate aerator paralyse trellis lard settle filter ole fury pj liftoff upshot foppish fruit risotto doter whoreish settee sashay phase altruist foot plethora oop aquaria polestar dippy skill graduate fakir fearless spate peat fireside epithet stead wordage lettered defy austral payoff keyword wiles wight press yak witless paltry route direly qua doggedly life grafter ploy rapper pothead desolate douse letterer hots slight graduate epithet leg propose weep fellatio whoso whale larkspur kelp diffuse aft steal treasury greedily error troupe steeple toiler liaise loggia straw rudely testator rattler rap defray studies outpost waffler raggedy goodwill skylark sigh sled stoker williwaw situated sapwood lifter whose leery praise wailer golly rightful op piffle swat ridged physique rehouse allude diarist esthete tripodal putout ate shirker strudel towhead dado plaid lethargy greeter fluidity slipway pulp hydra ate distil satiety rouge prophesy progress depth utility greatly sell
  rootlet puttee tassel raggedly squire wisp porous poster walkaway flirt rearrest wishy altar prate irate appeal sheepdog hippie saggy tete largish lope floe trike doer sheet ghost glassed salaried kaiser party awoke quietly steeply outlaw skewed odyssey otiose ratifier goitre diereses earthy squiggly filthily repute wapiti prudery wittily lollypop disguise stuffy slog tertiary","mode":"text","instructions":"Almost finished. Try to type as quickly and accurately as you can!"},{"text":" ","mode":"key","instructions":"$report"}],"order":2,"type":"normal","name":"The Top Row","description":"This lesson teaches you the q, w, e, r, t, y, u, i, o and p keys \non the top row of the keyboard."}
\ No newline at end of file
+{"steps":[{"text":"\n","mode":"key","instructions":"In this lesson, you will learn the q, w, e, r, t, y, u, i, o and p keys.\n\nPress the ENTER key when you are ready to begin!"},{"text":"q","mode":"key","instructions":"Press the q key with your left little finger."},{"text":"w","mode":"key","instructions":"Press the w key with your left ring finger."},{"text":"e","mode":"key","instructions":"Press the e key with your left middle finger."},{"text":"r","mode":"key","instructions":"Press the r key with your left index finger."},{"text":"t","mode":"key","instructions":"Press the t key with your left index finger."},{"text":"y","mode":"key","instructions":"Press the y key with your right index finger."},{"text":"u","mode":"key","instructions":"Press the u key with your right index finger."},{"text":"i","mode":"key","instructions":"Press the i key with your right middle finger."},{"text":"o","mode":"key","instructions":"Press the o key with your right ring finger."},{"text":"p","
 mode":"key","instructions":"Press the p key with your right little finger."},{"text":"ee oo ii ee oo oo pp oo ii qq uu rr ww pp yy qq rr ee ww qq tt tt pp yy rr rr tt ww qq ww yy ww uu oo yy tt oo rr qq ww pp uu tt ii tt ii ww ii ii uu tt ee tt tt pp ee tt tt pp tt","mode":"text","instructions":"You did it! Practice typing the keys you just learned."},{"text":"ty ip rw or oe ty oi or uw te ur op ro ye pu iq qw uu ep op or te uq eu uy ur iy ei ip iu tw yr ut re eq ew pw wi pi pi wr yw to oy oe wp ut pe ry iu iw uy rr ti yu ty ut ww py iw","mode":"text","instructions":"Nice work. Now put the keys together into pairs."},{"text":"lq ut pa iu ud uy wr wh dw tj fr lu wd gt hp wr fr di ws dq ra fw pr ty do hi rq lp pi ih aw eg wi sw op rk es et fe ap he tk rk yg rw qu rp yg pe so ay ot rh lt dr ud wi ap eu yh","mode":"text","instructions":"Nice work. Now practice all the keys you know."},{"text":"passport heater gist southpaw seraph dais prude ti ford stratify wheedler paisley shar
 pie satire kith flagpole sage defeater walrus halfway prepared lisp aerosol folktale tis ward estrous kiri pate liqueur depress sealer stalk powder litterer outsold flight hashish prideful treasury reforge hooker thud ratty skittish weal portage jollity togs you frigid teepee haggle lees disagree ferrous sorrily lewd disease prepare","mode":"text","instructions":"Wonderful! Time to type real words."},{"text":" ","mode":"key","instructions":"$report"}],"order":2,"type":"normal","name":"The Top Row","description":"This lesson teaches you the q, w, e, r, t, y, u, i, o and p keys \non the top row of the keyboard."}
\ No newline at end of file
diff --git a/lessonscreen.py b/lessonscreen.py
index 0babc07..0909d5d 100644
--- a/lessonscreen.py
+++ b/lessonscreen.py
@@ -33,14 +33,14 @@ import keyboard, medalscreen
 PARAGRAPH_CODE = u'\xb6'
 
 # Maximium width of a text line in text lesson mode.
-LINE_WIDTH = 80
+LINE_WIDTH = 70
 
 # Requirements for earning medals.
 # Words per minute goals came from http://en.wikipedia.org/wiki/Words_per_minute.
 DEFAULT_MEDALS = [
-    { 'name': 'bronze', 'wpm': 25, 'accuracy': 75 },
-    { 'name': 'silver', 'wpm': 35, 'accuracy': 85 },
-    { 'name': 'gold',   'wpm': 45, 'accuracy': 95 }
+    { 'name': 'bronze', 'wpm': 15, 'accuracy': 75 },
+    { 'name': 'silver', 'wpm': 20, 'accuracy': 85 },
+    { 'name': 'gold',   'wpm': 25, 'accuracy': 95 }
 ]
 
 class LessonScreen(gtk.VBox):
@@ -79,12 +79,13 @@ class LessonScreen(gtk.VBox):
         # Set up font styles.
         self.tagtable = gtk.TextTagTable()
         instructions_tag = gtk.TextTag('instructions')
-        #instructions_tag.props.size = 10000
+        instructions_tag.props.size = 10000
         instructions_tag.props.justification = gtk.JUSTIFY_CENTER
         self.tagtable.add(instructions_tag)
 
         text_tag = gtk.TextTag('text')
         text_tag.props.family = 'Monospace'
+        text_tag.props.size = 10000
         self.tagtable.add(text_tag)
         
         image_tag = gtk.TextTag('image')
@@ -94,11 +95,13 @@ class LessonScreen(gtk.VBox):
         
         correct_copy_tag = gtk.TextTag('correct-copy')
         correct_copy_tag.props.family = 'Monospace'
+        correct_copy_tag.props.size = 10000
         correct_copy_tag.props.foreground = '#0000ff'
         self.tagtable.add(correct_copy_tag)
         
         incorrect_copy_tag = gtk.TextTag('incorrect-copy')
         incorrect_copy_tag.props.family = 'Monospace'
+        incorrect_copy_tag.props.size = 10000
         incorrect_copy_tag.props.foreground = '#ff0000'
         self.tagtable.add(incorrect_copy_tag)
         
@@ -214,10 +217,6 @@ class LessonScreen(gtk.VBox):
         return new_lines
 
     def advance_step(self):
-        # Clear the buffer *after* key steps.
-        if self.step and self.mode == 'key':
-            self.lessonbuffer.set_text('')
-        
         # Clear step related variables.
         self.step = None
         
@@ -243,8 +242,7 @@ class LessonScreen(gtk.VBox):
         self.mode = self.step['mode']
         
         # Clear the buffer *before* key steps.
-        if self.mode == 'key':
-            self.lessonbuffer.set_text('')
+        self.lessonbuffer.set_text('')
         
         # Output the instructions.
         self.instructions = self.step['instructions']
@@ -255,7 +253,7 @@ class LessonScreen(gtk.VBox):
             self.lessonbuffer.get_end_iter(), '\n\n' + self.instructions + '\n', 'instructions')
         
         self.text = unicode(self.step['text'])
-        
+
         if self.mode == 'key':
             self.lines = [self.text.replace('\n', PARAGRAPH_CODE)]
             self.line_marks = {}
@@ -530,7 +528,7 @@ class LessonScreen(gtk.VBox):
             _('Nice work!'),
             _('Way to go!')
         ]
-        text += random.choice(congrats) + '\n\n'
+        text += random.choice(congrats) + ' '
         
         if self.total_time > 0:
             text += _('You finished the lesson in %(time)d seconds, with %(errors)d errors.\n') % \
-----------------------------------------------------------------------


--
/home/olpc-code/git/activities/typing-turtle


More information about the Commits mailing list