├── css ├── images │ ├── forkme.gif │ ├── forkme.png │ ├── grid1.gif │ ├── grid2.gif │ ├── grid3.gif │ ├── grid4.gif │ ├── hands.png │ └── grid4-brown.gif ├── keyboard │ ├── key-bksp.gif │ ├── key-bksp.png │ ├── key-caps.gif │ ├── key-caps.png │ ├── key-rtrn.gif │ ├── key-rtrn.png │ ├── key-shift.gif │ ├── key-shift.png │ ├── key-tab.gif │ └── key-tab.png ├── layout.css ├── webtypist.css └── keyboard.css ├── v2 ├── hints │ ├── leftHand.png │ ├── leftThumb.png │ ├── rightHand.png │ └── rightThumb.png ├── lessons │ ├── README.md │ ├── br.xml │ ├── cat.xml │ ├── us.colemak.xml │ ├── es3.xml │ ├── es2.xml │ ├── ir.xml │ ├── us.workman.xml │ ├── gb.xml │ ├── us.xml │ └── ru1.xml ├── index.html ├── webtypist.css ├── lessons.json └── webtypist.js ├── lessons ├── README ├── danish2.ktouch.xml ├── fr-dvorak-bepo-1.ktouch.xml ├── bepo.ktouch.xml ├── catalan.ktouch.xml └── bulgarian.ktouch.xml ├── LICENSE ├── js └── adblock-tester.js ├── README.md └── layouts ├── azerty.xml ├── qwertz.xml └── qwerty.xml /css/images/forkme.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/forkme.gif -------------------------------------------------------------------------------- /css/images/forkme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/forkme.png -------------------------------------------------------------------------------- /css/images/grid1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/grid1.gif -------------------------------------------------------------------------------- /css/images/grid2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/grid2.gif -------------------------------------------------------------------------------- /css/images/grid3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/grid3.gif -------------------------------------------------------------------------------- /css/images/grid4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/grid4.gif -------------------------------------------------------------------------------- /css/images/hands.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/hands.png -------------------------------------------------------------------------------- /v2/hints/leftHand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/v2/hints/leftHand.png -------------------------------------------------------------------------------- /v2/hints/leftThumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/v2/hints/leftThumb.png -------------------------------------------------------------------------------- /v2/hints/rightHand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/v2/hints/rightHand.png -------------------------------------------------------------------------------- /v2/hints/rightThumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/v2/hints/rightThumb.png -------------------------------------------------------------------------------- /css/images/grid4-brown.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/images/grid4-brown.gif -------------------------------------------------------------------------------- /css/keyboard/key-bksp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-bksp.gif -------------------------------------------------------------------------------- /css/keyboard/key-bksp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-bksp.png -------------------------------------------------------------------------------- /css/keyboard/key-caps.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-caps.gif -------------------------------------------------------------------------------- /css/keyboard/key-caps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-caps.png -------------------------------------------------------------------------------- /css/keyboard/key-rtrn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-rtrn.gif -------------------------------------------------------------------------------- /css/keyboard/key-rtrn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-rtrn.png -------------------------------------------------------------------------------- /css/keyboard/key-shift.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-shift.gif -------------------------------------------------------------------------------- /css/keyboard/key-shift.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-shift.png -------------------------------------------------------------------------------- /css/keyboard/key-tab.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-tab.gif -------------------------------------------------------------------------------- /css/keyboard/key-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OneDeadKey/webtypist/HEAD/css/keyboard/key-tab.png -------------------------------------------------------------------------------- /lessons/README: -------------------------------------------------------------------------------- 1 | These lessons have been taken from KTouch, see: 2 | 3 | https://edu.kde.org/ktouch/kde4/ktouch-lectures.php 4 | -------------------------------------------------------------------------------- /v2/lessons/README.md: -------------------------------------------------------------------------------- 1 | All typing lessons have been taken from KTouch: 2 | 3 | - online repository: https://cgit.kde.org/ktouch.git/tree/data/courses 4 | - documentation: https://edu.kde.org/ktouch/kde4/ktouch-lectures.php 5 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Web Typist -- web-based touch-typing tutor. 2 | Copyright (C) 2010-2013, Fabien & Léo Cazenave. 3 | 4 | This program is free software: you can redistribute it and/or modify 5 | it under the terms of the GNU General Public License as published by 6 | the Free Software Foundation, either version 2 of the License, or 7 | (at your option) any later version. 8 | 9 | This program is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU General Public License for more details. 13 | 14 | You should have received a copy of the GNU General Public License 15 | along with this program. If not, see . 16 | 17 | -------------------------------------------------------------------------------- /js/adblock-tester.js: -------------------------------------------------------------------------------- 1 | /** 2 | * AdBlockPlus is likely to hide a few keys *sigh* 3 | * => ensure that all keys are properly displayed. 4 | */ 5 | 6 | if (window.addEventListener) window.addEventListener('load', function() { 7 | var badRendering = document.getElementById('badRendering'); 8 | if (!badRendering) 9 | return; 10 | 11 | // All browsers supporting .addEventListener are reported to support 12 | // .querySelectorAll and the ^= selector (IE9, Firefox 3+, Safari...) 13 | var keys = document.querySelectorAll('[id^="key_A"]'); 14 | for (var i = 0; i < keys.length; i++) { 15 | if (parseInt(keys[i].getBoundingClientRect().width, 10) < 40) { 16 | badRendering.style.display = 'block'; 17 | break; 18 | } 19 | } 20 | }, false); 21 | 22 | -------------------------------------------------------------------------------- /css/layout.css: -------------------------------------------------------------------------------- 1 | h1 { 2 | margin-top: 0; 3 | margin-bottom: 0; 4 | padding-top: 30px; 5 | } 6 | 7 | h1 + p { 8 | margin-top: 0.5em; 9 | color: #c8a; 10 | } 11 | 12 | h1, h2 { 13 | color: brown; 14 | border-bottom: 1px inset brown; 15 | } 16 | 17 | dd, dt { 18 | margin-bottom: 0.5em; 19 | } 20 | 21 | 22 | /****************************************************************************** 23 | * Fixed width layout (780px) 24 | */ 25 | 26 | html { 27 | background-color: #ccc; 28 | } 29 | 30 | body { 31 | width: 740px; 32 | margin: auto; 33 | padding: 20px; 34 | font-family: sans-serif; 35 | border-left: 1px solid #aaa; 36 | border-right: 1px solid #aaa; 37 | background-color: white; 38 | -webkit-box-shadow: 0px 1px 10px #888; 39 | -moz-box-shadow: 0px 1px 10px #888; 40 | -ms-box-shadow: 0px 1px 10px #888; 41 | -o-box-shadow: 0px 1px 10px #888; 42 | box-shadow: 0px 1px 10px #888; 43 | } 44 | 45 | 46 | /****************************************************************************** 47 | * "Fork me" ribbon 48 | */ 49 | 50 | #github { 51 | position: absolute; 52 | top: 0; 53 | right: 0; 54 | z-index: 1; 55 | display: block; 56 | width: 149px; 57 | height: 149px; 58 | background-image: url(images/forkme.png); 59 | } 60 | 61 | * html #github { /* IE6 */ 62 | background-image: url(images/forkme.gif); 63 | } 64 | 65 | #github span { 66 | display: none; 67 | } 68 | 69 | -------------------------------------------------------------------------------- /v2/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Web Typist 7 | 8 | 9 | 10 | 11 | 12 |
13 |

Web Typist v2

14 |

A typing tutor for modern web browsers.

15 |
16 | 17 |
18 |
19 | 0 cpm 20 | 0 errors 21 |
22 |
23 | 26 | 34 | 35 | 36 |
37 |
38 | 41 | 44 |
45 |
46 | 47 |
48 |
49 | 50 | 51 | 52 | 53 |
54 | 55 | 56 |
57 | 58 | 59 |

Loading web component…

60 |
61 | 62 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Web Typist 2 | ================================================================================ 3 | 4 | Online touch-typing tutor. 5 | 6 | 7 | Live Version 8 | -------------------------------------------------------------------------------- 9 | 10 | https://OneDeadKey.github.io/webtypist/ 11 | 12 | Technically outdated (works with IE6!) but still working. It should be on par with [KTouch][1]. 13 | 14 | 15 | V2 Preview (work in progress) 16 | -------------------------------------------------------------------------------- 17 | 18 | https://OneDeadKey.github.io/webtypist/v2/ 19 | 20 | This version is built on the [x-keyboard][3] component, which brings two new features: 21 | 22 | - dead keys are properly detected, and visual hints are displayed to help mastering these dead keys — this is especially useful with Latin languages (French, Italian, Spanish, Portuguese, Romanian…) or with some keyboard layouts such as Qwerty-intl; 23 | - keyboard layouts can be fully emulated — you can *try* a new layout without installing it on your computer. 24 | 25 | This newer version relies on the following web standards: 26 | 27 | - ES6 classes & modules; 28 | - [web components][6]: custom elements + shadow DOM + HTML templates; 29 | - [KeyboardEvent][7]’s experimental [code][8] property for the keyboard emulation. 30 | 31 | Nowadays, this means it should work with any browser except IE and Edge. As Microsoft is deprecating IE and switching Edge to the Blink engine, all desktop browsers should be supported soon. Until then, the V1 is still there. 32 | 33 | 34 | Typing Lessons 35 | -------------------------------------------------------------------------------- 36 | 37 | Both V1 and V2 use KTouch lecture files. [Please refer to the documentation][2]. 38 | 39 | If you contribute a lesson here, please consider submitting it to the [KTouch][1] project as well (and vice-versa). 40 | 41 | 42 | Keyboard Layouts 43 | -------------------------------------------------------------------------------- 44 | 45 | The V2 uses [Kalamine][4] keyboard layouts. This keyboard layout manager makes it easy to handle dead keys and/or an AltGr layer, and generates drivers for Windows, MacOSX and Linux — along with a JSON output that is parsed by WebTypist. 46 | 47 | The V1 uses a specific XML format that I don’t intend to keep. 48 | 49 | 50 | Credits 51 | -------------------------------------------------------------------------------- 52 | 53 | This project reuses [KTouch][1]’s lessons and some [Klavaro][5] visuals. 54 | 55 | [1]: https://edu.kde.org/ktouch/ 56 | [2]: https://edu.kde.org/ktouch/kde4/ktouch-lectures.php 57 | [3]: https://github.com/OneDeadKey/x-keyboard/ 58 | [4]: https://github.com/OneDeadKey/kalamine/ 59 | [5]: https://sourceforge.net/projects/klavaro/ 60 | [6]: https://developer.mozilla.org/en-US/docs/Web/Web_Components 61 | [7]: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent 62 | [8]: https://www.w3.org/TR/uievents-code/#code-value-tables 63 | -------------------------------------------------------------------------------- /layouts/azerty.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | azerty 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | -------------------------------------------------------------------------------- /v2/webtypist.css: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Full-height page, vertically justified content 3 | */ 4 | 5 | html { 6 | background-color: #ccc; 7 | border: none; 8 | height: 100%; 9 | margin: 0; 10 | padding: 0; 11 | width: 100%; 12 | } 13 | 14 | body { 15 | background-color: #fff; 16 | border-left: 1px solid #aaa; 17 | border-right: 1px solid #aaa; 18 | box-shadow: 0 1px 10px #888; 19 | display: flex; 20 | flex-direction: column; 21 | height: 100%; 22 | justify-content: space-between; 23 | margin: 0 auto; 24 | max-width: 51em; 25 | padding: 0 20px; 26 | } 27 | 28 | /* ensure a 3:1 ratio until the component is loaded */ 29 | x-keyboard p { 30 | margin: 0; 31 | padding: 0 0 calc(33% - 10px); 32 | } 33 | 34 | 35 | /****************************************************************************** 36 | * Header & Footer 37 | */ 38 | 39 | header, footer { 40 | color: brown; 41 | } 42 | 43 | h1 { 44 | border-bottom: 1px inset brown; 45 | color: brown; 46 | font-size: 1.5em; 47 | margin-bottom: 0; 48 | } 49 | 50 | h1 small { 51 | font-size: 0.6em; 52 | font-style: italic; 53 | } 54 | 55 | h1 + p { 56 | font-size: smaller; 57 | margin-top: .4em; 58 | } 59 | 60 | footer { 61 | border-top: 1px outset brown; 62 | font-size: smaller; 63 | padding: .5em 0; 64 | text-align: right; 65 | width: 100%; 66 | } 67 | 68 | 69 | /****************************************************************************** 70 | * Keyboard & Lesson selection 71 | */ 72 | 73 | #metrics { 74 | float: right; 75 | margin-top: 6px; 76 | } 77 | 78 | form * { 79 | margin: 0 6px 6px 0; 80 | vertical-align: middle; 81 | } 82 | 83 | label[for] { 84 | display: inline-block; 85 | margin-left: -6px; 86 | -moz-user-select: none; 87 | user-select: none; 88 | } 89 | 90 | 91 | /****************************************************************************** 92 | * Text prompt & input 93 | */ 94 | 95 | textarea { 96 | box-sizing: border-box; 97 | height: 42px; 98 | margin-bottom: 2px; 99 | padding: 0; 100 | resize: none; 101 | width: 100%; 102 | } 103 | 104 | .hints textarea { 105 | width: calc(100% - 160px); 106 | } 107 | 108 | #txtInput.active { background-color: #dfd; } 109 | #txtInput.error { background-color: #f00; } 110 | 111 | 112 | /****************************************************************************** 113 | * Visual hints 114 | */ 115 | 116 | #hands { 117 | float: right; 118 | position: relative; 119 | width: 150px; 120 | height: 90px; 121 | overflow: hidden; 122 | display: none; 123 | } 124 | 125 | .hints #hands { 126 | display: block; 127 | } 128 | 129 | #hands span { 130 | background-position: left top; 131 | background-repeat: no-repeat; 132 | height: 90px; 133 | position: absolute; 134 | top: 0; 135 | } 136 | 137 | #leftHand { left: 0px; width: 52px; background-image: url(hints/leftHand.png); } 138 | #leftThumb { left: 52px; width: 23px; background-image: url(hints/leftThumb.png); } 139 | #rightThumb { left: 75px; width: 23px; background-image: url(hints/rightThumb.png); } 140 | #rightHand { left: 97px; width: 52px; background-image: url(hints/rightHand.png); } 141 | 142 | .l5 #leftHand, .r5 #rightHand { background-position-y: -90px; } 143 | .l4 #leftHand, .r4 #rightHand { background-position-y: -180px; } 144 | .l3 #leftHand, .r3 #rightHand { background-position-y: -270px; } 145 | .l2 #leftHand, .r2 #rightHand { background-position-y: -360px; } 146 | 147 | .m1 #leftThumb, .m1 #rightThumb, 148 | .l1 #leftThumb, .r1 #rightThumb { background-position-y: -90px; } 149 | -------------------------------------------------------------------------------- /layouts/qwertz.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | qwertz 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /css/webtypist.css: -------------------------------------------------------------------------------- 1 | 2 | /****************************************************************************** 3 | * Full-height page with sticky footer 4 | */ 5 | 6 | html, body { 7 | height: 100%; 8 | width: 100%; 9 | margin: 0; 10 | padding: 0; 11 | border: none; 12 | background-color: #ccc; 13 | } 14 | 15 | #wrapper, #footer { 16 | width: 740px; 17 | } 18 | 19 | #wrapper { 20 | position: relative; 21 | min-height: 100%; 22 | margin: 0 auto; 23 | padding: 0 20px; 24 | border-left: 1px solid #aaa; 25 | border-right: 1px solid #aaa; 26 | background-color: white; 27 | -webkit-box-shadow: 0px 1px 10px #888; 28 | -moz-box-shadow: 0px 1px 10px #888; 29 | -ms-box-shadow: 0px 1px 10px #888; 30 | -o-box-shadow: 0px 1px 10px #888; 31 | box-shadow: 0px 1px 10px #888; 32 | } 33 | 34 | * html #wrapper { /* IE6 does not support min-height */ 35 | height: 100%; 36 | } 37 | 38 | #content { 39 | padding-bottom: 40px; /* >= height of the footer */ 40 | background-color: white; 41 | } 42 | 43 | #footer { 44 | position: absolute; 45 | bottom: 0; 46 | height: 34px; /* 34 + 1 + 5 = 40px */ 47 | border-top: 1px outset brown; 48 | padding-top: 5px; 49 | font-size: smaller; 50 | color: brown; 51 | } 52 | 53 | 54 | /****************************************************************************** 55 | * Main text prompt/input area 56 | */ 57 | 58 | #lessonInput { 59 | padding: 1em 0; 60 | } 61 | 62 | #lessonInput textarea { 63 | width: 100%; 64 | } 65 | 66 | #lessonInput textarea.error { 67 | background-color: red; 68 | } 69 | 70 | .hints #lessonInput textarea { 71 | width: 570px; 72 | } 73 | 74 | 75 | /****************************************************************************** 76 | * Visual hints: colored keys 77 | */ 78 | 79 | .hints li.active, 80 | .hints ul#keyboard li.specialKey.active { 81 | background-color: brown; 82 | } 83 | 84 | .hints li.active * { 85 | font-weight: bold; 86 | color: white; 87 | } 88 | 89 | .hints .left2 { background-color: #db0; } 90 | .hints .right2 { background-color: #ee0; } 91 | .hints .left3, .hints .right3 { background-color: #ac0; } 92 | .hints .left4, .hints .right4 { background-color: #3bb; } 93 | .hints .left5, .hints .right5 { background-color: #88f; } 94 | 95 | .hints li#ac01, .hints li#ac02, .hints li#ac03, 96 | .hints li#ac08, .hints li#ac09, .hints li#ac10, 97 | .hints li#ac04, .hints li#ac07 { /* home row */ 98 | background-image: url(images/grid4.gif); 99 | font-weight: bold; 100 | color: white; 101 | } 102 | 103 | 104 | /****************************************************************************** 105 | * Visual hints: hands picture 106 | */ 107 | 108 | #hands { 109 | float: right; 110 | position: relative; 111 | margin-top: 5px; 112 | width: 150px; 113 | height: 90px; 114 | overflow: hidden; 115 | display: none; 116 | } 117 | 118 | .hints #hands { 119 | display: block; 120 | } 121 | 122 | #hands.left5 span { background-position: left 810px; } 123 | #hands.left4 span { background-position: left 720px; } 124 | #hands.left3 span { background-position: left 630px; } 125 | #hands.left2 span { background-position: left 540px; } 126 | #hands.thumb span { background-position: left 450px; } 127 | #hands.right2 span { background-position: left 360px; } 128 | #hands.right3 span { background-position: left 270px; } 129 | #hands.right4 span { background-position: left 180px; } 130 | #hands.right5 span { background-position: left 90px; } 131 | 132 | #hands span { 133 | position: absolute; 134 | top: 0; 135 | left: 0; 136 | width: 300px; 137 | height: 90px; 138 | background-image: url(images/hands.png); 139 | background-position: left top; 140 | } 141 | 142 | #hands.shift span { 143 | left: -150px; 144 | } 145 | 146 | 147 | /****************************************************************************** 148 | * Keyboard settings: layout, geometry 149 | */ 150 | 151 | #keyboardSelector { 152 | float: right; 153 | margin-top: -10px; 154 | } 155 | 156 | #keyboardSelector dl * { 157 | margin: 0; 158 | padding: 0; 159 | overflow: hidden; 160 | } 161 | 162 | #keyboardSelector dl dt { 163 | float: left; 164 | width: 200px; 165 | height: 1.5em; 166 | line-height: 1.5em; 167 | text-align: right; 168 | } 169 | 170 | #keyboardSelector dl dd { 171 | text-align: left; 172 | margin-left: 210px; 173 | height: 1.5em; 174 | line-height: 1.5em; 175 | } 176 | 177 | -------------------------------------------------------------------------------- /lessons/danish2.ktouch.xml: -------------------------------------------------------------------------------- 1 | 2 | Danish (auto-generated) 3 | KTouch training file generated Sun Aug 25 22:07:37 2002 4 | Perl Script written by Steinar Theigmann & Håvard Frøiland. 5 | 6 | 7 | 8 | jf 9 | ffff jj jjj jjjj 10 | f fjf fjjj jjjf 11 | ffjjf fjf j fjjj jj 12 | jff f ffff j fj 13 | jjjf fjj fjfjj fj 14 | j jf jjjf jf jfj 15 | 16 | 17 | kd 18 | kfkf kd dfj jk dk 19 | fk d kd dfj fjd 20 | jk dfj dfj d d 21 | k dk fk d jk kd 22 | df dfj jd dfj dfj 23 | jjk d dk kfkf fjd 24 | 25 | 26 | ls 27 | ksdd fld s s dkld 28 | jll fkl s fld ds 29 | fld l sjk kld kld 30 | sk ffkl fkl sk 31 | dl sf dkld ffs 32 | dkld kl dl sdl lsd 33 | 34 | 35 | øa 36 | rad sjals ja lala 37 | løds kaj falk flak 38 | fad flaks rød fladsøs 39 | ras skalk løds salsa 40 | løj klask da a fa 41 | køls asks dødsfalds 42 | 43 | 44 | nt 45 | saft afnød klat anskaf 46 | raskt taktfast naj 47 | fastansat slants stanks 48 | nat afnød østland 49 | tskf anstand løsladt 50 | fladt støjs afnød 51 | 52 | 53 | iv 54 | skandinavistisk afstiv tavst 55 | divans asiat kitinskal 56 | statists instinktiv anilin 57 | standtid kids finans 58 | vvs visa annalistisk 59 | klatvist vindfløj fatalists 60 | 61 | 62 | me 63 | øffes kilet vandstandene 64 | fjenden standenes svinde 65 | svalendes afskallendes 66 | søvejenes sammenfattendes 67 | mjavede afstødes øjnes 68 | stødtandens assistents mine 69 | 70 | 71 | hr 72 | akkilessenernes versenes madrasser 73 | radikaliseredes fritidshjemmenes 74 | afskrivere saltsøers retssalen 75 | diasrammer rimesse svinemiklers 76 | hankedes lejekaserners 77 | timevisers familiariseredes 78 | 79 | 80 | go 81 | agathe fritekstsøgning 82 | hagendes demonstrators 83 | motellerne maoisme indtegn 84 | trillingers vidneafhøringer 85 | teltholdernes helligdage sorteringsmaskinens 86 | sorteredes aftenandagt 87 | 88 | 89 | bp 90 | simplifikationerne fejlbedømmelsers 91 | genanvendelsesprojektets barberknivs 92 | tilspidsningerne belliser spergel 93 | promillekørsel strippokerne 94 | eskaperes børsnoteret 95 | bestrø patineredes 96 | 97 | 98 | 99 | bondegårdenes fjortenårigs 100 | spånløs indlåner fireåringen 101 | frådseren afhåringers 102 | pålideligstes delområderne 103 | årsopgørelses båsens såmaskines 104 | båndsprøjtningerne åredes vedgåelsen 105 | 106 | 107 | wn 108 | omredaktion rekordindehavere 109 | sladderhankes stenbedsplanters 110 | tapetseringerne åbnede hovmodendes 111 | forkøbsrettighederne konfektioneres 112 | apoteosens papirfabrikken 113 | opløbnes konfereringers 114 | 115 | 116 | 117 | svækkelses tænkeboks ærmebladene 118 | anticiperedes civilisationsformers 119 | æggehvidestoffets desinficeringer 120 | jærtegn racet efterspændingerne 121 | centralisations kancellister 122 | spættes demarchen congoleser 123 | 124 | 125 | x 126 | radixers excelleredes 127 | lixens excesser dioxinbegrænsning 128 | sexologiskes saxofonists 129 | maxien oxider boxcalf 130 | dioxinets sexmistænkt 131 | mexico saxofonistens 132 | 133 | 134 | ,. 135 | a.m.b.a. nov. nr. jan. 136 | mv. mht. apr. dvs. 137 | c. c. iht. nov. 138 | etc. kl. tv. a.m.b.a. 139 | bl.a. osv. d.v.s. 140 | c. nr. apr. afs. 141 | 142 | 143 | ABCDEFGHIJKLMNOPQRSTUVWYZÆØÅ 144 | Ea Hermanda Mejken 145 | Claramilla Mariettes Klas 146 | Femmøllers Joahs Sella 147 | Francas Jefs Irbits 148 | Bredahls Klaves Silvanias 149 | Amerika Aksinjas Jensmine 150 | 151 | 152 | 153 | -------------------------------------------------------------------------------- /css/keyboard.css: -------------------------------------------------------------------------------- 1 | /** 2 | * graphical keyboard layout, fixed size (664*230px) 3 | */ 4 | 5 | ul#keyboard, ul#keyboard ul { 6 | margin: 0; 7 | padding: 0; 8 | width: 664px; 9 | } 10 | * html ul#keyboard ul { 11 | /** 12 | * IE6-specific hack: 13 | * required for the pc104/pc105 layouts 14 | * the TMx layout requires another hack on li#ac01, see below 15 | */ 16 | width: 672px; 17 | } 18 | ul#keyboard { 19 | margin: 20px auto; 20 | position: relative; 21 | height: 230px; 22 | } 23 | 24 | 25 | /****************************************************************************** 26 | * Default Keyboard Geometry (pc104) 27 | */ 28 | 29 | /* rows */ 30 | ul#keyboard li { 31 | list-style-type: none; 32 | clear: both; 33 | margin: 0; 34 | padding: 0; 35 | } 36 | ul#keyboard li#row_AD { 37 | position: absolute; 38 | top: 46px; 39 | } 40 | ul#keyboard li#row_AC { 41 | position: absolute; 42 | top: 92px; 43 | } 44 | ul#keyboard li#row_AB { 45 | position: absolute; 46 | top: 138px; 47 | } 48 | ul#keyboard li#row_AA { 49 | position: absolute; 50 | top: 184px; 51 | } 52 | 53 | /* keys */ 54 | ul#keyboard li li { 55 | position: relative; 56 | float: left; 57 | clear: none; 58 | width: 40px; 59 | height: 40px; 60 | margin: 2px; 61 | border: 1px solid black; 62 | -webkit-border-radius: 5px; 63 | -moz-border-radius: 5px; 64 | -ms-border-radius: 5px; 65 | -o-border-radius: 5px; 66 | border-radius: 5px; 67 | } 68 | ul#keyboard li strong { 69 | position: absolute; 70 | font-weight: normal; 71 | top: 2px; 72 | left: 3px; 73 | } 74 | ul#keyboard li em { 75 | position: absolute; 76 | font-style: normal; 77 | bottom: 2px; 78 | left: 3px; 79 | } 80 | ul#keyboard li .deadKey { 81 | font-size: larger; 82 | color: red; 83 | } 84 | 85 | /* special keys */ 86 | ul#keyboard li.specialKey { 87 | background-color: #ddd; 88 | } 89 | ul#keyboard li.specialKey * { 90 | font-size: 13px; 91 | font-style: italic; 92 | } 93 | li#row_AA li.specialKey { 94 | width: 56px; 95 | } 96 | ul#keyboard li#key_TAB, 97 | ul#keyboard li#key_BKSP { 98 | width: 60px; 99 | } 100 | ul#keyboard li#key_CAPS, 101 | ul#keyboard li#key_RTRN { 102 | width: 73px; 103 | } 104 | ul#keyboard li#key_LFSH, 105 | ul#keyboard li#key_RTSH { 106 | width: 96px; 107 | } 108 | ul#keyboard li#key_SPCE { 109 | width: 240px; 110 | } 111 | ul#keyboard li#key_MENU { 112 | width: 40px; 113 | } 114 | 115 | /* hide LSGT for pc104 (default) */ 116 | li#key_LSGT, li#key_CAPS105, li#key_RTRN105 { 117 | display: none; 118 | } 119 | 120 | 121 | /****************************************************************************** 122 | * European Keyboard Geometry (pc105) 123 | */ 124 | 125 | .pc105 li#key_LFSH { 126 | width: 50px !important; 127 | } 128 | .pc105 li#key_RTRN { 129 | width: 27px !important; 130 | height: 86px !important; 131 | margin-top: -44px; 132 | margin-left: 48px; 133 | } 134 | .pc105 li#key_BKSL { 135 | margin-top: 48px; 136 | margin-left: -31px; 137 | } 138 | .pc105 li#key_LSGT { 139 | display: block; 140 | } 141 | /* visual tweaks for CapsLock and Return */ 142 | .pc105 li#key_CAPS105, .pc105 li#key_RTRN105 { 143 | background-color: #e8e8e8 !important; 144 | display: block; 145 | } 146 | .pc105 li#key_CAPS { 147 | width: 60px !important; 148 | } 149 | .pc105 li#key_CAPS, .pc105 li#key_RTRN { 150 | z-index: 1; 151 | } 152 | .pc105 li#key_CAPS105 { 153 | margin-left: -64px; 154 | width: 73px !important; 155 | } 156 | .pc105 li#key_RTRN105 { 157 | margin-top: -44px; 158 | margin-left: -44px; 159 | width: 40px !important; 160 | } 161 | 162 | 163 | /****************************************************************************** 164 | * Ergonomic Keyboard Geometry (TMx) 165 | */ 166 | 167 | .tmx li#key_CAPS { 168 | display: none; 169 | } 170 | .tmx li#key_BKSL { 171 | margin-top: 94px; 172 | margin-left: -96px; 173 | } 174 | .tmx li#key_TLDE, .tmx li#key_TAB, .tmx li#key_LFSH, .tmx li#key_LCTL, 175 | .tmx li#key_AE12, .tmx li#key_AD12, .tmx li#key_RTSH, .tmx li#key_RCTL, 176 | .tmx li#key_BKSP, .tmx li#key_RTRN { 177 | width: 46px !important; 178 | } 179 | .tmx li#key_LWIN, .tmx li#key_LALT, .tmx li#key_RWIN, .tmx li#key_RALT { 180 | width: 63px !important; 181 | } 182 | .tmx li#key_TLDE, .tmx li#key_TAB, .tmx li#key_LFSH, .tmx li#key_LCTL { 183 | margin-left: 3px; 184 | } 185 | .tmx li#key_AC01 { 186 | margin-left: 55px; 187 | } 188 | * html .tmx li#key_AC01 { /* IE6-specific hack */ 189 | margin-left: 29px; 190 | } 191 | .tmx li#key_AE06, .tmx li#key_AD06, .tmx li#key_AC06, .tmx li#key_AB06 { 192 | margin-left: 54px; 193 | } 194 | .tmx li#key_BKSP { 195 | margin-left: -378px; 196 | height: 86px !important; 197 | } 198 | .tmx li#key_RTRN { 199 | margin-left: -326px; 200 | height: 86px !important; 201 | } 202 | .tmx li#key_LFSH, .tmx li#key_RTSH { 203 | height: 86px !important; 204 | margin-top: -44px; 205 | } 206 | .tmx li#key_RTSH { 207 | margin-left: 48px; 208 | } 209 | .tmx li#key_SPCE { 210 | width: 230px !important; 211 | } 212 | 213 | 214 | /****************************************************************************** 215 | * Background Images for Tab, Backspace, Caps, Return, Shift 216 | */ 217 | 218 | li#key_TAB *, li#key_BKSP *, li#key_CAPS *, 219 | li#key_LFSH *, li#key_RTSH *, li#key_RTRN * { 220 | display: none; 221 | } 222 | li.specialKey { 223 | background-repeat: no-repeat; 224 | background-position: bottom left; 225 | } 226 | 227 | li#key_TAB { background-image: url(keyboard/key-tab.png); } 228 | li#key_BKSP { background-image: url(keyboard/key-bksp.png); } 229 | li#key_CAPS { background-image: url(keyboard/key-caps.png); } 230 | li#key_RTRN { background-image: url(keyboard/key-rtrn.png); } 231 | li#key_LFSH, li#key_RTSH { 232 | background-image: url(keyboard/key-shift.png); 233 | } 234 | 235 | /* IE6 hack, using GIF instead of PNG */ 236 | * html li#key_TAB { background-image: url(keyboard/key-tab.gif); } 237 | * html li#key_BKSP { background-image: url(keyboard/key-bksp.gif); } 238 | * html li#key_CAPS { background-image: url(keyboard/key-caps.gif); } 239 | * html li#key_RTRN { background-image: url(keyboard/key-rtrn.gif); } 240 | * html li#key_LFSH, * html li#key_RTSH { 241 | background-image: url(keyboard/key-shift.gif); 242 | } 243 | 244 | 245 | /****************************************************************************** 246 | * Displayed if the keyboard rendering is altered by an ad blocker 247 | */ 248 | 249 | #badRendering { 250 | clear: both; 251 | text-align: center; 252 | font-weight: bold; 253 | color: brown; 254 | display: none; 255 | } 256 | 257 | -------------------------------------------------------------------------------- /lessons/fr-dvorak-bepo-1.ktouch.xml: -------------------------------------------------------------------------------- 1 | 2 | fr-dvorak-bepo n°1 3 | 4 | 5 | 6 | e, t 7 | eeee tttt eeee tttt eeee tttt eeee tttt eeee 8 | eett ttee eett ttee ttee eett eett eett eett 9 | etet etet etet etet tete tete tete tete tete 10 | 11 | 12 | 13 | s, i 14 | iiii ssss iiii ssss iiii ssss iiii ssss iiii 15 | ssss iiii ssss iiii ssss iiii ssss iiii ssss 16 | eeee tttt eeee tttt sstt eeii sstt iiee iiss 17 | iets iest iets iets iets iets iets iets iets 18 | stei stei stei stei stei stei stei stei stei 19 | 20 | 21 | 22 | u, n 23 | uuuu nnnn uuuu nnnn uuuu nnnn uuuu nnnn uuuu 24 | nnnn uuuu nnnn uuuu nnnn uuuu uuuu nnnn uuuu 25 | uunn uunn uunn uunn uunn nnuu nnuu nnuu nnuu 26 | nunu nunu nunu nunu nunu unun unun unun unun 27 | uiet uiet nste nste nste nste nste nste nste 28 | uisn uisn uisn uisn uisn uisn uisn uisn uisn 29 | snui snui snui snui snui snui snui snui snui 30 | uent uent uent uent uent uent uent uent uent 31 | 32 | 33 | 34 | a, r 35 | aaaa rrrr aaaa rrrr aaaa rrrr aaaa rrrr aaaa 36 | rrrr aaaa rrrr aaaa rrrr aaaa rrrr aaaa rrrr 37 | aarr aarr aarr aarr aarr aarr aarr aarr aarr 38 | rraa rraa rraa rraa rraa rraa rraa rraa rraa 39 | arar arar arar arar arar arar arar arar arar 40 | rara rara rara rara rara rara rara rara rara 41 | aert aert aert aert aert aert aert aert aert 42 | rnau rnau rnau rnau rnau rnau rnau rnau rnau 43 | airs airs airs airs airs airs airs airs airs 44 | auie auie auie auie auie auie auie auie auie 45 | rnst rnst rnst rnst rnst rnst rnst rnst rnst 46 | eiua eiua eiua eiua eiua eiua eiua eiua eiua 47 | tsnr tsnr tsnr tsnr tsnr tsnr tsnr tsnr tsnr 48 | 49 | 50 | 51 | ,, c 52 | ,,,, cccc ,,,, cccc ,,,, cccc ,,,, cccc ,,,, 53 | cccc ,,,, cccc ,,,, cccc ,,,, cccc ,,,, cccc 54 | a,a, a,a, a,a, a,a, a,a, a,a, a,a, a,a, a,a, 55 | e,e, e,e, e,e, e,e, e,e, e,e, e,e, e,e, e,e, 56 | rcrc rcrc rcrc rcrc rcrc rcrc rcrc rcrc rcrc 57 | tctc tctc tctc tctc tctc tctc tctc tctc tctc 58 | auie ,cts nrau ie,c tsnr auie ,cts nrau ie,c 59 | ,eiu ctsn ,eiu ctsn ,eiu ctsn ,eiu ctsn ctsn 60 | 61 | 62 | 63 | 64 | o, v 65 | oooo vvvv oooo vvvv oooo vvvv oooo vvvv oooo 66 | vvvv oooo vvvv oooo vvvv oooo vvvv oooo vvvv 67 | vvoo vvoo vvoo vvoo vvoo vvoo vvoo vvoo vvoo 68 | oovv oovv oovv oovv oovv oovv oovv oovv oovv 69 | uieo uieo uieo uieo uieo uieo uieo uieo uieo 70 | nstv nstv nstv nstv nstv nstv nstv nstv nstv 71 | oavr oavr oavr oavr oavr oavr oavr oavr oavr 72 | vsoi vsoi vsoi vsoi vsoi vsoi vsoi vsoi vsoi 73 | oa,v ansv orsa oa,v ansv orsa oa,v ansv orsa 74 | 75 | 76 | 77 | p, d 78 | pppp dddd pppp dddd pppp dddd pppp dddd pppp 79 | dddd pppp dddd pppp dddd pppp dddd pppp dddd 80 | ppdd ppdd ppdd ppdd ppdd ppdd ppdd ppdd ppdd 81 | ddpp ddpp ddpp ddpp ddpp ddpp ddpp ddpp ddpp 82 | dpdp dpdp dpdp dpdp dpdp dpdp dpdp dpdp dpdp 83 | auop auop auop auop auop auop auop auop auop 84 | rnvd rnvd rnvd rnvd rnvd rnvd rnvd rnvd rnvd 85 | povd povd povd povd povd povd povd povd povd 86 | dvop dvop dvop dvop dvop dvop dvop dvop dvop 87 | opnr doas opnr doas opnr doas opnr doas opnr 88 | 89 | 90 | 91 | é, l 92 | éééé llll éééé llll éééé llll éééé llll éééé 93 | llll éééé llll éééé llll éééé llll éééé llll 94 | ééll ééll ééll ééll ééll ééll ééll ééll ééll 95 | lléé lléé lléé lléé lléé lléé lléé lléé lléé 96 | opéa vdlr opéa vdlr opéa vdlr opéa vdlr opéa 97 | époa ldvr époa ldvr époa ldvr époa ldvr époa 98 | oéau vlrn oéau vlrn oéau vlrn oéau vlrn oéau 99 | 100 | 101 | 102 | b, f 103 | bbbb ffff bbbb ffff bbbb ffff bbbb ffff bbbb 104 | ffff bbbb ffff ffff bbbb ffff ffff bbbb ffff 105 | bbff bbff bbff bbff bbff bbff bbff bbff bbff 106 | ffbb ffbb ffbb ffbb ffbb ffbb ffbb ffbb ffbb 107 | bépo fldv bépo fldv bépo fldv bépo fldv bépo 108 | eoip uéab tvsd nlrf eoip uéab tvsd nlrf eoip 109 | uéab tvsd nlrf eoip uéab tvsd nlrf eoip uéab 110 | 111 | 112 | 113 | ., q 114 | .... qqqq .... qqqq .... qqqq .... qqqq .... 115 | qqqq .... qqqq .... qqqq .... qqqq .... qqqq 116 | ..qq ..qq ..qq ..qq ..qq ..qq ..qq ..qq ..qq 117 | qq.. qq.. qq.. qq.. qq.. qq.. qq.. qq.. qq.. 118 | .eoa qtvr .eoa qtvr .eoa qtvr .eoa qtvr .eoa 119 | au.e rnqt au.e rnqt au.e rnqt au.e rnqt au.e 120 | qtsn .eiu qtsn .eiu qtsn .eiu qtsn .eiu qtsn 121 | qtcs .e,i qtcs .e,i qtcs .e,i qtcs .e,i qtcs 122 | 123 | 124 | 125 | h, g 126 | hhhh gggg hhhh gggg hhhh gggg hhhh gggg hhhh 127 | gggg hhhh gggg hhhh gggg hhhh gggg hhhh gggg 128 | hhgg hhgg hhgg hhgg hhgg hhgg hhgg hhgg hhgg 129 | gghh gghh gghh gghh gghh gghh gghh gghh gghh 130 | ctqg ,e.h ctqg ,e.h ctqg ,e.h ctqg ,e.h ctqg 131 | gqtc h.e, gqtc h.e, gqtc h.e, gqtc h.e, gqtc 132 | gggg hhhh qqqq .... gggg hhhh qqqq .... gggg 133 | 134 | 135 | 136 | y, x 137 | yyyy xxxx yyyy xxxx yyyy xxxx yyyy xxxx yyyy 138 | xxxx yyyy xxxx yyyy xxxx yyyy xxxx yyyy xxxx 139 | yyxx yyxx yyxx yyxx yyxx yyxx yyxx yyxx yyxx 140 | .hyo qgxv .hyo qgxv .hyo qgxv .hyo qgxv .hyo 141 | xlnr yéua xlnr yéua xlnr yéua xlnr yéua xlnr 142 | tqgx e.hy tqgx e.hy tqgx e.hy tqgx e.hy tqgx 143 | 144 | 145 | 146 | à, j 147 | àààà jjjj àààà jjjj àààà jjjj àààà jjjj àààà 148 | jjjj àààà jjjj àààà jjjj àààà jjjj àààà jjjj 149 | ààjj ààjj ààjj ààjj ààjj ààjj ààjj ààjj ààjj 150 | jjàà jjàà jjàà jjàà jjàà jjàà jjàà jjàà jjàà 151 | qgxj .hyà qgxj .hyà qgxj .hyà qgxj .hyà qgxj 152 | qvtj .oeà qvtj .oeà qvtj .oeà qvtj .oeà qvtj 153 | 154 | 155 | 156 | 157 | -------------------------------------------------------------------------------- /layouts/qwerty.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | qwerty 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | -------------------------------------------------------------------------------- /v2/lessons/br.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {5bf56303-d273-4bed-b5c2-ec6cae76ba44} 4 | Português (Brasileiro) 5 | Arquivo de treinamento gerado Wed Aug 24 14:00:33 2005 6 | Preparado por Ari Caldeira 7 | br 8 | 9 | 10 | {9e547b3b-fffd-4311-b8a1-38b0682344c5} 11 | Lesson 1 12 | doas 13 | doa assoo soda roo 14 | os assoo rasas rosado 15 | as soa asas rasa rodados 16 | roo doo doada dada 17 | doso doado doado rodas 18 | rodadas assados roas rodadas 19 | ao os soas assado 20 | roa os asas dados 21 | dosa dadas os rosado 22 | roda doas dos rasos 23 | doado doados assadas 24 | as soda os do ossos 25 | aos soa os dados osso 26 | rasas a rosa dado 27 | roda dosa rosa da 28 | 29 | 30 | {c23893d6-2722-4abe-9448-71e86d3a320d} 31 | Lesson 2 32 | erin 33 | orar rosa redonda assareis 34 | sineiro rodear sendeiro 35 | drenareis risse reine residir 36 | arraso assessor arraso 37 | narrada insidieis assoreais 38 | sairia dosar nadas ordenarei 39 | adindo der enredar 40 | danares densidade sondara 41 | dardes rosas rios arrendares 42 | narrares ondear rireis 43 | arredais adorais arredondes 44 | nanai raiando aderir 45 | ensaios rodei desossar 46 | desanda aires desonrar 47 | insidiaras sonos idoso renderei 48 | 49 | 50 | {387b907c-cafb-4a8c-88e7-7a8aa09fc1d7} 51 | Lesson 3 52 | umúü 53 | ruinosa suassem rearrumamos 54 | amaria remendos onerarem 55 | durmais morreriam redimi 56 | diminuíra anônimos sumários 57 | desune ardem reanimaram 58 | rememorássemos erodíamos mirarmos 59 | dominamos domaram esmurrarão 60 | enamorarem redundando disseminarão 61 | ondeamos desamarrarei maduraras 62 | semearias domarmos arremessará 63 | derramareis aremos drenamos 64 | desarmáreis dourasses desmoronarei 65 | inassíduo miem dourassem 66 | urdissem radioamador minariam 67 | remiam seriaremos irmanareis 68 | 69 | 70 | {3081cae5-bdf4-4cba-88e5-a20c9d2ffa61} 71 | Lesson 4 72 | tc 73 | atináreis cossenos tusso 74 | decretares descartam incidirmos 75 | testaremos decotaria transtornemos 76 | enterremos cimentastes reeditada 77 | desertado corrosão discursa 78 | matutarem trincasses comensuraremos 79 | traumáticos mandacaru escarraras 80 | intimei trucidara sintáticos 81 | arcos arrematará escrituremos 82 | roteado reestruturaremos 83 | encurtáramos destoastes intuitos 84 | atenderíamos desmintas redecorou 85 | consorcia aceitara reestruturemos 86 | encomendaste monumentais atum 87 | cuia costumarás couros 88 | 89 | 90 | {9b6e07e1-7cfc-4a5d-a739-2c9ebf697101} 91 | Lesson 5 92 | lp 93 | temporária deprimido capitulaste 94 | aposentardes estrepásseis idolátricos 95 | poucos estipular implicarmos 96 | ressaltarias implementei antecipemos 97 | transpus deparásseis dopem 98 | inculpásseis síncope apenarão 99 | apartarem predisporíeis tutelamos 100 | precisaste antecipado lindíssimos 101 | empoleiramos simularás soldastes 102 | escaleno contempla depureis 103 | complicassem pululem cálido 104 | empoláramos relance patinam 105 | processeis apenássemos assinalardes 106 | doparemos apresentaríamos 107 | citoplasmáticos assopreis alterna 108 | 109 | 110 | {0919f3be-47a8-47dc-8339-fb6a8677ab1f} 111 | Lesson 6 112 | qv 113 | enevoaram dissipava domináveis 114 | dinamarqueses encontrava escrevesses 115 | dopavam reconquistasse 116 | divertíamos reinvestes recordava 117 | indiviso devorai procrastinávamos 118 | reavalie rareavam povoar 119 | recrimináveis maquilo avassalásseis 120 | prova ovaciones ovacionarão 121 | crivávamos devida elucidáveis 122 | pousáveis mantivéssemos supliciavas 123 | depreciáveis nevai impetravam 124 | viuvaremos envenenávamos intimavam 125 | emplumavas marcava devido 126 | vertidas desentrave desvelos 127 | traquines entreouvissem esquece 128 | 129 | 130 | {4711a583-d075-4e18-a174-e55368523385} 131 | Lesson 7 132 | gh 133 | guitarras alargarei agarradas 134 | plagiares pastagem pigmentarão 135 | salgáveis agasalharas galhardearias 136 | gandaiemos conglomeraremos 137 | desarraigarás horto revogavas 138 | agradecerem gandaiavam agradecei 139 | alinhas espichassem desagregarei 140 | melhorei religaram melhorardes 141 | surgires reintegremos derroga 142 | espalharam compartilháreis 143 | engrossa promulgam nostálgicas 144 | teratológicos pichasses conheceres 145 | empertiga enrugas radiologista 146 | murcháveis chateássemos congelássemos 147 | caliginosas penhorarem senhoritas 148 | 149 | 150 | {aef5e667-9b92-467d-b26b-8d21fc5af377} 151 | Lesson 8 152 | fb 153 | quantifiques desabilitará bacilos 154 | afigures substanciavas sobráramos 155 | efeminareis aferventarias afiliareis 156 | averbavam desequilibrastes 157 | perfumáramos filtrastes ensebaria 158 | difíceis bóie cifrarei vagabundeavas 159 | engolfem naufragueis federiam 160 | distribuí orfanato infamante 161 | fritamos inferirei arrobes 162 | fornecermos bordara desmembraras 163 | chanfráramos branqueiam infligirmos 164 | borralheiros infligiste obstai 165 | afofarás incumbir enforcar 166 | dignificas embotassem subtítulo 167 | cambiava banir prontifiques 168 | 169 | 170 | {1e34f5fe-14e1-45ab-ac2b-e82dc2c0369c} 171 | Lesson 9 172 | çzjx 173 | ajudasse menosprezível experimentem 174 | desembaraçaríamos desmazelados singularizassem 175 | inutilizarem expirares atualizo 176 | debruçassem introduzidas adjudicaras 177 | preguiçáramos moçambicana esquematizaram 178 | exumes zagueiros enxameásseis 179 | expiram sacolejávamos desodorizareis 180 | extinguisse ambições executadas 181 | zuniremos exemplificarei 182 | modernizado exsudará sobrepujarás 183 | exauridas romanizas linearizeis 184 | gestações desajuizados cafezinho 185 | enfezáveis boceja industrializas 186 | liberalizou introduziu mijai 187 | tranqüilize pejorativa espumejem 188 | 189 | 190 | {9373d665-2f24-4036-8386-f28473fbb890} 191 | Lesson 10 192 | kyw 193 | kantismo kantiana darwiniana 194 | kepleriana kantianas 195 | karaokê darwinianas darwiniana 196 | darwinistas darwinismo hardwares 197 | kantiano kepleriana walter 198 | darwinistas keplerianos darwinianos 199 | walter kepleriana kantianas 200 | softwares darwinismos darwinista 201 | keplerianos kantianas softwares 202 | kantiano software kantianos 203 | trotskista kantianas softwares 204 | kantianos darwiniano keplerianos 205 | darwiniano kantianos kepleriano 206 | darwiniano software hardware 207 | darwinianas software trotskistas 208 | 209 | 210 | {c1e3406c-734b-44b0-8472-ee23c5a819af} 211 | Lesson 11 212 | ABCÇDEFGHIJKLMNOPQRSTUVWXYZ 213 | Suécia Reno Emanuela Pernambuco 214 | Canopus Waterloo Etiópia 215 | Denise Anselmo Danúbio 216 | Baleares Bretanha Benedito 217 | Etrúria Adhemar Eliana 218 | Davi Geraldo Lebesgue 219 | Feitosa Gerais Quarup Eurásia 220 | Alsácia Sergipe Paula Alair 221 | Baical Brasil Líbano Belém 222 | Alagoas Epicuro Eva Gonçalves 223 | Agostinho Pacífico Eliane 224 | Caxias Romeu Indochina 225 | URSS Cabral Toronto 226 | Dáfnis Manuel Bangu Sílvio 227 | Tibete Esaú Antonieta 228 | 229 | 230 | 231 | -------------------------------------------------------------------------------- /v2/lessons/cat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {503d3f86-e6e7-4597-88ed-e5d7b6431aba} 4 | Català (autogenerat) 5 | KTouch training file generated Sat Aug 23 21:40:00 2003 6 | Perl Script written by Steinar Theigmann & Håvard Frøiland. 7 | es 8 | 9 | 10 | {fa8accb2-1509-481e-a604-78409207d858} 11 | Lesson 1 12 | jf 13 | ff jfjf fj jjj ff ffjf fjjj jjff ff fjj j fj ff jf fjjj ff j 14 | jjj ff j j ffjjf fj fjj fjjj fjjj j fjjj fjj fff j fjj j jf 15 | jj ff ff ff fj jj jf j ff ffjf fj fj jf fff jf fff jf jf fj 16 | jf ff j jf jjff jfjf fjj jfjf j jf ffj fj jj ffffj jjf fff 17 | fjjj ffjf ff 18 | 19 | 20 | {b481db11-5c84-4e2b-aced-68084192054b} 21 | Lesson 2 22 | kd 23 | jkj k d kd jd jd fdf jkj kd kf jd fd jkj fdj jd dd dd fk fdk 24 | jfkj jd jkj kdj ffk kf ffk jkj jkkdf jd ddfkd fd jd dk dd jd 25 | kdj jfkj dd jd dk jkkdf djd kf fdk ddfkd jkkdf jd jfk dk fk 26 | fk ddfkd fdj jkj k kdj dk fdjd jd djd jkj jk fdj jfkj fd fdj 27 | 28 | 29 | {d6ddebfe-b9e6-4c1c-a2f5-7fa3665018ee} 30 | Lesson 3 31 | laesç 32 | deses sedesses sedada dese efes sedada jaça sella llas sedes 33 | alesses e lassesses desllaçada allejada alleja llaçada fase 34 | alejades ells salses jaç falles sedasses dallades dessal 35 | alfes salda sedal alleja ajaçades fes fesa dallades all faç 36 | lesa e fallades falsada llaçada alleja faldades ells 37 | 38 | 39 | {fcb1c832-53a5-4865-bfc5-cc968d366dc4} 40 | Lesson 4 41 | coss 42 | alfalsos falles caldejades collesses lesos cossesses fosses 43 | sassolada assolda sedes defeco salles assolelles aflacada 44 | focs llocs aclofesses follejada escada escodole escasseja 45 | celles sassolades ells acloca dessolcada solaçada desllaça 46 | esclafada locals flaca cesses assolada deso salla assolades 47 | ecs callols colcada 48 | 49 | 50 | {3f3ca95f-4e0e-402c-a271-7335422a0d93} 51 | Lesson 5 52 | ntàèé 53 | encasant flotà llastesses sotalades faldejat desenastes 54 | tonants sadollà encastés onejants estassant escalena socons 55 | defensessen ajocant entenc desset fosfatant escandesc tascàs 56 | lesenes desdono acanalesses cassanells desencastessen 57 | assestà estacades esfèns telà asson delatessen descloent 58 | tantejat sedàs desolessen assesto descontentats atans 59 | 60 | 61 | {7f18e5b7-2b67-466a-9abe-2c9c6deedfcc} 62 | Lesson 6 63 | ívrr 64 | florada acontentar arrosarà estotara escaloní acatarrares 65 | enverdescades corallejaran versessen desvalorara 66 | centellejara cavallares desfasar afrontares relaten 67 | estavellaren desenrola destacaràs entretocaran afalconarà 68 | enveraven safraneres concerní trastocàs rosos covaré 69 | enrastelle concentrats escodarà alforres casí descolorar 70 | corredores 71 | 72 | 73 | {96c6bfbd-477e-41ac-92ae-e6c959be02be} 74 | Lesson 7 75 | meó 76 | somortes falsejaríem mort amanollí cerví entravessat 77 | escalafons ensofrant retrec masera forjaves comeses 78 | estotjaríem amom reforcéssem recosíem esfèn telecomandam 79 | destorçara atendaves amorteràrem envejàvem avolesa soterrat 80 | entotsolar retardarem asserenament venerarà desossés 81 | malmesclant llefardaríem armoll declamares terçades 82 | 83 | 84 | {c87b80e4-e443-4f29-9e63-9e551bba37c5} 85 | Lesson 8 86 | hrü 87 | rastellesses desenfarcellar forçat anhelant lletreres remara 88 | decoloraràs desarraconara tercers defenestrà electromotor 89 | mofaran amorejar desencrosta torcejarà trontollí encercolàs 90 | esfondrades falcar recomanaríem raso francmaçones 91 | assamarrarem fondejares rondara entrenàrem marradejava 92 | malserví emmerletem amorfes afartesses desacorralen feren 93 | remarcàs assamarrades 94 | 95 | 96 | {a1e6647d-c013-4559-a122-d1cd00de493a} 97 | Lesson 9 98 | goï 99 | rotífer maregés colltorcerà desgravat vagassegés torcejam 100 | conhortades honorares comarcans escassegesses clatellejo 101 | afetgegares deshonrívol lladrons atemoríssem astoraments 102 | remodela moradís tascones realegrarem coratge ondegí 103 | assessoressen correlant enjogassadament escaroten 104 | conversegéssem canonéssem marcegem desgleve desassossego 105 | torcada 106 | 107 | 108 | {78f82515-6cbc-4167-9b13-9d56fc79b681} 109 | Lesson 10 110 | bpl·l 111 | desenrojolaran clamoregí debategar aborronarem encrespàvem 112 | engolfem capejat desemmerletara coralets peonarà llocota 113 | apressats espentejada espantàvem desmesclà bregares embascat 114 | deportesses desborrats celebrador escarpís esparpallats 115 | gansallant premsat abalançaríem solvataràs desempotés 116 | ponderàs angolesos anteposant ensellarà enllaçaves 117 | sorollarem 118 | 119 | 120 | {454a5a4e-9da8-435c-9318-dc1018413b56} 121 | Lesson 11 122 | quny 123 | cadascuna esbrotonàrem enfadaríem falsejàreu endolau 124 | condolgué arrengàveu envellutaves nannaran tondosaré 125 | esbarrejaren duraren mullena atapeísseu negrós embrearan 126 | cananeu esbatuda camandulejàreu pampalluguegesses 127 | empaquetàrem trafeguegesses rafegut descabdellaríeu tufejat 128 | destrenant assuaujares malmetent conjuréssem ultratgésseu 129 | destrempaven gallofejaren desoleu caçaven confessarem 130 | 131 | 132 | {4f5ecdf9-9823-4536-b9b9-a0905586d0da} 133 | Lesson 12 134 | wncc 135 | esbatanésseu ensangonem embargaments contraforadí emmorcarem 136 | acamussades desatrac desencarregara provaven asserenaràs 137 | regentats escopetejà desaccentuarem entrava asserenaran 138 | transsudeu acorralares rascladors ulceraràs desempresonar 139 | octants cèmbal copejament recalçar catenes desenllosàveu 140 | enforno vencereu cessa bastonera promoguessen 141 | 142 | 143 | {b0ef273f-b314-4bf0-949a-536294982028} 144 | Lesson 13 145 | cx 146 | cuafí contrapassar desencerclades escarufejau clatrats 147 | camuflau crestejaríeu entretancarà gronxolàvem dutxaré 148 | penedesc coneguem enxarxant corcares escorçaràs cornésseu 149 | carburares percaçàrem garfesc covers malencertam encomanés 150 | recomencesses caganer corejat falconers afermancéssem educo 151 | malmesclaran escarxàveu entrebancaven cabestro rebec 152 | desencastaren 153 | 154 | 155 | {f369e6c3-9069-4a42-b66e-55be29006384} 156 | Lesson 14 157 | yz 158 | anyenca escanyoten grunya muntanyosos embotzegam zumzejades 159 | enlleganyaren embotzegàs esmorzades complanyesses allenyats 160 | escanyussàs ressenyéssem desentranyau benzofurans 161 | manyucléssem brunzo besunyareu assenyaléssem menyscabaven 162 | desenfonyara embotzegaríeu magatzemera escarcanyada areny 163 | pertanys despanyades estrenyereu embanyat empenyalats 164 | desenyoraràs polzejàveu 165 | 166 | 167 | {f07547a3-54b3-4191-84b6-9f321ed3eea7} 168 | Lesson 15 169 | ABCDEFGHIJKLMNOPQRSTUVWXYZ 170 | Sorells Masos Campdevànol Montenegro Iraq Cabanelles 171 | Camarasa Macra Bompàs Laurentí Ix Salamanca Urgell Armenter 172 | Justa Agatocles Marçà Catral Massalfassar Alda Paulí Anselm 173 | ESE Montlluís Alfafar Sorollera Bolonya Leandre Oxford 174 | Valença Sagàs Esdres Isaura UPV Roger Aneto Corbera Esteve 175 | Bulaternera Conflent 176 | 177 | 178 | 179 | -------------------------------------------------------------------------------- /lessons/bepo.ktouch.xml: -------------------------------------------------------------------------------- 1 | 2 | French (bépo) 3 | 4 | Training file submitted by the Bépo group. 5 | 6 | 7 | 8 | iets 9 | ie ie ie ie ie ie ie ie ts ts ts ts ts ts ts ts ts 10 | is is is is is is is te te te te te te te te is is is 11 | it it it it it it ti ti ti ti st st st st st ts ts ts 12 | ie ts ts ie ie ts ie ei ei st st ie ei tie sit sti eis sei tie 13 | tsi sis tit eis esse esse issi issi essi isse issi essi isse 14 | ses tes set tes tes ses ses set tes set tes 15 | test test test sets sets sets test test sets test sets site site site 16 | site site tise tise tise tise seit seit seit seit seit ties ties ties ties 17 | sites sites sites sites sites sites sites sites este set ses esses 18 | essette site titis sises tises et tes tet titiste es sis est sit siestes 19 | titi sites tettes sieste tisses test estes te tss titistes tests tisse testes 20 | sise tette tee esse tie tees ste tsitsit tise tets si sets teste se 21 | Titi teste ses siestes 22 | Titi teste ses sites et tes sites 23 | Titi se tisse ses sets 24 | 25 | 26 | un 27 | un un un un un nu nu nu nu nu un un un nu nu un nu un nu nu 28 | une une une une nue nue nue une nue une 29 | nie nie nie tin tin tin tin sin sin sin sin net net net net net 30 | nuit nuit nuit nuit nuit nuit nuit tues tues tues tues tues tues tues 31 | nues nues nues nues tine tine tine tine sein sein sein sein sein 32 | sien sien sein sien nues tine sien nies sein sein sien nues tune tine 33 | ennui ennui ensuite ensuite initie initie insiste insiste 34 | tunis tunis tennis tennis tente instit instit issue issue tissu tissu 35 | tente suite suite usine usine tenue tenue testee testee 36 | ennui ensuite entente essieu essuie eu initie insinue insiste instit 37 | intense intente intestin intuite institue insu issue intente 38 | inuit issu nenni nette neuneu ni nie niet nuit nuisent nuisette 39 | nu sein seine sens sent sien sinueuse sinus(ite) situe su 40 | sus est en sus sustentes suie suinte suisse suit(e) sunnite 41 | sut teint teneuse tennis tente tenue testeuse tien tiens tintin tissent 42 | tissu titien tnt tu tue tueuse tune tunis tunisie tunisien tus tut 43 | tutie us use usine ut tutsi tutu un une uni uns 44 | Titien et ses nus 45 | Une sinusite nuit 46 | Un instit en usine 47 | Tunis se situe en tunisie 48 | Intestins et sinus sont tissus 49 | Tintin sent ses intestins et se sustente 50 | Si tu es ni Einstein ni Tintin tu es neuneu 51 | Une instit tunisienne essuie ses tennis en tissu 52 | Einstein et ses testeuses tentent un test in situ 53 | Einstein se tint en suisse, un institut en est issu 54 | Si eisenstein est suisse, Einstein est tutsi et Tintin est inuit 55 | Un tennis intense, et ensuite ta tenue suinte et tes tennis sentent 56 | Ses seins nus et ses nuisettes teintent tes nuits et testent tes sens 57 | Tintin teste ses tenues, un tutu en tissus uni et une tenue tunisienne 58 | Une tueuse suisse en nuisette tente une sieste en une tente tunisienne 59 | Si une usine suisse est nette, une usine suisse ne nie ni ses tests ni ses tunes 60 | 61 | 62 | ar 63 | airain anis anneau annuaires antennes artiste assainir assiette 64 | entarter entasseraient entier Eisenstein ennuieraient enserrera 65 | entrant entreteneuses errant inerte insinuant instaurateurs institut 66 | instruisaient intenteras interne intestine intuitasse irisais irritant 67 | nantis narines narrateur nature nains naissante Nanterre 68 | Neustrie niaiseraient nitrata nitrurassent nuisant raies rainettera 69 | rainure raisin rasaient raseuses rassasierai rassi rassurera ratasse 70 | ratissasses rature Reiser ratatinassent rate ratine 71 | renaissant renier rire ruaient saines saisies sanisette sans Sarasin 72 | sartriennes satanas satinera saturer Saturnin sentirent serinera 73 | statuant statuette stressantes sinistre sinusien Sirius situasse 74 | striait suintante suite surin sursautaient sustenterait susurrer taiseuse 75 | tanisera tanne tante tarissant tartarin tartinassent tartines teintureries 76 | 77 | 78 | bépoè 79 | aéroport anisotrope antéposition antieuropéen antiope antiprotéase apponté 80 | arborèrent attroupées autopersuasion apportée approprié aptéronote 81 | autopsiés biopsie ébène Èbre enrobèrent entreponts entreposés 82 | entropie entubèrent épanoui épateront épépineront éperonné napperon 83 | opprobre paneront paneuropéen néopentane nippones Norbert nubienne 84 | papotassent Papouasie paraprotéine paresseront partitionnaient passeport 85 | passionné patronné pénétration pensionnées pépierons pérennisation 86 | perpétuation péteront pétition périront périurbain péroné pérorait 87 | pétoire pianoté prétoire propriétaire prostitué prostré protubérant protestant 88 | pubère réprobateurs subspontané ténèbres Tibère titubèrent tourbière turbotière 89 | 90 | 91 | cvdl 92 | accueillir accidentelle actualisateur adulatrice 93 | Alsace ancre anticlinal article aviculteur caillasser 94 | calandre calcaire calendaire cardinale cavalcades citadelle 95 | clandestin Claudel clavarder Cleveland cul-de-sac 96 | Deauville divalence lavandiculteur Vailland valide 97 | vandalisa vaudeville vicelarde vieillard Vivaldi 98 | 99 | 100 | yhk 101 | ahaner ahurie anesthesiants euthanasie hantait harasseras hauteurs hennissaient 102 | assyrien enkystait ennuyante enraya essayant essuyait Eysines Henry husky kayakiste 103 | kenyan Keynes nursery rayer rentrayeur ressayera ressuyer Ryukyu seyantes syrienne 104 | trayeuse tuyauta Kyushu aboyée dévirilisant adultératrice accidentalité crédule 105 | cédille acidulé accéléra décervelés déclavette décliver désenclavé antédiluvien 106 | abyssin antéhypophyse apitoyé apyrène Akhenaton Rybinsk rayés réhabitua russophobe 107 | sophiste stéphanois rhytine synoptophore absinthé barysphère hypokinésie Séraphin 108 | siphonné épiphysite hyperboréen néosynéphrine hypertrophié biphasée hypnotisèrent 109 | berbérophone aphérèse barothérapie biosphère photosynthèse antipathies apostrophé 110 | saphène apophyse aérophyte Béthune breakèrent bryophyte antiphonie 111 | 112 | 113 | fwzm 114 | fanzine Fizeau Frantz freezer Tazieff fatwa Stewart 115 | tweeter affaires affreuse western antitussif effarant 116 | enfant entrefer faisans fantaisie affamant affermirez 117 | fatum frimeur massif raffermissant smurfer Weizmann 118 | Westminster enfumerez manifestiez refumerez 119 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /v2/lessons/us.colemak.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {7567adaf-82af-4afc-9d52-9b96ed5ae3a9} 4 | English (USA) Colemak (auto-generated) 5 | 2005-12-15 Shai Coleman, http://colemak.com/ . Public domain. 6 | Modified by Sascha Peilicke 2008-08-07 7 | 8 | us(colemak) 9 | 10 | 11 | {f958ec6d-fd85-460d-93ae-10d60c11d0f2} 12 | Lesson 1 13 | stne 14 | sets tens ten tnt sestet tenet seen nene testee tenets essen 15 | sent senses tenses teens stent sense tent nets tenseness net 16 | tense nests tennessee teen nest tents net tens teen tenets 17 | senses nests nest nets tenet sent sense tenses tennessee essen 18 | tnt tent teens tense nene stent seen 19 | 20 | 21 | {77bddf8f-d165-4ff0-8504-fbb427ace967} 22 | Lesson 2 23 | ri 24 | trite stress sire it entire terse tit sir tire sinner retire 25 | rinse inn tree insist tier rite teeter resin stir siren enter 26 | sitter insert site sneer intern tie inner series steer tin riser 27 | its resent sin rise rent rein iris stern in titter resist 28 | eerie inert street is renter sit nine risen sister serene 29 | stint err snit intent entree nit inter rest tennis re tint 30 | 31 | 32 | {7d2ea912-adb7-400d-850e-dabd1642f2c8} 33 | Lesson 3 34 | ao 35 | retain roe rant ratio toast sort stat tore earn noose teat 36 | eater oat trio tear tone artist nor tattoo seat arise noise 37 | start toss tenant oasis one aria no arson sonata soon rear to 38 | ass soot irate sane onset star root state oar errant resort 39 | tartan sonnet notes eat rotten stain ration arose reason noon 40 | sass retina iota torn stairs iron estate toe are season not 41 | attire tenor innate torso tease arisen note tar snort tarot 42 | 43 | 44 | {56a11eb0-7133-4575-ac8b-fd6ca59d2071} 45 | Lesson 4 46 | dh 47 | odds the hard tooth tide ether raid other rend hire dress has 48 | noted ash aide ha rider hiss soda ninth aside ahead hate toad 49 | shirt shed dare hid this dose horde ashen road shot shod idea 50 | hear hand read rash darts those stand three stood shorn trend 51 | hint dote short darn ah staid her node had heard horn third add 52 | these hot ode hers does heart hated did rhino sash door teeth 53 | rid here sod hoe nerd head hose drier trash tread host date hat 54 | 55 | 56 | {d66b60ce-ca2a-4fd8-8b58-b2ace39f175c} 57 | Lesson 5 58 | pl 59 | toil dip lithe peer oiled spite less phase sold oops spiel slid 60 | patio slat nope slit poet spelt leper hall plaid snoop spill 61 | padre paint dial pin land splat plop pale lead lip pail pond 62 | lope else pan peal stilt shop plot steal pain spool load peter solid 63 | pilot sleep pep lone ale spend lilt past spit lots steep pool 64 | ideal pal snipe slope apple old petal polar let paste slip heist 65 | 66 | 67 | {73ac72a2-4bbf-4143-907b-0ec813bf985a} 68 | Lesson 6 69 | fu 70 | urn file hound flora pupil feast upper fade spud fern spurn froth 71 | huh foal dune sniff rerun furor tune fresh hush shaft lure left 72 | fuss usher thief surf taut fold found sour fire stunt elf letup 73 | fell tout fun tuft puff us foe run fatal flout usurp flap ford 74 | four sinus fated dual roof proud final fur utter fool round furl 75 | flare rude flute self hut stiff foul unit fraud pulp flood route 76 | feed pause fund fetid hurl tofu fear 77 | 78 | 79 | {969e0b74-0c89-41a7-a0b7-bca6a96cfe55} 80 | Lesson 7 81 | wy 82 | wasp way delay hewn fury twit newsy yet whir ray water hurry dawn 83 | holly widen penny widow raspy yawn lily downy dwell wiry sissy warp 84 | snowy furry swift windy hefty wish filly sweat hype sway prawn day 85 | fowl noisy wail surly rowdy wily sweet lowly synod went posy strew 86 | your swine yap whoa paddy weep artsy aware stray wade style woof 87 | sunny stow pray wife days frown wispy ply howl phony awe hyena 88 | endow handy whet yeast stew type word dandy show duly weird tasty newly 89 | 90 | 91 | {5a9dd85b-53bb-43c0-bdef-7ffe87e52524} 92 | Lesson 8 93 | gj 94 | jaw gel jut gape jury night juror giant jade gut jug jaunt gofer 95 | jeer gash just hog jot leg jog jet fight jilt guilt joy ghoul 96 | jewel slog jeans gal jig jail dough jar pang jelly rang jowls 97 | gag jaws jiffy deign junta go jetty grass jaded fang joint gull 98 | ajar dig jest gaffe fjord along join glass jolt groan jolly sting 99 | jeans green jiffy golly jot fig jilt sag jetty gruff jail 100 | sung jaw gushy jeer gala just age jig jaded glee jut tongs jar 101 | god jet grate jade genre sharp jelly tangy proof ajar pager 102 | 103 | 104 | {a5a408ef-8ad3-4ce0-9c57-8b63c1b6d8da} 105 | Lesson 9 106 | mv 107 | envy mount vivid made motor navel moose lever madly levy muddy dive 108 | trump raven harem vain nomad view month hover lemon naval imply valet 109 | gnome oven mean move grove swim vote swamp levee germ vat melee novel 110 | frame eve humid vile swarm verge med five limp haven ramp vet mitt 111 | seven maple mover venom lava yum drive moat wove swam savor maim given 112 | dove dome ivory stomp very tumor sever sham avert loom vigor moldy 113 | movie voter foam vast media devil metal grave muggy jar salve madam 114 | jot vie just saver dream jet foil vow him jumpy aloof shave 115 | 116 | 117 | {9501ce51-0496-463d-ace6-959826f55af1} 118 | Lesson 10 119 | bk 120 | make lamb disk boob smoke skim abort kin blush dorky buns fake snub 121 | pike fable geeky beam eke brown waken butt nook bed oak buddy biker 122 | stake bide dusk been risk belly joke bolt baker skull bore peek buyer 123 | awoke bliss looks babe kiddo sheik debut sky web frisk brief mark 124 | adobe woke jamb bike brisk nuke bulge kiss boa shook bayou okra tuba 125 | flask maybe desk brash week bongo flake jab murky bogus duke rehab 126 | stoke about trike birth maker book bird king ivory bond kiwi veto bill 127 | wok vine point boost just jerky naive promo baggy speak stave tribe 128 | 129 | 130 | {b1f440db-eac2-40ec-978c-f8eabce5ad58} 131 | Lesson 11 132 | qc 133 | circa quote quip cult quail craft quiet cute quash pubic quilt cheap 134 | quirk rice squad colt quay cleft quite music quit croon quits 135 | cab equal curl quick quake manic quad reach quark chord quart pace 136 | quill sack equip track squid sick quack squat poach quota eject 137 | quark speck quail space quip chop quad comic quill squid clef quake 138 | close quota color quash care quick squad each quart pouch quack equip 139 | twice quite black quilt thick quirk sic quits curly quiet coach quit 140 | quote gloss valor champ squat wares joy gasp vat cross equal mown 141 | jest night vote coast quay tweak juicy lingo fit visa quilt sob 142 | threw jar grit info valet clamp quits limbo 143 | 144 | 145 | {d2a2a4f6-53b6-46b9-a1d9-0a4fc2aa1bba} 146 | Lesson 12 147 | zx 148 | exec fuzz boxer buxom glitz exam zeal toxic jeez lax hertz extol prize 149 | text ozone pixie size pixel booze ex zoom crux gauze fax woozy ax tizzy 150 | flux jinx zit oxide froze axle ooze extra dozen exit bozo waxy quiz tax 151 | ritzy ox fizz index axes zinc apex zip exist buzz expo oxen fez tux quick 152 | dizzy proxy detox zebra next doze max waltz affix zest sixty zone exact 153 | zoo excel frizz fox sex blitz mixer gizmo foxy seize mix unzip flex fizzy 154 | six fixed jerk valve whiz relax work equal fuzzy exert quark hoard evil 155 | mixed jolly shook twang dove quota zero annex jibe key ranch regal wavy cozy 156 | 157 | 158 | 159 | -------------------------------------------------------------------------------- /v2/lessons.json: -------------------------------------------------------------------------------- 1 | { 2 | "courses": { 3 | "bg1": { 4 | "title": "Bulgarian (auto-generated)", 5 | "description": "Georgi P. Georgiev\njoro_georgiev2001@magibg.com", 6 | "layouts": [ "bg" ] 7 | }, 8 | "bg2": { 9 | "title": "Bulgarian (auto-generated, long)", 10 | "description": "Georgi P. Georgiev,\njoro_georgiev2001@magibg.com", 11 | "layouts": [ "bg" ] 12 | }, 13 | "br": { 14 | "title": "Português (Brasileiro)", 15 | "description": "Arquivo de treinamento gerado Wed Aug 24 14:00:33 2005\nPreparado por Ari Caldeira", 16 | "layouts": [ "br" ] 17 | }, 18 | "cat": { 19 | "title": "Català (autogenerat)", 20 | "description": "KTouch training file generated Sat Aug 23 21:40:00 2003\nPerl Script written by Steinar Theigmann & Håvard Frøiland.", 21 | "layouts": [ "es" ] 22 | }, 23 | "ch1": { 24 | "title": "Deutsch (CH)", 25 | "description": "Deutscher Kurs für KTouch von Markus Frisch (Modified for Swiss keyboard layout)", 26 | "layouts": [ "ch" ] 27 | }, 28 | "ch2": { 29 | "title": "Deutsch (CH - aus Tipptrainer)", 30 | "description": "German training file\nadapted by Sven Gohlke \nfor ktouch from a training file distributed by\nAndreas Kalbitz \nfor Tipptrainer V0.4 http://www.pingos.schulnetz.org/tipptrainer\ndistributed under the GPL2\nVersion: 0.1 beta (Modified for Swiss keyboard layout)", 31 | "layouts": [ "ch" ] 32 | }, 33 | "de1": { 34 | "title": "Deutsch", 35 | "description": "Deutscher Kurs für KTouch von Markus Frisch ", 36 | "layouts": [ "de" ] 37 | }, 38 | "de2": { 39 | "title": "Deutsch (aus Tipptrainer)", 40 | "description": "German training file\nadapted by Sven Gohlke \nfor ktouch from a training file distributed by\nAndreas Kalbitz \nfor Tipptrainer V0.4 http://www.pingos.schulnetz.org/tipptrainer\ndistributed under the GPL2\nVersion: 0.1 beta", 41 | "layouts": [ "de" ] 42 | }, 43 | "dk1": { 44 | "title": "Dansk", 45 | "description": "Træningsfil udviklet af\nGunther Strube, gstrube@tiscali.dk og\nAnja Lysholm, anjal@danbbs.dk, April-Juli 2002\n\nBaseret på:\n \"Lær maskinskrivning i Folke- og Ungdomsskolen\"\n Kamma Jensen & Jytte Møller\n ISBN 87-17-02200-2\n\nProgram udviklet af Håvard Frøiland", 46 | "layouts": [ "dk" ] 47 | }, 48 | "es1": { 49 | "title": "Español 1 (generado automáticamente)", 50 | "description": "KTouch training file generated Mon Mar 31 17:09:15 2003\nPerl Script written by Steinar Theigmann & Håvard Frøiland.", 51 | "layouts": [ "es", "latam" ] 52 | }, 53 | "es2": { 54 | "title": "Español 2 (generado automáticamente)", 55 | "description": "Fichero KTouch de entrenamiento generado por JRodas (sin tildes)", 56 | "layouts": [ "es", "latam" ] 57 | }, 58 | "es3": { 59 | "title": "Español 3 (generado automáticamente)", 60 | "description": "Fichero KTouch de entrenamiento generado por JRodas (sin tildes)", 61 | "layouts": [ "es", "latam" ] 62 | }, 63 | "es4": { 64 | "title": "Euskara", 65 | "description": "KTouch ariketa sorta Alexander Gabilondok egina.", 66 | "layouts": [ "es" ] 67 | }, 68 | "fr": { 69 | "title": "Français (auto-généré)", 70 | "description": "Trainingfile generated Mon Oct 1 08:14:15 2001\nProgram written by Håvard Frøiland", 71 | "layouts": [ "fr", "fr(afnor)", "be" ] 72 | }, 73 | "fr.bepo": { 74 | "title": "Français (bépo)", 75 | "description": "http://bepo.fr/wiki/Exercices", 76 | "layouts": [ "fr(bepo)" ] 77 | }, 78 | "fr.dvorak": { 79 | "title": "Français (dvorak-fr)", 80 | "description": "Apprentissage du clavier Dvorak-fr\n30 mai 2002 - Francis Leboutte, www.algo.be\n7 décembre 2004 - Passage au format ktouch par Matthieu MOY\n14 septembre 2005 - Passage au format ktouch XML par Stéphane Raimbault", 81 | "layouts": [ "fr(dvorak)" ] 82 | }, 83 | "fr.lafayette": { 84 | "title": "Français (Lafayette)", 85 | "description": "https://qwerty-lafayette.org/", 86 | "layouts": [ "fr(lafayette)", "fr(qwerty42)" ] 87 | }, 88 | "gb": { 89 | "title": "English (auto-generated)", 90 | "description": "KTouch training file generated Sun Mar 11 09:59:58 2007\nPerl Script written by Steinar Theigmann and Håvard Frøiland.", 91 | "layouts": [ "gb" ] 92 | }, 93 | "gr": { 94 | "title": "Ελληνικά", 95 | "description": "KTouch training file generated Fri Jun 14 19:46:08 2002\nPerl Script written by Steinar Theigmann & Håvard Frøiland.", 96 | "layouts": [ "gr" ] 97 | }, 98 | "it": { 99 | "title": "Italiano", 100 | "description": "File di addestramento tratto da «Appunti di informatica\n libera»", 101 | "layouts": [ "it" ] 102 | }, 103 | "it2": { 104 | "title": "Italiano (generata automaticamente)", 105 | "description": "Lezione generata automaticamente usando ktouch-lesson-generator\nda Simone Gaiarin ", 106 | "layouts": [ "it" ] 107 | }, 108 | "no": { 109 | "title": "Norsk", 110 | "description": "KTouch training file generated Sun Apr 22 16:26:01 2007\nPerl Script written by Steinar Theigmann & Håvard Frøiland.\nManually modified in nano and gedit by Jarl Arntzen Wed Dec 1 2010 18:57.\nSeparate levels for keys u, y and z needed", 111 | "layouts": [ "no" ] 112 | }, 113 | "ru.legacy": { 114 | "title": "Русская (Legacy)", 115 | "description": "Created by Oleksiy Gorelov \nKiev, Ukraine\nMon Nov 14, 2005", 116 | "layouts": [ "ru(legacy)" ] 117 | }, 118 | "ru1": { 119 | "title": "Русская (автоматически сгенерированная)", 120 | "description": "Russian training file\nadapted by Chemisov Konstantin \nfrom ktouch-gen utility\n29-08-2005", 121 | "layouts": [ "ru" ] 122 | }, 123 | "ru2": { 124 | "title": "Русская (автоматически сгенерированная, длинная)", 125 | "description": "KTouch training file generated Tue Oct 25 12:51:40 MSD 2005 by Miha Ulanov (mulanov@mail.ru)", 126 | "layouts": [ "ru" ] 127 | }, 128 | "ua": { 129 | "title": "Українська", 130 | "description": "Уроки для ktouch українською.\nСтворено 15 вересня 2006 року.\nАвтор: Янович Борис (Yanovych Borys, borman@univ.kiev.ua)", 131 | "layouts": [ "ua" ] 132 | }, 133 | "us.colemak": { 134 | "title": "English (USA) Colemak (auto-generated)", 135 | "description": "2005-12-15 Shai Coleman, http://colemak.com/ . Public domain.\nModified by Sascha Peilicke 2008-08-07", 136 | "layouts": [ "us(colemak)" ] 137 | }, 138 | "us.dvorak1": { 139 | "title": "Dvorak (auto-generated)", 140 | "description": "Trainingfile genereated Mon Apr 8 18:44:12 2002\nProgram written by Håvard Frøiland", 141 | "layouts": [ "us(dvorak)", "gb(dvorak)" ] 142 | }, 143 | "us.dvorak2": { 144 | "title": "Dvorak - ABCD", 145 | "description": "This ktouch course is taken from Dan Wood's\nA Basic Course in Dvorac (ABCD)\nAvailable at http://www.gigliwood.com/abcd/abcd.html", 146 | "layouts": [ "us(dvorak)" ] 147 | }, 148 | "us.workman": { 149 | "title": "English Workman (auto-generated)", 150 | "description": "Auto-Generated for ordered letters: t h s a n e o i g y c l d r u p q w b j f z x m v k\n\nBy Peter Feigl ", 151 | "layouts": [ "us(workman)" ] 152 | }, 153 | "us": { 154 | "title": "English (US) (auto-generated)", 155 | "description": "KTouch training file generated Sun Mar 11 09:59:58 2007\nPerl Script written by Steinar Theigmann and Håvard Frøiland.", 156 | "layouts": [ "us" ] 157 | } 158 | }, 159 | "layouts": { 160 | "be": "België", 161 | "bg": "Bulgarian", 162 | "br": "Português (Brasileiro)", 163 | "ch": "Deutsch (Schweiz)", 164 | "de": "Deutsch", 165 | "es": "Español", 166 | "fr": "Français", 167 | "fr(afnor)": "Français (afnor)", 168 | "fr(bepo)": "Français (bépo)", 169 | "fr(dvorak)": "Français (dvorak-fr)", 170 | "fr(lafayette)": "Français (Lafayette)", 171 | "fr(qwerty42)": "Français (qwerty42)", 172 | "gb": "English (UK)", 173 | "gb(dvorak)": "English (UK, Dvorak)", 174 | "it": "Italiana", 175 | "latam": "Español (latinoamarican)", 176 | "pt": "Português", 177 | "ru": "Русская", 178 | "ru(legacy)": "Русская (legacy)", 179 | "us": "English (US)", 180 | "us(colemak)": "English (US, Colemak)", 181 | "us(dvorak)": "English (US, Dvorak)", 182 | "us(workman)": "English (US, Workman)" 183 | } 184 | } 185 | -------------------------------------------------------------------------------- /lessons/catalan.ktouch.xml: -------------------------------------------------------------------------------- 1 | 2 | Catalan (auto-generated) 3 | KTouch training file generated Sat Aug 23 21:40:00 2003 4 | Perl Script written by Steinar Theigmann & Håvard Frøiland. 5 | 6 | 7 | 8 | jf 9 | ff jfjf fj jjj ff ffjf 10 | fjjj jjff ff fjj j fj ff 11 | jf fjjj ff j jjj ff j j 12 | ffjjf fj fjj fjjj fjjj j fjjj 13 | fjj fff j fjj j jf jj ff 14 | ff ff fj jj jf j ff ffjf 15 | fj fj jf fff jf fff jf 16 | jf fj jf ff j jf jjff jfjf 17 | fjj jfjf j jf ffj fj jj 18 | ffffj jjf fff fjjj ffjf ff 19 | 20 | 21 | kd 22 | jkj k d kd jd jd fdf jkj 23 | kd kf jd fd jkj fdj jd 24 | dd dd fk fdk jfkj jd jkj 25 | kdj ffk kf ffk jkj jkkdf 26 | jd ddfkd fd jd dk dd jd 27 | kdj jfkj dd jd dk jkkdf 28 | djd kf fdk ddfkd jkkdf jd 29 | jfk dk fk fk ddfkd fdj jkj 30 | k kdj dk fdjd jd djd jkj 31 | jk fdj jfkj fd fdjd k jkkdf 32 | 33 | 34 | laesç 35 | deses sedesses sedada dese 36 | efes sedada jaça sella llas 37 | sedes alesses e lassesses 38 | desllaçada allejada alleja llaçada 39 | fase alejades ells salses 40 | jaç falles sedasses dallades 41 | dessal alfes salda sedal alleja 42 | ajaçades fes fesa dallades all 43 | faç lesa e fallades falsada 44 | llaçada alleja faldades ells 45 | 46 | 47 | coss 48 | alfalsos falles caldejades collesses 49 | lesos cossesses fosses sassolada 50 | assolda sedes defeco salles 51 | assolelles aflacada focs llocs 52 | aclofesses follejada escada escodole 53 | escasseja celles sassolades ells 54 | acloca dessolcada solaçada 55 | desllaça esclafada locals flaca 56 | cesses assolada deso salla 57 | assolades ecs callols colcada 58 | 59 | 60 | ntàèé 61 | encasant flotà llastesses sotalades 62 | faldejat desenastes tonants sadollà 63 | encastés onejants estassant escalena 64 | socons defensessen ajocant 65 | entenc desset fosfatant escandesc 66 | tascàs lesenes desdono acanalesses 67 | cassanells desencastessen assestà 68 | estacades esfèns telà asson delatessen 69 | descloent tantejat sedàs desolessen 70 | assesto descontentats atans 71 | 72 | 73 | ívrr 74 | florada acontentar arrosarà 75 | estotara escaloní acatarrares 76 | enverdescades corallejaran versessen 77 | desvalorara centellejara cavallares 78 | desfasar afrontares relaten estavellaren 79 | desenrola destacaràs entretocaran 80 | afalconarà enveraven safraneres 81 | concerní trastocàs rosos covaré 82 | enrastelle concentrats escodarà 83 | alforres casí descolorar corredores 84 | 85 | 86 | meó 87 | somortes falsejaríem mort amanollí 88 | cerví entravessat escalafons 89 | ensofrant retrec masera forjaves 90 | comeses estotjaríem amom reforcéssem 91 | recosíem esfèn telecomandam destorçara 92 | atendaves amorteràrem envejàvem 93 | avolesa soterrat entotsolar 94 | retardarem asserenament venerarà 95 | desossés malmesclant llefardaríem 96 | armoll declamares terçades 97 | 98 | 99 | hrü 100 | rastellesses desenfarcellar forçat 101 | anhelant lletreres remara decoloraràs 102 | desarraconara tercers defenestrà electromotor 103 | mofaran amorejar desencrosta 104 | torcejarà trontollí encercolàs 105 | esfondrades falcar recomanaríem 106 | raso francmaçones assamarrarem 107 | fondejares rondara entrenàrem marradejava 108 | malserví emmerletem amorfes afartesses 109 | desacorralen feren remarcàs assamarrades 110 | 111 | 112 | goï 113 | rotífer maregés colltorcerà 114 | desgravat vagassegés torcejam 115 | conhortades honorares comarcans 116 | escassegesses clatellejo afetgegares 117 | deshonrívol lladrons atemoríssem 118 | astoraments remodela moradís tascones 119 | realegrarem coratge ondegí assessoressen 120 | correlant enjogassadament escaroten 121 | conversegéssem canonéssem marcegem 122 | desgleve desassossego torcada 123 | 124 | 125 | bpl·l 126 | desenrojolaran clamoregí debategar 127 | aborronarem encrespàvem engolfem 128 | capejat desemmerletara coralets 129 | peonarà llocota apressats espentejada 130 | espantàvem desmesclà bregares embascat 131 | deportesses desborrats celebrador 132 | escarpís esparpallats gansallant 133 | premsat abalançaríem solvataràs 134 | desempotés ponderàs angolesos anteposant 135 | ensellarà enllaçaves sorollarem 136 | 137 | 138 | quny 139 | cadascuna esbrotonàrem enfadaríem 140 | falsejàreu endolau condolgué arrengàveu 141 | envellutaves nannaran tondosaré esbarrejaren 142 | duraren mullena atapeísseu negrós 143 | embrearan cananeu esbatuda camandulejàreu 144 | pampalluguegesses empaquetàrem trafeguegesses 145 | rafegut descabdellaríeu tufejat 146 | destrenant assuaujares malmetent 147 | conjuréssem ultratgésseu destrempaven 148 | gallofejaren desoleu caçaven confessarem 149 | 150 | 151 | wncc 152 | esbatanésseu ensangonem embargaments 153 | contraforadí emmorcarem acamussades 154 | desatrac desencarregara provaven 155 | asserenaràs regentats escopetejà 156 | desaccentuarem entrava asserenaran 157 | transsudeu acorralares rascladors 158 | ulceraràs desempresonar octants 159 | cèmbal copejament recalçar 160 | catenes desenllosàveu enforno 161 | vencereu cessa bastonera promoguessen 162 | 163 | 164 | cx 165 | cuafí contrapassar desencerclades 166 | escarufejau clatrats camuflau crestejaríeu 167 | entretancarà gronxolàvem dutxaré 168 | penedesc coneguem enxarxant corcares 169 | escorçaràs cornésseu carburares 170 | percaçàrem garfesc covers malencertam 171 | encomanés recomencesses caganer 172 | corejat falconers afermancéssem 173 | educo malmesclaran escarxàveu 174 | entrebancaven cabestro rebec desencastaren 175 | 176 | 177 | yz 178 | anyenca escanyoten grunya muntanyosos 179 | embotzegam zumzejades enlleganyaren 180 | embotzegàs esmorzades complanyesses 181 | allenyats escanyussàs ressenyéssem 182 | desentranyau benzofurans manyucléssem 183 | brunzo besunyareu assenyaléssem 184 | menyscabaven desenfonyara embotzegaríeu 185 | magatzemera escarcanyada areny pertanys 186 | despanyades estrenyereu embanyat 187 | empenyalats desenyoraràs polzejàveu 188 | 189 | 190 | ABCDEFGHIJKLMNOPQRSTUVWXYZ 191 | Sorells Masos Campdevànol Montenegro 192 | Iraq Cabanelles Camarasa 193 | Macra Bompàs Laurentí Ix Salamanca 194 | Urgell Armenter Justa Agatocles 195 | Marçà Catral Massalfassar 196 | Alda Paulí Anselm ESE Montlluís 197 | Alfafar Sorollera Bolonya Leandre 198 | Oxford Valença Sagàs Esdres 199 | Isaura UPV Roger Aneto Corbera 200 | Esteve Bulaternera Conflent 201 | 202 | 203 | 204 | -------------------------------------------------------------------------------- /lessons/bulgarian.ktouch.xml: -------------------------------------------------------------------------------- 1 | 2 | Bulgarian (auto-generated) 3 | Georgi P. Georgiev 4 | joro_georgiev2001@magibg.com 5 | 6 | 7 | то 8 | тоо от ооо оотт то о отт 9 | тото от ооо отто оотт отт 10 | от от то от о оото ооооо 11 | тото оо ооо от от отооо тооо 12 | то от тотото тото оотт 13 | то то от то от о о ооо 14 | оото ото от ото тттт отто 15 | тотото ооо то от о отт отооо 16 | оо от оотт оото от о тооо 17 | ото от от тттт тото оо тото 18 | 19 | 20 | на 21 | тона тно тно тантотата тотата 22 | на танто тона ао нотата 23 | нотната тантотата тно на тона 24 | тотата нотно тота тотата тона 25 | оа ан нотното нотна на 26 | ан но нотната тон ао нотна 27 | тнн ат танто нотата тота 28 | тантото оа тотата но нотното 29 | тон на нотно аат ан тота 30 | нотното но тотата ата тно тнн 31 | 32 | 33 | вя 34 | ята вято навято отвяваната 35 | ваната ятата отвятото навявана 36 | овятата отвявано твоят таванното 37 | явя я явна воняно явяваната 38 | вота воняна твоят таванното 39 | вята отвявано таванната овоняват 40 | вято воят вята това воняна 41 | това ято тавата твоята нов 42 | явяваната таван в овятата овя 43 | воняната тавата вонят отавя тавана 44 | 45 | 46 | м, 47 | вмятаното натаманяваното ама мама 48 | намятано отмятам омотан натаманя 49 | отмотаваното момя натаманявам мома 50 | намотаван момяното там анатома 51 | омаяната ма манната момян мотота 52 | мятаната омотаван автомат атомна 53 | натаманявано натаманяваната намотавана 54 | намятам омотавана отмятана намотана 55 | нямам атома маната мотат отмяна 56 | намотавана тамян нямото намотана 57 | 58 | 59 | хш 60 | отмахва яхната ахано хвана охваното 61 | хавата махната махова махаха 62 | отвях шаван шахматното маяха 63 | отмахва хвана ваяха мотаха ханша 64 | яхано хавана отмахнаха манш 65 | мотаха хм аншоа овонявах хаван 66 | ахана шава шах охва намотаваш 67 | момях шахматната яхнат ханша 68 | ошава натаманяваш шават шавах 69 | яхнаха отвяха отмятах отмахнат 70 | 71 | 72 | съ 73 | стаята автохтонът насновавах 74 | стоях внасяна стотна отстоят 75 | осовото атът ставано самотата 76 | монотонността ставно шантавостта новост 77 | въстанато въвонявана насявах осмян 78 | схванато мъстяха насновяха втасаш 79 | втасаха смотават свястта стъмняват 80 | саван стомах внасяната мътя 81 | стомаха масовост анонса съставяна 82 | мътят сто настават асмата 83 | 84 | 85 | пе 86 | навестявахме овехтеех наметнехте 87 | овеса отвеехме патовата спояваш 88 | посвестен вменяемото ахването 89 | несъответствената помпонът нахапеха наспаха 90 | нашепнахте стопен овее отпояхме 91 | помътнях навехнеш пооставана 92 | настояването спънат осеменената помаех 93 | потенета сметаната осеменят сопнете 94 | отнемате пестенето светотатствената 95 | натаманяхме понесат посметеш наставехте 96 | 97 | 98 | ги 99 | опомниш сметни госте помомяния 100 | гонеха вагонна поевтинени неотнимаемости 101 | овехтявания отшивахте нагоите смигнаха 102 | стисни наспиван отавяния шиехте 103 | името снеси понаместиха отмивах 104 | самотния стопанисвания наивна 105 | осенените минахме сгъстявана отстъпите 106 | пъханите снишиха нестесняваните 107 | потегнах аниони пантеисти повествования 108 | стигнех имен попитано напътваните 109 | 110 | 111 | жд 112 | донасян наводняхте съседства 113 | дважди неподпомогнатите спогодяваме 114 | донаждаш динамата доставяният 115 | попадаме наводните подядеше оживея 116 | доматения подписното догонвахте 117 | нападаният поднеси подтиснатото 118 | анодните наяждана поспадаше давенето 119 | подгоням жасминовият напъденият 120 | поожаднявани вдиганият осемдесетата 121 | надминатите подмажехме понажежаването 122 | 123 | 124 | фз 125 | надвзимаше афиш сатанизмът извеяните 126 | зашеметиш нагнездяме изтънявахме 127 | изехтеше намазвам джазов загнездвано 128 | засвоявам позамаехме взаимнозависимото 129 | изстенваното звънтяха нагазваш издяването 130 | позаписаха назоваването запятия 131 | въздигнахте зашеметих антагонизъма 132 | изфинваният затаяваме съвземеш измажеше 133 | заметяхте феномена надвземахте 134 | пантофът заотстъпвахме доизяждани 135 | 136 | 137 | уб 138 | утеснявам изгубвахте възобновете 139 | духвани удавех уяснението сухото 140 | угнихте подухвате напуснато 141 | сапунисам женитбен безумствате 142 | угасяваният базедовата утеснени 143 | сдобиваше ануса битуминозната 144 | бизнесменът обособяваш поиздумвана 145 | изхаби обем депутат тупнахме 146 | усамотяван забвения унижената бесеният 147 | усвоявано опустошавахте изумяването 148 | 149 | 150 | ьч 151 | заточавани епизодични зачитахме 152 | домъчнеехме мечовидните свиньо петчасовия 153 | запечени отсечена посочените 154 | обознача демонични мошеничеството 155 | подчиниш опичат поочупванията 156 | надтичван потичваният изчезнехме 157 | спазматичен надтичана чепатостта 158 | чатнехте зачетената систематична 159 | мошеничестването мачтовото засичаното 160 | мъчняна метафизичното безчинствано 161 | 162 | 163 | цю 164 | отцепница изцапвано нацупените 165 | цевите ценните животописци 166 | спътницата сензационности пациент 167 | цапаният нацепяно цапнехте съсипница 168 | сегментацията изюденото мишници понацепеше 169 | мюфтия ампутации цапваното 170 | навигационно нацупехте дванадесетостенници 171 | интуицията имитации отцепничеството 172 | седмоцветният ценностна нацепяне възнаците 173 | новаците афганистанци воденици 174 | 175 | 176 | йъ 177 | съхнах напъдят пъпчасаме дъгите 178 | спихтосайте съединеното измъчената 179 | възстановяхте буйствуван звънтежът 180 | смайвано сбъдваме мъжовото обайването 181 | невъзпитанието извехтявайте поогъван 182 | настудувайте гъсто отпечатайте назобвай 183 | наемайте заживей сдъвчат загъна 184 | дойда бушменът списъчна папизъма 185 | несъответственият запознавай бездейният 186 | подсъден задънвания пясъчния 187 | 188 | 189 | абвгдежзийклмнопрдтуфхцчшщъьюя 190 | нахапващата смогвам френетична изщипвана 191 | раздаваш изпивайки слъгани сивожълтият 192 | боцваш боядисаше изпразвайки 193 | орлова притиснаха дънерът оковял 194 | многожелана окастрящ стъкмящо убеждаваща 195 | фалирал затвърдеелия понакапван 196 | изпламтяващият изпръсквахте дисквалифицирано 197 | зяло деинициализирал доизслушващо 198 | побиранията умопомрачен изприщваната 199 | сплъстяват пренебрегваната повишила 200 | 201 | 202 | ,. 203 | ,. ж.а мтп, , е, , ,а ,а 204 | ,йб йб, чи, ж.а ж.а йб, 205 | сшй, ,йб ,вь чге, ,вь ,а 206 | ,сзе ,сзе чи, .я ж.а ,а пчг, 207 | сшй, ,йб .шр е, , чге, е, 208 | м,шя ,вь , .шр .шфй .шфй 209 | ,вь ж.а .я .шр ш,нч ж,ет 210 | пчг, ,вь пчг, ж.а .шр ,вь 211 | йб, , ,сзе ю,ъд ,. у, жъ.б 212 | ,вь ф. .шфй у, сшй, ю,ъд 213 | 214 | 215 | 216 | -------------------------------------------------------------------------------- /v2/webtypist.js: -------------------------------------------------------------------------------- 1 | const keylayoutBaseURL = 'https://OneDeadKey.github.io/x-keyboard/layouts'; 2 | 3 | 4 | /****************************************************************************** 5 | * User Interface: layout and lesson selectors 6 | */ 7 | 8 | const ui = { 9 | // keyboard 10 | keyboard: null, // SVG keyboard display 11 | layout: null, // layout selector 12 | shape: null, // geometry selector 13 | hints: null, // hints checkbox 14 | hands: null, // hands diagram 15 | // lesson selector 16 | lesson: null, 17 | level: null, 18 | // timer 19 | accuracy: null, 20 | speed: null, 21 | // typist 22 | txtPrompt: null, 23 | txtInput: null, 24 | }; 25 | for (const id in ui) { 26 | ui[id] = document.getElementById(id); 27 | } 28 | 29 | function populateLayoutSelector(layouts) { 30 | ui.layout.innerHTML = Object.entries(layouts) 31 | .sort(([ id1, name1 ], [ id2, name2 ]) => name1.localeCompare(name2)) 32 | .map(([ key, name ]) => ``) 33 | .join('\n'); 34 | } 35 | 36 | function populateLessonSelector(lessons) { 37 | // all options are hidden by default 38 | ui.lesson.innerHTML = Object.entries(lessons) 39 | .sort(([ k1, d1 ], [ k2, d2 ]) => d1.title.localeCompare(d2.title)) 40 | .map(([ k, d ]) => ``) 41 | .join('\n'); 42 | } 43 | 44 | function populateLevelSelector(xmldoc) { 45 | ui.level.innerHTML = Array.from(xmldoc.getElementsByTagName('lesson')) 46 | .map((node, i) => ``).join('\n'); 49 | } 50 | 51 | function getLevelByIndex(xmldoc, index) { 52 | const trim = /^\s+|\s+$/g; 53 | return index < 0 ? [] : xmldoc.getElementsByTagName('lesson').item(index) 54 | .getElementsByTagName('text').item(0).childNodes[0].nodeValue 55 | .replace(trim, '').split('\n') 56 | .map(line => line.replace(trim, '')); 57 | } 58 | 59 | function enableLessons(lessons) { 60 | // hide all lessons that do not apply to the current keyboard layout 61 | const options = Array.from(ui.lesson.children); 62 | options.forEach(opt => opt.hidden = (lessons.indexOf(opt.value) < 0)); 63 | // hide the lesson selector if it offers no real choices 64 | ui.lesson.hidden = (options.filter(opt => !opt.hidden).length <= 1); 65 | } 66 | 67 | function showHints(on) { 68 | document.body.className = on ? 'hints' : ''; 69 | ui.keyboard.theme = on ? 'hints' : ''; 70 | } 71 | 72 | function highlightKey(keyChar) { 73 | const keys = ui.keyboard.layout.getKeySequence(keyChar); 74 | const key = keys[ui.keyboard.layout.pendingDK ? 1 : 0]; 75 | ui.hands.className = ui.keyboard.showHint(key); 76 | } 77 | 78 | 79 | /****************************************************************************** 80 | * Text Input & Metrics 81 | */ 82 | 83 | const gTypist = (function(window, document, undefined) { 84 | let startDate = null; 85 | let typos = 0; 86 | let text = ''; 87 | 88 | function start() { 89 | ui.txtInput.className = 'active'; 90 | previousValue = ''; 91 | startDate = new Date(); 92 | typos = 0; 93 | } 94 | 95 | function stop() { 96 | if (!text) { 97 | ui.speed.textContent = '0'; 98 | ui.accuracy.textContent = '0'; 99 | return; 100 | } 101 | const elapsed = (new Date() - startDate) / 1000; 102 | ui.speed.textContent = Math.round(text.length * 60 / elapsed); 103 | ui.accuracy.textContent = typos; 104 | startDate = null; // back to idle state 105 | } 106 | 107 | function newPrompt() { // display a new exercise 108 | text = state.prompt; 109 | if (!text) { 110 | return; 111 | } 112 | ui.txtPrompt.value = text; 113 | ui.txtInput.className = ''; 114 | ui.txtInput.value = ''; 115 | ui.txtInput.focus(); 116 | highlightKey(text.substr(0, 1)); 117 | } 118 | 119 | // required to work around a Chrome bug, see the `keyup` listener below 120 | const pressedKeys = {}; 121 | 122 | // highlight keyboard keys and emulate the selected layout 123 | ui.txtInput.onkeydown = (event) => { 124 | pressedKeys[event.code] = true; 125 | const pos = event.target.value.length; 126 | const value = ui.keyboard.keyDown(event); 127 | if (value) { 128 | if (!startDate) { // first char => start the timer 129 | start(); 130 | } 131 | if (value === text.substr(pos, 1)) { 132 | // correct key: append it to the text input 133 | event.target.value += value; 134 | if (pos < text.length - 1) { 135 | highlightKey(text.substr(pos + 1, 1)); 136 | } else { // finished 137 | stop(); 138 | setTimeout(newPrompt, 500); 139 | } 140 | } else { 141 | // typo: increment the counter and flash the text input 142 | typos++; 143 | event.target.className = 'error'; 144 | setTimeout(() => event.target.className = 'active', 250); 145 | } 146 | } else if (ui.keyboard.layout.pendingDK) { // dead key 147 | highlightKey(text.substr(pos, 1)); 148 | } else if (event.code === 'Enter') { // restart on 149 | event.target.value = ''; 150 | startDate = null; 151 | } else if (event.code === 'Tab') { // focus the layout selector 152 | setTimeout(() => document.getElementById('layout').focus(), 100); 153 | } else { 154 | return true; // don't intercept special keys or key shortcuts 155 | } 156 | return false; // event has been consumed, stop propagation 157 | }; 158 | ui.txtInput.addEventListener('keyup', (event) => { 159 | if (pressedKeys[event.code]) { // expected behavior 160 | ui.keyboard.keyUp(event); 161 | delete pressedKeys[event.code]; 162 | } else { 163 | /** 164 | * We got a `keyup` event for a key that did not trigger any `keydown` 165 | * event first: this is a known bug with "real" dead keys on Chrome. 166 | * As a workaround, emulate a keydown + keyup. This introduces some lag, 167 | * which can result in a typo (especially when the "real" dead key is used 168 | * for an emulated dead key) -- but there's not much else we can do. 169 | */ 170 | event.target.value += ui.keyboard.keyDown(event); 171 | setTimeout(() => ui.keyboard.keyUp(event), 100); 172 | } 173 | }); 174 | 175 | // init 176 | ui.txtPrompt.value = ''; 177 | ui.txtInput.value = ''; 178 | ui.txtInput.focus(); 179 | 180 | return { newPrompt }; 181 | })(this, document); 182 | 183 | 184 | /****************************************************************************** 185 | * State Management 186 | */ 187 | 188 | class State { 189 | constructor(lessons, layouts) { 190 | this._layouts = layouts; // read-only 191 | this._lessons = lessons; // read-only 192 | this._layoutID = ''; 193 | this._lessonID = ''; 194 | this._lessonXML = null; 195 | this._level = -1; 196 | this._levelData = []; 197 | this._shape = ''; 198 | this._hints = false; 199 | } 200 | 201 | /** 202 | * keyboard layout & options 203 | */ 204 | 205 | get layout() { return this._layoutID; } 206 | set layout(value) { 207 | if (value === this._layoutID) { 208 | return; 209 | } 210 | ui.layout.value = value; 211 | this._layoutID = value; 212 | fetch(`${keylayoutBaseURL}/${value}.json`) 213 | .then(response => response.json()) 214 | .then(data => { 215 | ui.keyboard.setKeyboardLayout(data.keymap, data.deadkeys, 216 | data.geometry.replace('ergo', 'iso')); 217 | window.location.hash = value; 218 | // enable lessons that are compatible with this layout, hide all others 219 | const suitableLessons = Object.entries(this._lessons) 220 | .filter(([ id, data ]) => data.layouts.indexOf(value) >= 0) 221 | .map(([ id, data ]) => id); 222 | enableLessons(suitableLessons); 223 | if (suitableLessons.indexOf(ui.lesson.value) < 0) { 224 | this.lesson = suitableLessons[0]; 225 | } 226 | }); 227 | } 228 | 229 | get geometry() { return this._geometry; } 230 | set geometry(value) { 231 | ui.keyboard.geometry = value; 232 | this._geometry = value; 233 | } 234 | 235 | get hints() { return this._hints; } 236 | set hints(value) { 237 | ui.hints.checked = value; 238 | this._hints = value; 239 | showHints(value); 240 | } 241 | 242 | /** 243 | * lesson & level selectors 244 | */ 245 | 246 | get lesson() { return this._lessonID; } 247 | set lesson(value) { 248 | if (value === this._lessonID) { 249 | return; 250 | } 251 | ui.lesson.value = value; 252 | ui.level.innerHTML = ''; 253 | this._lessonID = value; 254 | this.level = -1; 255 | fetch(`./lessons/${value}.xml`) 256 | .then(response => response.text()) 257 | .then(str => (new DOMParser()).parseFromString(str, 'text/xml')) 258 | .then(xmldoc => { 259 | populateLevelSelector(xmldoc); 260 | this._lessonXML = xmldoc; 261 | this.level = 0; 262 | }); 263 | } 264 | 265 | get level() { return this._level; } 266 | set level(value) { 267 | if (value === this._level) { 268 | return; 269 | } 270 | ui.level.selectedIndex = value; 271 | this._level = value; 272 | this._levelData = getLevelByIndex(this._lessonXML, this._level); 273 | gTypist.newPrompt(); 274 | } 275 | 276 | get prompt() { 277 | return this._levelData[Math.floor(Math.random() * this._levelData.length)]; 278 | } 279 | } 280 | 281 | let state = {}; 282 | fetch(`./lessons.json`) 283 | .then(response => response.json()) 284 | .then(data => { 285 | state = new State(data.courses, data.layouts); 286 | populateLessonSelector(data.courses); 287 | populateLayoutSelector(data.layouts); 288 | state.layout = window.location.hash.substr(1) || 'us'; 289 | state.hints = true; 290 | }); 291 | 292 | window.addEventListener('hashchange', () => { 293 | state.layout = window.location.hash.substr(1); 294 | }); 295 | 296 | ui.lesson.addEventListener('change', e => state.lesson = e.target.value); 297 | ui.level .addEventListener('change', e => state.level = e.target.value); 298 | ui.layout.addEventListener('change', e => state.layout = e.target.value); 299 | ui.shape .addEventListener('change', e => state.geometry = e.target.value); 300 | ui.hints .addEventListener('change', e => state.hints = e.target.checked); 301 | -------------------------------------------------------------------------------- /v2/lessons/es3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {d3b65af1-749b-42aa-8fa8-b378c1859b2c} 4 | Español 3 (generado automáticamente) 5 | Fichero KTouch de entrenamiento generado por JRodas (sin tildes) 6 | es 7 | 8 | 9 | {6431938f-7ecf-4d2d-9a54-5990a7f985f1} 10 | asdf jklñ 11 | asdfjklñ 12 | jjjj kkkk llll ññññ aaaa ssss dddd ffff ññññ llll kkkk jjjj 13 | ffff dddd ssss aaaa ññññ aaaa llll ssss kkkk dddd jjjj ffff 14 | aajj sskk ddll ffññ jjaa kkss lldd ññff ññaa llss kkdd jjff 15 | ajfñ ñjfa adjl sfkñ ñkfs ljfa sldk ldks ljñk dafs fljs ajñf 16 | 17 | 18 | {da83bf52-5b16-4e75-9620-b056bceec181} 19 | gh 20 | gh 21 | jhfg khdg lhsg ñhag khdg lhsg ñhag lhsg ñhah lhsg khdg jhfg 22 | fgjh dgkh sglh agñh dgkh sglh agñh sglh agñh sglh dgkh fgjh 23 | jfkf lfñf ajsj djfj ahsh dhdh fhñg lgkg jggh gñhg ahgl hsgh 24 | ghhg gahñ gshl gdhk gfhj ghhg gñha glhs gkhd gjhf ghhg hagñ 25 | 26 | 27 | {21132860-254d-4100-b15b-ee1777af4356} 28 | gh (continuación) 29 | 30 | añfj lsjf asdf ñlkj fghj jhgf jffj kdña hñga ñsdk jald dfsa 31 | fkjñ añfj lsjf asdf ñlkj fghj jhgf jffj kdña hñga ñsdk jald 32 | dfsa fkjñ faldas salas galas asas dañas gasas hadas gafas 33 | añadas kaka falsas faldas salas galas asas dañas gasas hadas 34 | gafas añadas kaka falsas 35 | 36 | 37 | {9ce6e9db-ef95-4b50-9f0d-807dcc6d2777} 38 | ei 39 | ei 40 | dede kiki dede kiki kike dedi edik iked ieie dile kela kiele 41 | dede kiki dede kiki kike dedi edik iked ieie dile kela kiele 42 | seña feas ella jefa dije leña fija sale liga diga siña diles 43 | seña feas ella jefa dije leña fija sale liga diga siña diles 44 | 45 | 46 | {a6d7c3ee-4199-4f46-9802-38a8d7abc58c} 47 | ru 48 | ru 49 | frfr juju rfrf ujuj jiku fedr hugr kudr arra ñuñu jura raul 50 | frfr juju rfrf ujuj jiku fedr hugr kudr arra ñuñu jura raul 51 | el dia real jugar es desear ligar federal huele real fregar 52 | el dia real jugar es desear ligar federal huele real fregar 53 | 54 | 55 | {1e3530bc-46e9-408b-b395-aae5b162a013} 56 | ru (continuación I) 57 | 58 | se gira la grada real juras señala a su llegada de algas 59 | redes de seda riñas de fresas fijar la huesa deja huella 60 | leña de esa fea llegada se rie el federal de feria usada 61 | sera girada suele regar asegura fuleras fria se la juega 62 | 63 | 64 | {6f56e3bb-0556-4753-902c-6d454a3d7453} 65 | ru (continuación II) 66 | 67 | fijese la juerga de las fieras salidas de filas de seda 68 | llegar a esas fresas hallar sueñas la leña de ella huela 69 | fijese la juerga de las fieras salidas de filas de seda 70 | llegar a esas fresas hallar sueñas la leña de ella huela 71 | 72 | 73 | {e3eb38e7-66a3-4672-b045-9363df9420fa} 74 | ty 75 | ty 76 | hyju gtfr hyju gtfr rtuy yhtg tryu frgt juhy frtg juyh 77 | hyju gtfr hyju gtfr rtuy yhtg tryu frgt juhy frtg juyh 78 | tierra de yeguas tratas ya ate el yate hay hasta latas 79 | tierra de yeguas tratas ya ate el yate hay hasta latas 80 | 81 | 82 | {ebe04553-81e5-47a9-8571-c7d29dc026f5} 83 | wo 84 | wo 85 | swlo losw olws wsol aswe ñloi wert oiuy loik swed rews uiol 86 | swlo losw olws wsol aswe ñloi wert oiuy loik swed rews uiol 87 | los loros oigo os digo yo todos los rios doy trigo gorritos 88 | where who well white what will water wet widows whether way 89 | 90 | 91 | {1ad0b8fb-a3fd-471e-90a4-c0718c4d1edc} 92 | wo (continuación I) 93 | 94 | lodos y tierra sale de alli grietas al año ha salido al 95 | suelo 96 | julio y frio es raro igual tu sales y el rojo se araña orujo 97 | lodos y tierra sale de alli grietas al año ha salido al 98 | suelo 99 | julio y frio es raro igual tu sales y el rojo se araña orujo 100 | 101 | 102 | {33ddbfa9-3a7a-4fad-bdcd-1f2767c45d16} 103 | wo (continuación II) 104 | 105 | grado hueso orujo jirafa west yes oro año jugada listo 106 | sales huido 107 | destilo helados agua de grifo loros rojos juguetes dolido 108 | tratado 109 | grado hueso orujo jirafa west yes oro año jugada listo 110 | sales huido 111 | destilo helados agua de grifo loros rojos juguetes dolido 112 | tratado 113 | 114 | 115 | {23384d44-74c1-4ebf-b25d-f6e1c0dc0fec} 116 | qp 117 | qp 118 | aqñp aqñp qapñ qapñ wqop opwq qwpo poqw uqrp rpqu qpqp 119 | aqñp aqñp qapñ qapñ wqop opwq qwpo poqw uqrp rpqu qpqp 120 | quedate pesado quita poquito truquillo paquete pequeño 121 | quepa quijote porque piquillo peludo que quiere pepito 122 | 123 | 124 | {c4ec32a3-33f3-425e-956c-7b023ece13b7} 125 | c, 126 | c, 127 | dddd kkkk ddcc kk,, dcdc k,k, cc,, c,c, dck, k,dc ck,d c,c, 128 | dddd kkkk ddcc kk,, dcdc k,k, cc,, c,c, dck, k,dc ck,d c,c, 129 | casita, caca, coco, caceria, capote, caduco, laca, loco, 130 | careta, placer, pocilgas, catarro, picadura, caretas, 131 | estacada, caracas 132 | 133 | 134 | {17d14ff2-6093-4064-819b-96c0db4250a5} 135 | c, (continuación) 136 | 137 | el chico de ayer casi se cae por la escalera caracolera, 138 | el que quiera coger la fruta que se acerque hasta aqui, 139 | te puedes creer que se casa despues de correr las carreras, 140 | juega asi y perderas casi todo, es lo que ha dicho el 141 | cartero, 142 | 143 | 144 | {8e171360-4e63-460d-b767-48c17d04c60f} 145 | vm 146 | vm 147 | fvjm, fvjm, fvjm, jhmk, fgvf, vrvr, mumu, mhmh, vgvg, vemi, 148 | oevi, fvjm, fvjm, fvjm, jhmk, fgvf, vrvr, mumu, mhmh, vgvg, 149 | vemi, oevi, vale mas tarde pero correcto que a la hora y 150 | mal, decia victoria, vale mas tarde pero correcto que a la 151 | hora y mal, decia victoria, 152 | 153 | 154 | {3fac62bd-3a7d-4cbf-882d-075e01e011dd} 155 | vm (continuación) 156 | 157 | los verdes prados de la ria, piedras al puerto, va hacia 158 | vigo, cada dia se escapa, gira al rio y compra mas pescado, 159 | tu lo ves, el papagayo de tu vida, el lorito te da su 160 | comida, vigila la tia, cometa por el cielo, motoristas de 161 | viaje, todo sigue igual de mal, 162 | 163 | 164 | {c5e1a7a3-c82b-451d-ac2f-0a4ec06ec8a4} 165 | bn 166 | bn 167 | fgjh fvjm fgbg jmjn fbfb jnjn frvb jumn jhmn fgvb bnbn nbnb 168 | fgjh fvjm fgbg jmjn fbfb jnjn frvb jumn jhmn fgvb bnbn nbnb 169 | bueno bonito barato nuevo bello baboso nueces narices beben 170 | nana nunca barril cana nivel bonito veneno borrego vino iba 171 | 172 | 173 | {528f0272-bcf0-45ef-90e8-8bbc305cd538} 174 | bn (continuación) 175 | 176 | dime con quien andas y te dire quien eres, 177 | no por mucho madrugar amanece mas pronto, 178 | se coge antes al mentiroso que al cojo, 179 | a caballo regalado no le mires el dentado, 180 | perro ladrador poco mordedor 181 | 182 | 183 | {05c029d2-5499-42e9-98b5-20de2ff7c4aa} 184 | x. 185 | x. 186 | ssss xxxx llll .... xxxx .... vvvv mmmm cccc ,,,, xxxx .... 187 | ssxx ll.. ddcc kk,, ffvv jjmm xcvb .,mn bvcx nm,. xx.. x.x. 188 | ssxx ll.. ddcc kk,, ffvv jjmm xcvb .,mn bvcx nm,. xx.. x.x. 189 | extra. exito. excelente. textos. excesivo. eximir. examen. 190 | extra. exito. excelente. textos. excesivo. eximir. examen. 191 | 192 | 193 | {a2f1f373-c68e-4736-a494-e07e8c4a0e68} 194 | z- 195 | z- 196 | zzzz ---- zzzz ---- zz-- zz-- z-z- aazz ññ-- azaz ñ-ñ- 197 | zeta-zorro-zona-cazo-zig-zag-pozo-trozo-maiz-mozo-raiz- 198 | soez-audaz-capaz-veloz-veraz-zaragoza-zaire-zanahoria- 199 | zeta-zorro-zona-cazo-zig-zag-pozo-trozo-maiz-mozo-raiz- 200 | soez-audaz-capaz-veloz-veraz-zaragoza-zaire-zanahoria- 201 | 202 | 203 | {dae945da-1f4d-4ab2-bb66-5d5139654b36} 204 | z- (continuación I) 205 | 206 | sopa vichyssoise - preparacion - cocer los ingredientes en 207 | el caldo de pollo hasta que esten suaves. dejar enfriar y 208 | colocarlos en el vaso de la batidora, tapar y conectar a 209 | velocidad alta hasta quedar la mezcla tersa. sin parar el 210 | motor, agregar la crema de leche por la abertura de la tapa 211 | y mezclar en velocidad media hasta quedar bien incorporada. 212 | 213 | 214 | {2ad21ec7-ae78-43dc-8b55-5b8761c5a242} 215 | z- (continuación II) 216 | 217 | solo se que no se nada - socrates - filosofo griego. 218 | viviendo todo falta, muriendo todo sobra - lope de vega - 219 | escritor. llegue, vi y venci - julio cesar - emperador 220 | romano. guarda a tu amigo bajo la llave de tu propia vida - 221 | shakespeare hay solo una diferencia entre un loco y yo. yo 222 | no estoy loco - dali 223 | 224 | 225 | {81253408-4c7d-44e8-aef3-924dda4412b7} 226 | Mayúsculas y minúsculas (sin tildes) 1/3 227 | ASDFJKLÑGHEIRUTYWOQPCVMBNXZ 228 | Pelota. Dibujo. Sarten. Titulo. Camion. Aventura. Elefante. 229 | Oculto. Cancion. Mentira. Queso. Lado. Ruego. Paloma. Este. 230 | Marzo. Zarzuela. Pocos. Rustico. Navidades. Salon. Interes. 231 | Valiente. Yegua. Trabajador. Balon. Demasiado. Opuesto. El. 232 | Comida. Justicia. Real. Hundido. Zocalo. Kilo. Cuerpo. Haz. 233 | 234 | 235 | {5f42e8ea-bd71-4a82-be87-b4943827cb21} 236 | Mayúsculas y minúsculas (sin tildes) 2/3 237 | 238 | Receta de Espaguetis a la Carbonara - Cocer los espaguetis 239 | en agua salada. Rallar el queso. Trocear los ajos y el 240 | tocino. En una sarten freir los ajos y el tocino. En una 241 | fuente batir los huevos con la nata liquida, el queso, la 242 | sal y la pimienta. Incorporar a la sarten la pasta y 243 | remover. Colocar la pasta en la fuente y mezclarla con el 244 | huevo batido, removiendolo todo. 245 | 246 | 247 | {684a36e6-6e59-4e64-aeb9-a002a97bf95c} 248 | Mayúsculas y minúsculas (sin tildes) 3/3 249 | 250 | Unos dicen lo que saben, y otros saben lo que dicen. Se 251 | arrepiente uno de lo que dice, pero no de lo que piensa. Lo 252 | que hoy siente tu corazon, mañana lo entendera tu cabeza. 253 | Una gota de alegria es un charco de esperanza. Vive tu vida 254 | como te gustaria que tus hijos vivieran la suya. 255 | 256 | 257 | 258 | -------------------------------------------------------------------------------- /v2/lessons/es2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {57aba0ba-2169-4c22-8550-5033d7dd6289} 4 | Español 2 (generado automáticamente) 5 | Fichero KTouch de entrenamiento generado por JRodas (sin tildes) 6 | es 7 | 8 | 9 | {33542536-8b69-4000-a04c-0474e626a4b5} 10 | Lesson 1 11 | jf 12 | fff f fjf f j jj f jjf f fjj j j ff jf f j jj jf f jj j jjf 13 | ffjf jj fjj jjj j f fff f f f jjj jfjfj j j f jf jf jf j jjj 14 | jff f ffjf fjf ff fj fff f fjf j jf jj f j jfjfj jj jff jjf 15 | f ff ff ff fj fjf f j jjf jff f jjj jf jjff j f jjf jf jf 16 | jjff f j ff jjj fjf ffj f f ffjf f fff ffj jjff jjj jjf fj f 17 | fj jj j jf jf ffjf f jfjfj ff f j ff jf ffj j ffj ff ff jj f 18 | j jjff jf jff f jf j jff jff jfjfj jjf jff jf jjjf jj j ffjf 19 | jjf ff ff fj fjj jf ff ff ff fj ff ff jjjf jf fjf jff fjj f 20 | j fj fj f jj fff fjj jjff jj jj f jf jf 21 | 22 | 23 | {0f377315-0047-4536-ad8f-bb55b6162b5b} 24 | Lesson 2 25 | dk 26 | fkk fdfj kj djj fdjkf fkk k dkf djk jk ddf d kdk fdfj kj dd 27 | dd k djj fkk df fdj k d d df jk d dkf dd fdfdk dd djk ddf dd 28 | df d jk jk d fkk d k dd fdfdk dfk jk k k k df ddf jk kdd dd 29 | dd jk djj k df dkf d d df df k fdjkf d fdfj kdk fdjkf d d dd 30 | dd djk jk djk fdj dd d d djj k dd d ddf d jk dd d djk fdfj 31 | kdd df fdfj djk fkk fdfdk dd djk dd d fdfdk kdd fdjkf djk dd 32 | dfk kj k df kdk fkk d k d kj d k fdfj k df djk fdfdk dd d jk 33 | dkf jk dd d dd djk kdk d dfk kdd kdd fdfj fdfj jk fdfj ddf 34 | df kdk k ddf d d d d df ddf df dfk 35 | 36 | 37 | {4485dcf0-8b4b-4408-ac31-f64d6aa588a5} 38 | Lesson 3 39 | sl 40 | fsjs ks jlk ss jlk l l skdf ksl ld kl skdf flfs ls ksl flfs 41 | ss jlk ds ld ld ksl sj l kks sj l ls ksl ksl ksl s flfs fs l 42 | l fsjs ldf sj ld l s ksl ld ds kks ldf ss flfs l ksl kl ks 43 | fs ks ksl l ldf jsd ldf ks ksl ksl ld l l flfs ksl kl ds sj 44 | s kks l kl s l skdf l sj kl kl fsjs l kl fsjs l flfs ksl sj 45 | fs kks l ksl s ss fks jlk ks sj jsd ks kl fks ks fs sdd s kl 46 | ld ls jlk sj kl l kl jlk ss ks flfs l s ds ld ss ksl flfs l 47 | s ld jsd s flfs kfjjs ls l kks ss jlk s sj ksl ld ldf kfjjs 48 | sdd skdf ksl l l kl sj jlk l fsjs fs sj 49 | 50 | 51 | {e87f022c-f6a3-47f5-a690-7712b6be3423} 52 | Lesson 4 53 | 54 | rasa sañ dad alfalfa ja saldada daña lañas alfalf salda aja 55 | alfad ka da ralla rallas fas daña lasa rasa fa jala ralla 56 | aja laña dañad rasad lasaña salada añada alaf las falda jas 57 | jas asa salad la asa alfalfa fall rafa sallas alf alfalfa 58 | sajas daña fas ajad salla jaldad saja jald sala faj jala 59 | jalda asad a jala salad ajad sal dañ rasad aja rallas sallad 60 | laña laña saj sals salad jasad alfalf rasada dañada saj añad 61 | alfa sald jald sallad fas sajada alafa alfa rajad rasad 62 | rallas ajad rañ rasa jal jalad alfa faj rasa ajas sallas 63 | jasa alfalfa fallas lasa 64 | 65 | 66 | {fcc5d4cb-405c-4686-ada6-78ef2e276a41} 67 | Lesson 5 68 | gh 69 | gafad alaga llagad halaga alagad agall hadad ahaja rasgas 70 | alhaja ga haga agasajas alagas llaga laga alhajada rasga 71 | hallas alagada alhaja h hadad haldada ha agasaja llaga 72 | salgad sag h halaga haga halla hala gafa hallad hada hada 73 | halla halagad alg hala gaga salgad gafas llaga ahajas alag 74 | alhajada gafad hag halla salg hallada rasgad hala llaga haga 75 | salga agasajad halla ga ahajada halla halagas ahaja halla 76 | alhaja halad hala agasajad salgada hallada gag gafa hada 77 | halagas ga agasaja ha hal ga gaga ga llaga salga salga halla 78 | alfaha hala hala gafa had ahajada agasaja salga hal llag 79 | hada ha gafad alhaja 80 | 81 | 82 | {2d5d1597-04e4-4730-b2d8-f0943b5fb235} 83 | Lesson 6 84 | ru 85 | agradada jura arrasar haldud hallars jasarl u gradua gras 86 | garaj sallara fraguar jura rulara sudas dañar jasarl aguja 87 | fardad durar garua graf urd farra alufr ara rul agarrafar 88 | arauja ladra arda saldarl rugada sarda usara alfarda 89 | susurrada fulgura dragad alargarl jara dudarl ladrara 90 | jaharrad alargad alufrad rajada surja rafa alarga sud guarr 91 | sulfurar alfard agarrada grull jalara alufrada jugad jarrarl 92 | sud guard fraguad lardad sufrag augurada galfar ladra rulad 93 | hurgada asurar grada dudar augur agarrad drus saldar raj 94 | sudas ruj garla guardada agrada dragad rusa gafara gras 95 | alarga aladr hallull 96 | 97 | 98 | {f31d24c7-2d8f-4b9c-b4f8-00314ac14a82} 99 | Lesson 7 100 | ei 101 | desarrugare desgalgad desligara rifada desladrill 102 | desafilarai rehilarei frisasei idee arralarai aferrad 103 | desgajada desafile agrediesei flagelas alea añejase lisia 104 | errara helasei añalej diseñars de rierai aliñad jaharrase 105 | lui serrarai añadidura diere lujuriase desalagas huell 106 | aguerri rehila ilega haldeas rarefag ferias afielare 107 | esgarrare desasida desdeñad legradura allegad asesarei 108 | glaseada fallarei fresarei lijase ardale lider leudase 109 | agaler resisad fuese aleja añejas desgalgue risueña reelij 110 | afilarla ilegalida irrigara asesarai galguea fiasei gaguear 111 | desdedid desdediere aligad guadale asegurara desgrasa 112 | agarrase ajease desahij arrugasei alifa 113 | 114 | 115 | {4d784865-2b02-4b78-a86d-2600cc6439a3} 116 | Lesson 8 117 | wo 118 | ahojarei lado ahogader solas guardafuego solea dolaj soliese 119 | sosaña regaro dolarei ahusado esfolad esfola floreado 120 | ajordad drogara disgregado desdore irrogarai glosasei osead 121 | asesorarla señora deshijaro relso ladrillador hediero 122 | desarrollarl dosill adorara añosa idalio irrogar holease 123 | desfogasei soleada floreara rojo fosasei dolos sirio 124 | desaforare dolada fragorosa asoldadado hojear desasosegara 125 | ojerudo guiaro idilio señoree surgido sagrario aguardo 126 | jorrado gaseos filosofa solidaria orillara rolase guardos 127 | flore duradero resolgasei olluel fiord guro sao rollad 128 | difusora daro forjars desloarai esfog redirigiro aludido 129 | asaro 130 | 131 | 132 | {4a00d311-04f8-4d05-bb93-e23b64d9aa6d} 133 | Lesson 9 134 | qp 135 | plagad salpresa desapolillada perfilarla pipiara repasarl 136 | porrear esquilad apalpado presida apiojare espaldead epilog 137 | garapiñar pesqu apiolado sarpullier reposarai apurriera 138 | persuadiro horquillar espiguill paralelasei depil despilar 139 | serpearei propalara asurque despojaro espurree querell 140 | prediga perdier aporrada herpi desquijerase repollo 141 | espurriada apulgarase poso adjudique reparada propalarl 142 | felpill pelagr repela asquee disipa preludiase pilil 143 | preludiase pilil predispusiero sopeado apegare 144 | pardea apersoga aplegase refresqu espulgarle 145 | refresqu espulgarle reprodujese pujase pode pararo depurarl 146 | gripale replegasei hisopare aperas desaparroquiar golpead 147 | desesperad depila desquijerase 148 | 149 | 150 | {2d092cb2-a8a4-4152-a884-2ae8e6c86fa0} 151 | Lesson 10 152 | ty 153 | afluyere turrarai desatesoras relate yuguet tesorera 154 | apostrofad estirajada soportasei atrofia quilatasei ayudars 155 | sulfatast alpargatase pipiritaña territorialida derrotase 156 | atesoras sarguet sopetea restañart desoye trasfregad 157 | llorastei desapretarla reparti espeta atortuja disfrutad 158 | atortola perquiristei sepultas puerto soterrase taladrast 159 | otilada tiritañ paseast detestara desprestigiare trafaga 160 | faltars pautarai desparte estiraja apretadore petare 161 | garrapatea desatora taraj lastrarl siti desatraillare 162 | ritualida desposte alteado teatro sepultarl tol layase 163 | aturdido todopoderoso fustigara festeje rehartas traspaleare 164 | jitare parlotearo pastelea supeditaro 165 | 166 | 167 | {3dab6eaa-01dd-4f2d-aa0c-c32d6fa7006d} 168 | Lesson 11 169 | cn 170 | etan interrogaro tenga hiñiend descarnarei desnatand retruen 171 | costeada encascotasei desencintarai contratorpeder fandulari 172 | propagand litagant enclaustraro afinastei aoca tundiese 173 | tendies cerraje tundido enfurruñastei licenciosa engatillada 174 | triache encaparo anticipart escualide incluirl sorprenda 175 | derrocar diligenciada capado inquietarle engalanarl 176 | periclitas estenografiarl coronare apañuscar plantee 177 | escachifollasei pretendient preordinare pircare oponente 178 | oficiara recodificad desasociar escoscado alanceas najerin 179 | caracol trucare contonea trafic enguitarras caucasian 180 | enjicase ordenarl coheredero engruese atentad ostentada 181 | capciosidade sayalesc ocaleada licuas deshilacha enseñarl 182 | 183 | 184 | {5f4b67ad-d071-4a66-9d56-306b31b8be42} 185 | Lesson 12 186 | xm 187 | mamancon despeamient mencionarno expense transmontad 188 | encarnamiento dirimiere dormitare molender tempesteastei 189 | extincione empale exagerara ampolleta empand monitorice 190 | adaptarm mandilej eccema dormiente contaminara existe motear 191 | almacigar excluido oxigenada mordisquearei inmodestament 192 | encaramare moque toxicase mitigatori encalquemo formalic 193 | extrema inextenso desenjalma chinchamo desmarc lamine 194 | refrigeraremo remojara desgomare expida comandara reclamare 195 | morar matuteasei remola mortinat mirad amamantas remira 196 | empotrase descimente expulsarlo despapamo amenorare 197 | masificara exijamo pantomim intermediado lampasei merdellona 198 | asemillad expoli empampas manc trasmigrand enumera 199 | 200 | 201 | {36153cfa-e293-441f-88c6-95618579baf3} 202 | Lesson 13 203 | zvb 204 | rebombare bramase evitars desdoblarei simpatizarai 205 | hiperbolizara camelaba excavarlo mahometizado sazonabai 206 | generalizarl pelambrast picariza descolmabai pasterizad 207 | vallabai pertenezca encubase empizarrado empiez embica vise 208 | trastabillemo abrotoñe entrampab enlozanara balado 209 | portazgara madreclav curve bombilla clausulaba desguinzand 210 | esborregue abarbech boyud barbitaheñ dispensaba 211 | desapuntalaba mayorazga descabritemo embuchas promovist 212 | aclarezc sobrebarrist iliberritan verseara embragand objetiv 213 | poltroniz magnetizase cargabai emborrice ajobada escobase 214 | resguardabai embalsa resquebraremo desvirgast cable devora 215 | saleaba aguzader vinculase socava 216 | 217 | 218 | {5c535e04-1a73-44f8-b484-f91291707ee8} 219 | Lesson 14 220 | ABCDEFGHIJKLMNÑOPQRSTUVWXYZ 221 | roñarei apureño desensañaremo boñiguera sobreañadiremo 222 | acabañe empañaba EPRO añorarei sosañaba cañoneaba liñuelo 223 | constreñida reñidora ensoñast encabruñar guiñas teñid 224 | encañonado empequeñecimiento sañudo recuña añadirl ensueña 225 | desespañolizastei barbiteñid desespañolizad descarcañale 226 | desempuñarai desentrañars valdepeñera aguileñ albañila 227 | lodoño enmarañe rascuñab desroña embuñegara otoñara 228 | encarroñarai rapiñastei roñ muñequeare pañoler añilab 229 | reacuñad domeñas desliña reacuña desmoñemo desengaña 230 | acompañaba añorarl sobreañade desenseña apuñeab desmoñand 231 | sobreañade Isidra portañola desmoñand señor maricastaña 232 | 233 | 234 | 235 | -------------------------------------------------------------------------------- /v2/lessons/ir.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {78bc47c4-e91c-42e2-b0b2-5c9055bc1d9e} 4 | فارسی 5 | نگارنده: سید‌علی‌اکبر نجفیان 6 | رایانامه: s.ali.najafian@chmail.ir 7 | 8 | ir 9 | 10 | 11 | {965ca5ea-8743-4de4-8228-f3f5c4ccc46d} 12 | حروف «ب» و «ن» 13 | بن 14 | ب بب ن نن بن نب نن بن بن بن نب نن بب ب ن نب ن ب ن ن ن ننن ب 15 | ببب نن نبب ببن بنبنب نب بنب نبب ننب نبن بنن ببن بن ب بب ب ن 16 | بنبنب بنبن بن بنب بننن بببنب نبنب ننبب نبنن ننبب نننن ب بببب 17 | ن ب نب بن نب بن بب بنن بن بنن نببب نب نب بنب نبنب نب نبنب 18 | نبن نبن نبنبنب نب نب نبببن نننننب ننبنبب ننبن نبن نبنب نب ن 19 | ن ب ننن بب بنب نبن ببب ن نن ننن نبن نبنببن ببننبب ب بب ببب ب 20 | ن ن نن نن نننن بنبن ن نب نبن بن ن بن بنب ن ب ب ب ن بن ب بن ن 21 | ب بب ن نن بن نب نن بن بن بن نب نن بب ب ن نب ن ب ب ب بن بن نن 22 | ببب نن نبب ببن بنبنب نب بنب نبب ننب نبن بنن ببن بن ن ن ب ن ب 23 | نبنب بنبن بن بنب بننن بببنب نبنب ننبب نبنن ننبب نننن بببب 24 | ن ب نب بن نب بن بب بنن بن بنن نببب نب نب بنب نبنب نب نبنب 25 | نبن نبن نبنبنب نب نب نبببن نننننب ننبنبب ننبن نبن نبنب نب ن 26 | ن ب ننن بب بنب نبن ببب ن نن ننن نبن نبنببن ببننبب ب بب ببب ب 27 | ن ن نن نن نننن بنبن ن نب نبن بن ن بن بنب ن ب ب ب ن بن ب بن ن 28 | 29 | 30 | {9d271ec1-364d-4d50-aedd-3bf461187199} 31 | حروف «م» و «ی» 32 | می 33 | م ی ن ب بن می مب من ین یمیبن یبم یبی یبم یبن نیم نمی 34 | منی نمی نبی بنی منب بنب بین بینم نمیب نینم نیبم نی نی 35 | نیم بیم میم مین مینی مینب یبنم ینبم نیمب بمینب بنیمبم 36 | منیم مینم مینیمم مین نمین نمنم نمبی بینمی نمبیم میب نی 37 | نبینمبینم نبینم ببینم ننینی نمیمنی نمی نمن من نمن مینمم میین 38 | یم م ی ن ب بن می مب من ین یمیبن یبم یبی یبم یبن نیم نمی 39 | منی نمی نبی بنی منب بنب بین بینم نمیب نینم نیبم نی نی 40 | نیم بیم میم مین مینی مینب یبنم ینبم نیمب بمینب بنیمبم 41 | منیم مینم مینیمم مین نمین نمنم نمبی بینمی نمبیم میب نی 42 | 43 | 44 | {a52cd981-483f-421d-a148-18d8953b5cdc} 45 | حروف «ت» و «الف» و «لام» 46 | تال 47 | ا ت ل تا لا ات ال تل لت لم من تم ال لا با بی نم من تی 48 | تب بت نت ما مت بی با بن نم منیت تیم تنم تاتنی منت مناتاب متن 49 | مات تات تان مان بان ناب یاب یام مای بن نم منیت تیم تن 50 | بیتا تالی بالا مانا مانی بانی تامی تاتی تنبل تایی مالی 51 | بیتاب نایاب تالاب بیابان یالان مالان بیات ا لا ات ال تل ل 52 | تابان باتلان تالاب بیلان بانیلیم نیلی لبتاب باتام تاتان نان 53 | بابا تیلان میلان ماتابی ماتیلا ا ت ل تا لا ات ال تل لت لم م 54 | ن تم ال لا با بی نم من تی انیلیم نیلی لبتاب باتام ت 55 | تب بت نت ما مت بی با بن نم منیت تیم تنم تاتنی منت مناتاب متن 56 | مات تات تان مان بان ناب یاب یام مای تایی مالی 57 | بیتا تالی بالا مانا مانی بانی تامی تاتی تنبل تایی مالی 58 | بیتاب نایاب تالاب بیابان یالان مالان بیات 59 | تابان باتلان تالاب بیلان بانیلیم نیلی لبتاب باتام تاتان نان 60 | 61 | 62 | 63 | {32c3e07c-e246-4160-9a0b-c52db1b2c86b} 64 | حروف «کاف» و «گاف» و «سین» و «میم» 65 | کگسش 66 | ک گ س ش گم سگ سن شب اس بس تگ مگ بگ گی سی مس سم سا با نا نم 67 | نس نش شن تش شس شک کش مش شل گل کل شب شت تش تم تک تا نا لا ما 68 | سل مل یک یاس سای تاس گام شمس شام ماگ لاگ ساک کام کسی منگ کال 69 | لاک لاممیم مین لیگ این بین باگ کاش ماش ماگ مال بام لام تام 70 | لات کات باب شیب شین بیش بیگ بیم بیک یکی کام کسی منگ کال 71 | تمام کالا بالا لاکی کاشی شاکی شالی باشی ناتمام نالان شانگسی 72 | ک گ س ش گم سگ سن شب اس بس تگ مگ بگ گی سی مس سم سا با نا نم 73 | نس نش شن تش شس شک کش مش شل گل کل شب شت تش تم تک تا نا لا ما 74 | سل مل یک یاس سای تاس گام شمس شام ماگ لاگ ساک کام کسی منگ کال 75 | لاک لاممیم مین لیگ این بین باگ کاش ماش ماگ مال بام لام تام 76 | لات کات باب شیب شین بیش بیگ بیم بیک یکی کام کسی منگ کال 77 | تمام کالا بالا لاکی کاشی شاکی شانک شکاک کاشکی کاشان 78 | 79 | 80 | {75a8b5e7-8e25-48fc-97e8-11331ab73d48} 81 | حروف «پ» و «ر» 82 | پر 83 | پ ر پ پ پ ر ررر رپ رپ پر پرک رک کر پاک کاپ پا را اراک سبک پا 84 | پالایش سیر پلنگ گرگ تاپ لامپ بیپ پیپ پیر ریش میش کیش پاک رک 85 | پالان پشتک شپش پیر شیر رانا مار رنگ گاری پس سپس پرش شاپرک شی 86 | نیش پیش پیر ریپ ریکا ریسمان ایمان بیکار کارگر شال پالایش پای 87 | شیر پینگ پیشگام پیشران پیش شب گپ کپر پتک پیمان پیکان پریشان 88 | نگارش گاری کاپیتان رکاب را پار پرش پایان باران بالا بناب بنر 89 | رنگ سیر سپر تن پرمنگنات پیر پنیر ماست شیر نیش پیش پیر ریپ 90 | ریکا ریسمان ایمان بیکار کارگر شال پالایش پاینگارش گاری 91 | کاپیتان رکاب را پار پرش پایان باران بالا بناب بنر 92 | رنگ سیر سپر تن پرمنگنات پیر پنیر ماستشیر پینگ پیشگام پیشران 93 | پیش شب گپ کپر پتک پیمان پیکان پریشان 94 | 95 | 96 | {e88bd7b9-4908-48c5-b5ac-fb6d6adf9209} 97 | حروف «دال» و «ذال» و «عین» و «غین» 98 | دذعغ 99 | د دد دع دغ دماغ ذ ع ععع عغا غ غ غد غذا غم دم داغ عام معما مع 100 | معذلک غار دیر عرب پدال عالم غالب ذغال ذیل ذکر تذکر ذاکر غالب 101 | اغلب معمم عمدا عار رعایت غربی شغال شاغل عذاب غیر غمگسار عابد 102 | د دد دع دغ دماغ ذ ع ععع عغا غ غ غد غذا غم دم داغ عام معما مع 103 | معذلک غار دیر عرب پدال عالم غالب ذغال ذیل ذکر تذکر ذاکر غالب 104 | اغلب معمم عمدا عار رعایت غربی شغال شاغل عذاب غیر غمگسار عابد 105 | معبد تعبد تبعید تعلیم تیپ تیر معبد تعبد تبعید تعلیم تیپ تیر 106 | د دد دع دغ دماغ ذ ع ععع عغا غ غ غد غذا غم دم داغ عام معما مع 107 | شاغل عذاب غیر غمگسار عابد معذلک غار دیر عرب پدال عالم 108 | 109 | 110 | {5b0e4747-3278-478d-8d1a-9254f481e275} 111 | حروف «ف» و «قاف» و «ه» و «خ» 112 | فهقخ 113 | ف فق قف ففف ق ه هق هف فه خ خخ خه خف هق خق قه قخ هخفق خب خاک 114 | خام خاک کاخ فاق فراق غربت هاله ها هم مهم همیشه فافا هفت فراق 115 | قاشق خام مخ خه هخ قاف شرق فرهنگ فخر فاخر افتخار خیار 116 | ف فق قف ففف ق ه هق هف فه خ خخ خه خف هق خق قه قخ هخفق خب خاک 117 | خام خاک کاخ فاق فراق غربت هاله ها هم مهم همیشه فافا هفت فراق 118 | قاشق خام مخ خه هخ قاف شرق فرهنگ فخر فاخر افتخار خیار 119 | ف فق قف ففف ق ه هق هف فه خ خخ خه خف هق خق قه قخ هخفق خب خاک 120 | خام خاک کاخ فاق فراق غربت هاله ها هم مهم همیشه فافا هفت فراق 121 | قاشق خام مخ خه هخ قاف شرق فرهنگ فخر فاخر افتخار خیار 122 | نسکافه شیر نان پنیر فقیر فقر نادان کابل گاری گاف فاق خیار 123 | سالاد ذرت مکر پیر برنا دل تام تمام بیم ترس مرسی سیر شیر 124 | می دهکده قلم کاغذ شمایل مرغ گاری دعای خیر نیکی دانایی خاکی 125 | خرمن نان گندم سیل مسیل معین عالم تعلیم تعمیم سرعت سنگین 126 | شیرین شربت شرم فرفه ذاله بهای دانش دانای عالم گاری سلام 127 | 128 | 129 | 130 | {7eef7560-b5df-49a3-9421-348803098363} 131 | حروف «ح» و «ث» و «واو» و «ز» 132 | حثوز 133 | هور زمان زیره ریز زیر زرنگ حک حکم حاکم حلال حال حامل ثاقب ثح 134 | ثار مثل و وو حر هور زمان زیره ریز زیر زرنگ حک حکم حاکم حلال 135 | حال حامل ثاقب ثحار مثل و وو حر هور زمان زیره ریز زیر زرنگ 136 | حک حکم حاکم حلال حال حامل ثاقب ثح ثار زرنگ حک حکم حاکم حلال 137 | مثل و وو حر هور زمان زیره ریز زیر زرنگ حک حکم حاکم حلال 138 | حال حامل ثاقب ثح حسود حمیم حمید حمد ستایش ویرایش ویران باد 139 | ثار مثل و وو حر حریت منیت ثاقب ساقه ثقفی ویتامین ث ثور 140 | ثمین ثمن ثمانی ثامن الایمه خرس حرف حروف محروم حلیم حمید حامد 141 | محمود شحات انور عباس شاه حروف اشاره حلیم معلوم الحال حوالی 142 | حول محموله محدث اردبیلی محسوس احساس سوزش سوزان شعله شرور 143 | مخلوع حادث حدیق یا محول الحول و الاحوال یا مدبر الیل و 144 | النهار حول حالنا الی احسن الحال هفت و هشت و نه و ده و یازده 145 | حادثه ی دل خراش مرحوم حالا حم حروف هنگفت ذال ذرت مکزیکی زیور 146 | زنبور زیگزاک زامیاد زیرانداز زندان زندگی دنیا زوزه ی گرگ 147 | 148 | 149 | 150 | {1eca4387-4d7c-4e36-b4e0-9a3aeda1c9e1} 151 | حروف «چ» و «صاد» و «ط» و «جیم» 152 | چصطج 153 | است طومار چرا چاک چموش چاه چگونه حصار صمصام طیاره طهران چ 154 | چیست چطوری چی چه طره طناب طاها طهمینه ط جنگ جیمبو جیم جام جم 155 | جمال جمیل چنگ به ریسمان الهی و حبل المتین ایجاز و اطناب طویل 156 | طولانی ترین تونل ایران صادرات نفت بانک صادرات ایران جنگ سرد 157 | جنگ جهانی اول و جنگ جهانی دوم چانه زنی عملیات مرصاد قوم ثمود 158 | طاهر اطاله ی کلام باطل کردن گذرنامه موش چموش صمصام صابون 159 | طرح و لایحه فرهنگ قراین فرقان تورات انجیل چریکی سریش چمچمال 160 | جام جم چرا چگونه به چه طریق 161 | 162 | 163 | {abee2be6-98f4-44c2-a6bb-0bb5979d0fd9} 164 | حروف «آ» و «ض» و «ظ» و «ژ» 165 | آضظژ 166 | آ آب آهنگ ضبط ضرب ضامن ضمان ضابط ضابطه ض ژیلا ژانر ژله پژ 167 | پژمرده آبان و آذر و اردیبهشت آبونمان آلام آلاله آزداده ژاله 168 | ظن و گمان ژیلا پژمان ظهر روز عاشورا ظهور بروز طاهر طالب طلبه 169 | اظهار ظهور امام زمان عج تعالی فرجه مظلوم ظالم ضاله ژرف 170 | آمار کبودر آهنگ آبشار نیاگارا آقا ظلم ضل و ضلالت ذلیل 171 | آ آب آهنگ ضبط ضرب ضامن ضمان ضابط ضابطه ض ژیلا ژانر ژله پژ 172 | پژمرده آبان و آذر و اردیبهشت آبونمان آلام آلاله آزداده ژاله 173 | ظن و گمان ژیلا پژمان ظهر روز عاشورا ظهور بروز طاهر طالب طلبه 174 | اظهار ظهور امام زمان عج تعالی فرجه مظلوم ظالم ضاله ژرف 175 | آمار کبودر آهنگ آبشار نیاگارا آقا ظلم ضل و ضلالت ذلیل 176 | 177 | 178 | 179 | {ff07a5f5-2e29-4c4b-862c-1bf2bc4517e9} 180 | اولین تمرین 181 | به نام خداوند جان و خرد کزین اندیشه برتر نگذرد 182 | 183 | به نام خداوند جان و خرد 184 | کزین اندیشه برتر نگذرد 185 | خداوند نام و خداوند جای 186 | خداوند روزی ده رهنمای 187 | خداوند کیوان و گردان سپهر 188 | فروزنده‌ی ماه و ناهید و مهر 189 | 190 | 191 | 192 | 193 | {946ceb60-b86d-419e-b461-64d71a6251c4} 194 | دومین تمرین 195 | دومین متن طولانی 196 | این دومین متن طولانی است که با یکدیگر تمرین می کنیم یکی از 197 | اصول اصلی و اساسی تایپ کردن در زبان فارسی استفاده از نیم 198 | فاصله است تفاوت نیم فاصله با فاصله در زمانی آشکار می شود که 199 | در یک برنامه ی واژه پرداز مشغول تایپ یک متن هستید اینجاست که 200 | زمانی که به انتهای خط میرسید و به واژه ای همچون می شود بر می 201 | خورید می بینید که حروف می در انتهای خط باقی مانده و قسمت 202 | ماند به سطر بعدی انتقال می یابد بنابراین اگر به جای فاصله از 203 | نیم فاصله برای جدا کردن قسمت های مختلف یک واژه ی مرکب بهره 204 | ببرید این مشکل حل می شود ضمن اینکه مزیت دیگر استفاده از نیم 205 | فاصله زیبایی و خوانایی بهتر می شود و در برنامه های واژه پرداز 206 | تعداد واژگان به درستی محاسبه و نمایش داده می شود چرا که وجود 207 | نیم فاصله بین دو حرف آن ها را به عنوان یک کلمه واحد معرفی می 208 | کند و نه دو واژه ی جداگانه ضمن اینکه هنگام پرش در برنامه های 209 | مذکور با استفاده از کلیدهای میانبر آلت و کلیدهای جهت نمای 210 | چهارگانه از روی حرف مرکب فقط یکبار پرش می کند پس در جمله ی 211 | بعدی نیم فاصله را با هم تمرین می کنیم به این صورت که به جای 212 | اسپیس از ترکیب شیفت و اسپیس بین حروف فاصله ایجاد می کنیم تا 213 | تفاوت کلمات مرکب از کلمات جداگانه مشخص شود بسم الله شروع می 214 | کنیم 215 | خط زیر با اسپیس تنها حروف از هم جدا شده اند 216 | برنامه ها آن ها می نویسم می خوانم می ریزم خانه ی ارواج 217 | اما در خط زیر با استفاده از نیم فاصله حروف را جدا می کنیم 218 | می‌خوانم می‌نویسم کارخانه‌ی عمو شجاع آن‌ها آن ها می‌روم 219 | امیدوارم این درس مفید بوده باشد 220 | التماس دعا 221 | سید علی اکبر نجفیان اردیبهشت نود و دو 222 | 223 | 224 | {ca45e828-f761-4a16-8548-f320ac645413} 225 | آموزش اصول واژه نگاری و تمرین علائم نگارشی حین تمرین 226 | :؟ئ!. 227 | مهم ترین علائم نگارشی در این درس تمرین می‌شوند که عبارتند از 228 | دو نقطه که از ترکیب شیفت و ک علامت گذاری می شود. 229 | دومین علامت نگارشی . نقطه است که جایگاه آن در صفحه کلید مشخص 230 | است.سومین علامت پرسشی است که آن هم از ترکیب شیفت و علامت ؟ 231 | انگلیسی روی صفحه کلید علامت گذاری می شود.بعدی علامت تعجب است 232 | که از ترکیب شیفت و عدد یک علامت گذاری می شود!!! 233 | یک حرف مهم دیگر هم در فارسی اهمیت دارد که در واژگانی مانند 234 | مسئول دیده می شود که از ترکیب شیفت و س علامت گذاری می شود 235 | حالا این علائم را تمرین و تکرار می‌ کنیم 236 | ؟:!.ئ ؟؟؟‌! !!!......ئئئئئ؟ئ!!..؟؟؟.؟.؟.؟.!!!و.!ئئ!؟!ئ؟ئ 237 | 238 | 239 | 240 | -------------------------------------------------------------------------------- /v2/lessons/us.workman.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {a9688e24-25db-4d99-aaf1-b79d7cd274e6} 4 | English Workman (auto-generated) 5 | Auto-Generated for ordered letters: t h s a n e o i g y c l d r u p q w b j f z x m v k 6 | 7 | By Peter Feigl <craven@gmx.net> 8 | us(workman) 9 | 10 | 11 | 415 12 | Lesson 1 - t, h, s and a 13 | tThHsSaA 14 | tats Sat Sasha at hats stat stash Sta ah that ash stats sash 15 | hast shah aha Shasta Tasha ta a Ha sat Ta hath Haas as aah 16 | ha has shahs asst tat hat hash sass Tass 17 | 18 | 19 | 416 20 | Lesson 2 - n 21 | nN 22 | Nathan Attn assn Shana tn tan Hannah Santana Nathans Astana 23 | Hahn Thant Anshan naans ants attn Sana Han Santa Ann Thanh 24 | sans San n nth Shanna tans Nan ans an Stan Hans nah than 25 | Anna ant Sn naan Ana Satan Hanna 26 | 27 | 28 | 417 29 | Lesson 3 - e 30 | eE 31 | tenet Sennett antenna neatens tannest Tennesseans set settee 32 | sets tsetses Tenn senna sent heaths tensest tsetse hates 33 | entente assesses ea teen Ste nets ten Sean ashen testates 34 | sheathes assent seethe Ne senses thee stets aesthetes sens 35 | hashes sea nest ashes sheets heat tenant tenths see these 36 | tenets stashes neatness tee setts hen theses hastens 37 | 38 | 39 | 418 40 | Lesson 4 - o 41 | oO 42 | notate tenons Seton soothe noses atones ethos hoses tosses 43 | season Soto tenon hottest soon hoes toes oat oneness shot 44 | shoot onto oases aeons snot hots shoe Otto note Eaton hoe 45 | anon stoat nos toots not stetson ohs oaths toast steno Tahoe 46 | stetsons atone notates Aston Hosts hosanna snoots Tonto 47 | tonnes Shoshone Noah soothes to anons tho shone Sassoon 48 | 49 | 50 | 419 51 | Lesson 5 - i 52 | iI 53 | assists ionise hesitations insentient sensitise anoint 54 | tatties shinnies teeniest astatine nonentities hesitation 55 | intestate sin initiates nine Nation noisiest anoints 56 | shininess ion inattention hist hastiest satiates his 57 | insensate assistant notion in shits intestines insistent 58 | satanists sienna tattooist sits tattooists Anastasia 59 | hastiness i inanest 60 | 61 | 62 | 420 63 | Lesson 6 - g 64 | gG 65 | anaesthetising highness tangs geese Genghis stinting 66 | negotiating sight goings thong sighting antagonises hoisting 67 | hogtie sinning egotists siting snog attesting gnat eating 68 | Songhai gashes negotiations snagging highest hotting goatee 69 | snag sheathings gin gang shinning engine against tighten 70 | shenanigan egos stagnation sightseeing eighteens agitations 71 | 72 | 73 | 421 74 | Lesson 7 - y 75 | yY 76 | annoys hyenas Synge Anthony yessing yeas Ginny ahoy antsy 77 | sashays shinnying gooey Hay sashay sissy stingy synthesise 78 | testy yeti stagy Hays shy nosegay Tyson insanity anythings 79 | Nagoya hey hasty essays sassy saggy stony eyesight sayings 80 | nasty yeast Nagy saying yens ashy essay asininity gayness 81 | gaiety sashaying titty Getty annoying Sonya easygoing Taney 82 | says 83 | 84 | 85 | 422 86 | Lesson 8 - c 87 | cC 88 | canon connotation chinos cosh yogic Sec canoe citing 89 | sciences accenting Nicene cheesing toothache conses cohesion 90 | instincts necessity ancients conceits cinchona ecstasy 91 | cottoning innocent connote consent chi contestant coo 92 | cogitations coyote cotangent thatches Inchon hesitancy 93 | Attica Tycho etch statisticians statics enacts chanteys chat 94 | scans 95 | 96 | 97 | 423 98 | Lesson 9 - l 99 | lL 100 | gal neocolonialist slangy Helena innately gloat 101 | conscienceless sloths changelings lentils steeling silence 102 | chattily stolon cynically lionises Catalans lit Ital Chagall 103 | hostility halloo legalities signalisation escalation 104 | longings Cecelia snootily chalet annals analogical tonally 105 | illegality Cecilia sleigh yelling Alsatian enlighten sails 106 | thinly 107 | 108 | 109 | 424 110 | Lesson 10 - d 111 | dD 112 | disco needed scandals dilate italicised dale childish hatted 113 | goodish sinned glinted diciest descent toadstools 114 | antecedence laddishness headstand tatted dandelion toned 115 | goodies ingested child snide dotting disincline chalcedony 116 | standstills tagged hogsheads aids dynastic desensitised 117 | gliding dying hadst stolidly Tide colloid cooed dean 118 | 119 | 120 | 425 121 | Lesson 11 - rR 122 | rR 123 | credentialing res oriels Aaron torrider renting groynes 124 | irises renege contriteness grinder ornateness honer 125 | ancestresses entirely rogers toreador recital Ernestine 126 | grilled grandee satyr aggressors lateraled thereat 127 | leaderless Iris shard store Larry argyle certs collard 128 | galleries Ingres shrilly Tanner rattled Eritrea shorthorns 129 | decorate 130 | 131 | 132 | 426 133 | Lesson 12 - u 134 | uU 135 | nuttiest sounders surrender scrounge saturates colourises 136 | acuity trousers sauciest unsold nutritional unicorn Gullah 137 | undoes runnel resolutions gutsy Alcuin instructors shrug 138 | unhinged latitudinal crusade church tussle Eucharistic 139 | lurching unharness undercarriages Eurydice shotgun 140 | sententious naturalised Constitution aurally casualness 141 | 142 | 143 | 427 144 | Lesson 13 - p 145 | pP 146 | palette depressurisation proponents helicopter stupendously 147 | capitalise spayed prophetical strophes rapier phallic 148 | interrupted uphills grope surprisingly cleanup sulphates 149 | capon unstraps pilled pregnant perished serapes pollinated 150 | loops canopy photosynthetic splashed adopting particulates 151 | dispersing snooped pentathlete parser pended 152 | 153 | 154 | 428 155 | Lesson 14 - q 156 | qQ 157 | squarely quitters picturesquely torquing lacquering iniquity 158 | quaint prequels quiet cliquishly reacquaint quartets chequed 159 | acquirer quashed enquiringly quislings parquetry inquisition 160 | acquiescent antiquarians quaintest Sasquatch enquired 161 | antiquarian reacquaints Inquisition squishier queasily 162 | acquitted picturesque turquoises queenly qt aquanaut 163 | 164 | 165 | 429 166 | Lesson 15 - w 167 | wW 168 | lowers wiggly hogwash wallets outlaw watchwords awaited 169 | wateriness gateway downhearted Suwanee wetter windowsills 170 | wheedlers peewits whiners Ewing stalwarts heehawed slewed 171 | Norwich wining worthless deadwood crosswind westward warthog 172 | waterways thawed wrongs anywise cow townships peepshows 173 | scarecrow dhow unrewarding scrawny sweetness Shawna 174 | waterside 175 | 176 | 177 | 430 178 | Lesson 16 - b 179 | bB 180 | interurban obsequiously orbiter bee outbalances unbarred 181 | belittles Erebus blinder Philby bargaining gobbler booster 182 | rouble belletrists brute abuse Rubinstein doublets 183 | nonpunishable unpardonably burly retractable sociables 184 | battles predictability burglarises pebblier bus bedsitters 185 | substances urbanologists tablas bough gabbling pubertal 186 | buddy 187 | 188 | 189 | 431 190 | Lesson 17 - j 191 | jJ 192 | jousters jellybeans Alejandra enjoining josher 193 | jurisdictional jitterbugger jerseys conj jangler deject 194 | objections jurors jug jocose jag jailhouse journos judges 195 | objector jewelling ejaculatory prejudices enjoin jollier 196 | jugged rejoice jetliner Lissajous juddering dejecting 197 | Gujarat japanned objurgate jibs adjudicated journeyer 198 | jalousies 199 | 200 | 201 | 432 202 | Lesson 18 - f 203 | fF 204 | coffeehouses puffball Afros defogger sendoff duffs affronted 205 | fleshing effusing fabricated staffers inflection flagstaff 206 | affiliation ferreting frostbitten feigned sniff fiddle 207 | infractions deafen halfpenny quarterfinal ft liquefy 208 | functioned farsighted firefight puffy flashgun firing 209 | further farrago grapefruits infrared outfights 210 | 211 | 212 | 433 213 | Lesson 19 - z 214 | zZ 215 | brazier horizons dazzlers frizzier futzes brazens lazy zeal 216 | stargazed Zzz antifreeze cozened Ritz Austerlitz Nazi 217 | Orizaba zigzag snazzily Byzantines Puzo Rodriguez fritz 218 | spritzers pizzerias zephyrs zanier prizefighter craziness 219 | zingy dozen zinc pizzeria Lizzy pizzas zoological prizes 220 | refrozen frizzly daze blazers trailblazer Belize Cuzco 221 | refreeze 222 | 223 | 224 | 434 225 | Lesson 20 - x 226 | xX 227 | exigencies foxhunts Pentax unexcited Giraudoux Excellencies 228 | expurgating prolix extinguish oxidised exaction explosion 229 | detoxes expansion exhibition exurbanites waxed waxier sexist 230 | bisexual lexers xxiii expecting toxicities annexes 231 | exacerbate unexplored elixirs expositor reflexes expunging 232 | sixtieth explained sixteenths expounder box 233 | 234 | 235 | 435 236 | Lesson 21 - m 237 | mM 238 | midwiferies mammograms misdeals Herman compered hormone 239 | imitated fumes seamed Ampere seminaries molesting 240 | conformance condemnation smashers tamely embellishing micron 241 | Myanmar impatiences tameness chemises dreaminess Semitic 242 | immanency manliest manifested complaint economical flimsiest 243 | abstemious nomadic disagreement rhyme grimmest reforms 244 | 245 | 246 | 436 247 | Lesson 22 - v 248 | vV 249 | defensively divisively shriving diminutives driving waverer 250 | presumptive nonviable verdigrised cavils Galvani 251 | receptiveness gravy aviatrix overcautious adverting 252 | overconscientious oblivion Zhdanov incivility unlovely 253 | overawes Levy pervade perverseness Stevie connective governs 254 | reinvigorates overweening bravado deceivers reevaluating 255 | venues 256 | 257 | 258 | 437 259 | Lesson 23 - k 260 | kK 261 | overcooked sketchy kookaburra tomahawking stocktaking sucks 262 | flankers autoworker mikado chuckling Hickman thickos barkers 263 | croaking skirmish housebreaks keyboards blockbusters Nevsky 264 | silkworms parkways gawks bock crockery overlooks backbone 265 | Tucker Bernanke Rockefeller nicknaming Jacklyn Tsiolkovsky 266 | stroking Mick twinks outbreaks firecracker 267 | 268 | 269 | 438 270 | Lesson 24 - Repetition 271 | 272 | Beck tearooms BLT Goering relaxing Forbes antiperspirants 273 | expectantly twopences frogmarched streetlamps sycophants 274 | recurs OSHA brininess reported drowsiness pontificate 275 | moonshine bluets tutorials relearns remand Shrek gauchos 276 | constructive shuffleboards perceptibly revved cunt 277 | psychotherapists Molotov trowelling fests laboured brocading 278 | admonished 279 | 280 | 281 | 282 | -------------------------------------------------------------------------------- /v2/lessons/gb.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | gm 4 | English (auto-generated) 5 | KTouch training file generated Sun Mar 11 09:59:58 2007 6 | Perl Script written by Steinar Theigmann and Håvard Frøiland. 7 | gb 8 | 9 | 10 | jf1 11 | j and f 12 | jf 13 | fj j f j f f fj f fj fj ffj f fjf f f jj f fj jf jf fj jfj fjf 14 | ffj ffj fj ff f f ff fj fj ffjj jjjf j f jj fj jj jfj ff f ff ff 15 | fj ffj ff jfj jf jff ffj f ff ffj f fjf j fj ffj fj jj ffj jj f 16 | jfj jff j ffj ffjj ff j f fjf ffj jff ffj jf ffj jff fj fj f f f 17 | f fj jff ffj fjf f j j jf jf j jfj fjf fj ff fj jfj jfj fj jff 18 | fj f ffjj f fjf ffj jfj ff j ff jf jjjf jf j jff jfj j f jj f jfj 19 | fj j jff jfj jfj jff jf fj jj j j fjf j fj j fj j f j f ff j ffjj 20 | j jfj ffjj jfj f jfj f fj f f f jfj j jf jfj fj j jf f fjf fjf 21 | jf ff ff fjf fjf fjf jfj jjjf j f jf jfj f jjjf f ff ff jf f fj 22 | ffj fj fj jf f ff jf f j j jfj f jff fj j f fjf f jfj jf f jfj jjjf 23 | 24 | 25 | kd1 26 | k and d 27 | kd 28 | djd k djd k fdj k fdj k k jdd dd k kf dd k k dd k d fdfk k k kf 29 | d kf fdfk k fdj k df jk jdd jkjd jjkk d k k d d d d k k d kf d 30 | d dd k d jjd d d dkk jkjd k k k djd dkk kf fdj k fdfk k k fdj 31 | k dkk d d df df df k k djd dd k d d d dd jdd d kf fdj k k d jkjd 32 | k k k djd k d dd d jdd jjd d d d jdd d k k dd fdfk jjkk k fdfk 33 | k d d fdfk jjkk kfd k k dd k k dkk jjd jjkk k kfd df kfd d d d 34 | fdj df jdd k d jdd k d k k k jjkk dd d d k jk df k jjkk d k k k 35 | jjkk d fdfk fdfk fdj d k d jjkk djd k k k k djd k d d d df k k djd 36 | k kfd df k k k d k dd kfd df d kfd k k k kfd djd k k jk dd dd 37 | df d d jk k kf jjd kf kf k df d k jkjd kf k jjd fdfk k k kfd d 38 | 39 | 40 | ls1 41 | l and s 42 | ls 43 | s sl s fl skl s sl fl skl sfj l sk s sk ss s sfj jss l fs ss fs 44 | sk jss sk s fl s l fs s fl jss sfj l s sk l sk s fs s ss l fl l 45 | sf fl lll skl sfj sk dsk sk sfj ss sf l fl jssj fl l l jss sfj 46 | sk sk s fl fl s jss s s s l fl jssj sl l l s fl sl l fs ss l fs 47 | jss s dsk s jssj sk fs l l skl l fl l s l s s sl skl fl s s l skl 48 | l fl s skl sk s l l jssj s sk s jss jss sfj sf sl sk s lll jssj 49 | sl s s fl l lll fl l sk fl ss dsk fl fl fjjs l fl s s s l s jss 50 | skl jss sfj l fl l sfj sfj skl l fl l sk fl fl sk ss l fs l sk l 51 | sl fl skl l l sl s fl fjjs fjjs l fjjs l fl ss fl l sk s l l l 52 | s s fjjs lll sk ss skl jssj skl fl l l skl fl l s dsk s s sl fl 53 | 54 | 55 | ca1 56 | c and a 57 | ca 58 | sca clac asa cascad sa al sca ass clac slac cak da fla c la fa ja 59 | fa salad ca daf addl fa scal slak facad al flask lass ac sass lack 60 | sac a c sla sca addl saf c aa fla fad salsa ad fla ad a ladl als 61 | c facad da fla call scal fla sac c al daff flas as ca all ak ac 62 | sadl cas ala c sak c jackas ca af caff aa aa ja sa afa sla lac ca 63 | fla fadd fa ja la faff sca sal alkal fals lac fla sass cas slas 64 | al fa clack af flak flas fla as af ass ass fad alack c sadl ass 65 | sack sca add sa c ja al lack cas cla cas add c las sa ac jacka sass 66 | cla sca cla ja c sak alack slak slas dadd slack alkal la la ak jc 67 | ass sa sas scal cas fa salaa las fad lack a dad c a sca ad la sla 68 | 69 | 70 | nt1 71 | n and t 72 | nt 73 | snaffl dan attack fann na scant fast snack taff ank sna att snac candl 74 | tattl tan tac na lan snaf jat staccat na t can fact an fann catcall 75 | ta tattl sta nast task cast tan cantata can n lankl slan tall sanda 76 | sna flank fact tank cat catcall t cantat latt landfal tal can stanc 77 | na snak knac ta annal attac t san canca stall san caftan ta ct 78 | t scandal flank last dankl nat cattl stat skat stal stak cact 79 | candl fat ana ta flatlan t tal tatt scant flatca dandl staf slat castl 80 | fan scantl sna snatc talk sna sna flank cast dandl n task tak lastl 81 | alt fan landlad tal ta stan lank flan tal tast sand sta landfall 82 | knac landfal cat ants landlad na sata salt caftan anall nat can lastl 83 | 84 | 85 | iv1 86 | i and v 87 | iv 88 | cassi sic laddi affin canin flint inclinin vivain icil ni satinin 89 | ci in cit divan finalis tankin sli instatin kil clinicall dis vill 90 | vi lil caddis snifflin fit assail nif lanai kil addic lis ick dia 91 | infantil satani kind nift jadin visitin stil idl littl si clinicia validat 92 | ninn ti fil cavalcad sanit slackin catfis dinin astatin dadaist killin 93 | fil sift vial sniffin fantasti lividl li invalid flick satinin di 94 | affiancin dia finn inkin acidl final vannin tin itc italic instancin inla 95 | insistin slavin vindictiv nai distall affianc ni stick ki sniff tid tilt 96 | tacitl clannis jiltin failin ki stasi sanit fiddl savanna atil acclai 97 | fiv satanicall lackadaisicall fascia ti sandin valis ai dids didacticall 98 | 99 | 100 | me1 101 | m and e 102 | me 103 | dividend lite salesladie vie decam dissect skie enema cancel feminist 104 | insentienc decedent fiesta saltcella demiste title steadines scammin fancie 105 | envie fee descent se incivilitie amide site demitass lesse animatedl 106 | select latencie naive mantle milkmaid fiftie distinctivel seventeent 107 | mainmas finickies distinctivel filme jestin assesse insiste slate skillet 108 | lacke manana inte ma falsett mate dietetic entitlemen vesicle stales 109 | divvie cleanin enlivenin seeke titte tendenc mistil mi lifelin accidental 110 | steak skimme fantasie divest sveltes devianc mistines sassie jade 111 | finenes titte dismantle mentalis inadvisedl fannie installe disinfectan 112 | midden divisivenes acclaim mf settee svelt animatedl teatime devastate 113 | 114 | 115 | hr1 116 | h and r 117 | hr 118 | dare testifier eradicate terminat trafficke hadin inferenc franti 119 | reservedl chef lathere marr atria trait distres hearse trance varnis chattin 120 | fifer irise intern merite clicker hesitanc rhiniti crackhead dishe 121 | saddler rancidit mandrak rattl threade cardinall larc trisectin intrinsi 122 | recreatin stridde ester carcas thirst rifte rascal thres drinke indiscriminatel 123 | clarete iridescenc refile resen reelectin airlift tetherin invert resale 124 | feathere enfranchisemen rehea earthie fetche thick firecracker interlinke 125 | redelive ethnicall tidemar indiscreetl cracklin menhade mishandlin catche 126 | ransack headline crest inerran teare cradle sincerit hater firt dinner 127 | rent snickerin recklessnes sharer thatche relinin refac heatin reinstatemen 128 | 129 | 130 | go1 131 | g and o 132 | go 133 | overcook rotat comi reconfirmatio reregistratio nomad management forklift 134 | storme socialisti shoestring conma iodide lading incontinentl fervo 135 | sag gentl mo legitimatin sociologicall dominanc font regicid gallantl 136 | migh elongatio nonsmokin integran demoni maroo comicalit toccata 137 | fag infliction shatteringl coalfield cloc almight remoldin tanglin 138 | fago gonorrhea evocatio dialing solderin ciggie collide monarchie 139 | correctiona conciliatio hok roilin integrate cosmologie demonstrate throttle 140 | glister avitaminosi noddle odditie chiffo mg solstice steroida conge 141 | theor ammoni microcos histologica notifier favor chromaticall chromosoma 142 | songste negotiator diagnostic nova glande hornie concavit interconnection 143 | 144 | 145 | bp1 146 | b and p 147 | bp 148 | archbishop parliamentar calibe respel tiebac bon semipro retrospectiv transpir 149 | paren snappil absconde nobodie grosbeak podiatr precooke misinterpretatio 150 | parad establishin oppos liprea abrasiv dabbl seraph precookin kissabl 151 | embarkin breadth airdroppin permeabilit plainsme aberran bonnies gallbladder 152 | phaeto beepe packhors deciphermen plastere bloodthirstie cachepo vibration 153 | sandblas preme soppie dispos preppe bookmarke neighbore heptagona toboggane 154 | despondenc grabber blearil birdbath boast hellebor phonic blint escapemen 155 | horrible topographicall portende replier seborrhe peste debark composin 156 | trombonis ben bootblac resistibl rebor pikin barnacle pentacle trespasse 157 | sparre photocopie dolphin plantin pictographi brittl bipartit potat 158 | 159 | 160 | qu1 161 | q and u 162 | qu 163 | thoroughnes recrudescin tunefulnes rigorousnes imprimatu rounde capsule 164 | breakou reintroduce contentiousnes bullfinche biennium augmenter nurse 165 | busb curse quipste munificen beautifie thankfu instruct tranquill 166 | stoup inundation undeservin fluf quarto purloinin quaho unheate cherub 167 | guffa sufficien ridicule unequivocall redistribute fulsomel herculea 168 | portentousnes shogun dangerou gutties samurai knuckl racquetbal babushka emolumen 169 | cuboi epilogue frui puddl auctio aqueou quot squint velu abuse pluckil 170 | therapeuticall renucleate turnoff busties accusa gustil pluckines neutral nonintellectua 171 | uncannil outcropping custodian rutties guardednes platitude grubb mus 172 | skunk impugn nonplussin nuptial untrouble flounc unchronicle bushe 173 | 174 | 175 | wn1 176 | w and n 177 | wn 178 | weed rotundin kidnap compartment retakin enlighten adjurin sharin 179 | propositione driftne entitlemen debunk peasantr canvas insurgenc nullifie 180 | halfpennie middleweigh licensin outdistance sunburst whelmin supplicatin 181 | brinines opalescen chardonna aw salutatorian envelo futon outpatien indulgentl 182 | fascination blundere constitutionalist reedines endure wavie allianc rustines 183 | numskul refrigeratin repartitionin bookworm snowie annihilate noisom 184 | unbiassedl widemouthe phrenologica grandniec manipulation contorte airines 185 | institutionall accompanist ranke precedenc tackin squanderin sanitarie conjunctiv 186 | eastboun downwar monste inkblot sarong nattere cinematographe punchbag 187 | retransmittin sawhorse engineer counterpoise wigwa wakefu genr brainstorm 188 | 189 | 190 | cx1 191 | c and x 192 | cx 193 | cull continu spectroscopi captionin complete pronounce accumulatio 194 | seraphicall misconstruin conservativenes scrabblin cosmeticia deficiencie 195 | copiousl chican dissociativel pronouncin congenitall extende cementer 196 | poleax attachment recombine compatibilitie colorles obscenes spamblock 197 | cinchin agrochemica nonreciproca cleare coastlin crumblines insurrectio 198 | discounte preconditionin relocke complexion destructibl crawlin corrode 199 | decommissione sec percusse discograph beneficia couple pixel officialis affixe 200 | lurchin rapprochemen raccoon incom nic doctorin ratche falsificatio 201 | ethnicall obsolesce unpunctualit effulgenc lunchroo chaoticall sackful 202 | shucke microelectroni watchtowe occurrin processe electrocardiograph 203 | 204 | 205 | yz1 206 | y and z 207 | yz 208 | skylight syllabicatin secularize pygm amazo fizze overemphasize summariz 209 | heavyse appetize metaphysicall fraye psychoanalyticall economizer bricklayer 210 | mestizo yashmak yukk hygromete glamorizatio synthesi dillydall yup wheezil 211 | psychedelic burglariz phyl polytheis ethy nylon delaye psychosomatic highboy 212 | polynomiall hysteresi polymerase pyrimidine bowdleriz sterilize gazetteere 213 | playtim initializatio haphazar legitimatiz buzzard plasticizin sizzle 214 | emblazone zoolog anglicize rhyme dyestuff credenz ray squeezebo swiz stargaze 215 | baptiz mobilize throwaway oversizin dynast harmonize sublaye metalize 216 | humanizatio buckeye overspecialize graybeard magazine clearway yellow enjoyment 217 | layere flywa mizzen baptize capsiz styluse glaz synonymou bellyach 218 | 219 | 220 | caps1 221 | Capitalisation 222 | ABCDEFGHIJKLMNOPQRSTUVWXYZ 223 | I U Frann Iss V Sophe Ma Blanch Janissar Karl Equuleu Jech Dia 224 | Mariejeann Filofa Shoshann Cheeve Ludvi Stoicism Alabam Fo Belmon Al Peshawa 225 | Episcopalia Tammi Huc Castill McDowel Sabrin Izanam Salina Soav Gerar Margarett 226 | Blondell Austin Menande Vandal Winnifre Daun Porsch Thomis Noel TELNE 227 | Row Ber Fraue Kenya Trix Pissar Bake Vandal Wale Jua Benghaz Ronal 228 | Babylonia Jacobit Guamania Zebede Hagiograph Stou AWO Dustbuste Shani 229 | Edgard Rigolett Danic Carr Donn Rosco Jazmi Ermini BB Coloradoa Hebrais 230 | Stockhause Tolyatt Marshal VG Haga Kamek Gall Pilcomay Ballar Morto Renascenc 231 | Hebride Tup Hoebar Tunisia El Crysta Cheyenn SD Mad SU Silvai Johnn 232 | Vis Ramb Luge Demetriu Collie Nettl Dicken Joelyn Conservativ Fonzi 233 | 234 | 235 | 236 | -------------------------------------------------------------------------------- /v2/lessons/us.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {c6cf3cc1-7bc2-4b15-91fa-a07b4633b51d} 4 | English (US) (auto-generated) 5 | KTouch training file generated Sun Mar 11 09:59:58 2007 6 | Perl Script written by Steinar Theigmann and Håvard Frøiland. 7 | us 8 | 9 | 10 | {591b9566-d988-4714-87e2-a5cfe4647440} 11 | j and f 12 | jf 13 | fj j f j f f fj f fj fj ffj f fjf f f jj f fj jf jf fj jfj fjf 14 | ffj ffj fj ff f f ff fj fj ffjj jjjf j f jj fj jj jfj ff f ff ff 15 | fj ffj ff jfj jf jff ffj f ff ffj f fjf j fj ffj fj jj ffj jj f 16 | jfj jff j ffj ffjj ff j f fjf ffj jff ffj jf ffj jff fj fj f f f 17 | f fj jff ffj fjf f j j jf jf j jfj fjf fj ff fj jfj jfj fj jff 18 | fj f ffjj f fjf ffj jfj ff j ff jf jjjf jf j jff jfj j f jj f jfj 19 | fj j jff jfj jfj jff jf fj jj j j fjf j fj j fj j f j f ff j ffjj 20 | j jfj ffjj jfj f jfj f fj f f f jfj j jf jfj fj j jf f fjf fjf 21 | jf ff ff fjf fjf fjf jfj jjjf j f jf jfj f jjjf f ff ff jf f fj 22 | ffj fj fj jf f ff jf f j j jfj f jff fj j f fjf f jfj jf f jfj jjjf 23 | 24 | 25 | {051431ae-badf-4b91-b2ce-e653a5dd5225} 26 | k and d 27 | kd 28 | djd k djd k fdj k fdj k k jdd dd k kf dd k k dd k d fdfk k k kf 29 | d kf fdfk k fdj k df jk jdd jkjd jjkk d k k d d d d k k d kf d 30 | d dd k d jjd d d dkk jkjd k k k djd dkk kf fdj k fdfk k k fdj 31 | k dkk d d df df df k k djd dd k d d d dd jdd d kf fdj k k d jkjd 32 | k k k djd k d dd d jdd jjd d d d jdd d k k dd fdfk jjkk k fdfk 33 | k d d fdfk jjkk kfd k k dd k k dkk jjd jjkk k kfd df kfd d d d 34 | fdj df jdd k d jdd k d k k k jjkk dd d d k jk df k jjkk d k k k 35 | jjkk d fdfk fdfk fdj d k d jjkk djd k k k k djd k d d d df k k djd 36 | k kfd df k k k d k dd kfd df d kfd k k k kfd djd k k jk dd dd 37 | df d d jk k kf jjd kf kf k df d k jkjd kf k jjd fdfk k k kfd d 38 | 39 | 40 | {b6c4526a-847b-4e78-b233-c9367469e415} 41 | l and s 42 | ls 43 | s sl s fl skl s sl fl skl sfj l sk s sk ss s sfj jss l fs ss fs 44 | sk jss sk s fl s l fs s fl jss sfj l s sk l sk s fs s ss l fl l 45 | sf fl lll skl sfj sk dsk sk sfj ss sf l fl jssj fl l l jss sfj 46 | sk sk s fl fl s jss s s s l fl jssj sl l l s fl sl l fs ss l fs 47 | jss s dsk s jssj sk fs l l skl l fl l s l s s sl skl fl s s l skl 48 | l fl s skl sk s l l jssj s sk s jss jss sfj sf sl sk s lll jssj 49 | sl s s fl l lll fl l sk fl ss dsk fl fl fjjs l fl s s s l s jss 50 | skl jss sfj l fl l sfj sfj skl l fl l sk fl fl sk ss l fs l sk l 51 | sl fl skl l l sl s fl fjjs fjjs l fjjs l fl ss fl l sk s l l l 52 | s s fjjs lll sk ss skl jssj skl fl l l skl fl l s dsk s s sl fl 53 | 54 | 55 | {38799882-fc6c-4b51-9d75-1f57ba8834be} 56 | c and a 57 | ca 58 | sca clac asa cascad sa al sca ass clac slac cak da fla c la fa ja 59 | fa salad ca daf addl fa scal slak facad al flask lass ac sass lack 60 | sac a c sla sca addl saf c aa fla fad salsa ad fla ad a ladl als 61 | c facad da fla call scal fla sac c al daff flas as ca all ak ac 62 | sadl cas ala c sak c jackas ca af caff aa aa ja sa afa sla lac ca 63 | fla fadd fa ja la faff sca sal alkal fals lac fla sass cas slas 64 | al fa clack af flak flas fla as af ass ass fad alack c sadl ass 65 | sack sca add sa c ja al lack cas cla cas add c las sa ac jacka sass 66 | cla sca cla ja c sak alack slak slas dadd slack alkal la la ak jc 67 | ass sa sas scal cas fa salaa las fad lack a dad c a sca ad la sla 68 | 69 | 70 | {5a13d001-b363-4115-8860-2374fb225b52} 71 | n and t 72 | nt 73 | snaffl dan attack fann na scant fast snack taff ank sna att snac candl 74 | tattl tan tac na lan snaf jat staccat na t can fact an fann catcall 75 | ta tattl sta nast task cast tan cantata can n lankl slan tall sanda 76 | sna flank fact tank cat catcall t cantat latt landfal tal can stanc 77 | na snak knac ta annal attac t san canca stall san caftan ta ct 78 | t scandal flank last dankl nat cattl stat skat stal stak cact 79 | candl fat ana ta flatlan t tal tatt scant flatca dandl staf slat castl 80 | fan scantl sna snatc talk sna sna flank cast dandl n task tak lastl 81 | alt fan landlad tal ta stan lank flan tal tast sand sta landfall 82 | knac landfal cat ants landlad na sata salt caftan anall nat can lastl 83 | 84 | 85 | {48dc988d-a78b-457d-8601-2636ffa88185} 86 | i and v 87 | iv 88 | cassi sic laddi affin canin flint inclinin vivain icil ni satinin 89 | ci in cit divan finalis tankin sli instatin kil clinicall dis vill 90 | vi lil caddis snifflin fit assail nif lanai kil addic lis ick dia 91 | infantil satani kind nift jadin visitin stil idl littl si clinicia validat 92 | ninn ti fil cavalcad sanit slackin catfis dinin astatin dadaist killin 93 | fil sift vial sniffin fantasti lividl li invalid flick satinin di 94 | affiancin dia finn inkin acidl final vannin tin itc italic instancin inla 95 | insistin slavin vindictiv nai distall affianc ni stick ki sniff tid tilt 96 | tacitl clannis jiltin failin ki stasi sanit fiddl savanna atil acclai 97 | fiv satanicall lackadaisicall fascia ti sandin valis ai dids didacticall 98 | 99 | 100 | {279e903e-d356-4504-b743-26f2bdd64f0a} 101 | m and e 102 | me 103 | dividend lite salesladie vie decam dissect skie enema cancel feminist 104 | insentienc decedent fiesta saltcella demiste title steadines scammin fancie 105 | envie fee descent se incivilitie amide site demitass lesse animatedl 106 | select latencie naive mantle milkmaid fiftie distinctivel seventeent 107 | mainmas finickies distinctivel filme jestin assesse insiste slate skillet 108 | lacke manana inte ma falsett mate dietetic entitlemen vesicle stales 109 | divvie cleanin enlivenin seeke titte tendenc mistil mi lifelin accidental 110 | steak skimme fantasie divest sveltes devianc mistines sassie jade 111 | finenes titte dismantle mentalis inadvisedl fannie installe disinfectan 112 | midden divisivenes acclaim mf settee svelt animatedl teatime devastate 113 | 114 | 115 | {850e6535-8786-4b72-9d62-90e41c1aee8f} 116 | h and r 117 | hr 118 | dare testifier eradicate terminat trafficke hadin inferenc franti 119 | reservedl chef lathere marr atria trait distres hearse trance varnis chattin 120 | fifer irise intern merite clicker hesitanc rhiniti crackhead dishe 121 | saddler rancidit mandrak rattl threade cardinall larc trisectin intrinsi 122 | recreatin stridde ester carcas thirst rifte rascal thres drinke indiscriminatel 123 | clarete iridescenc refile resen reelectin airlift tetherin invert resale 124 | feathere enfranchisemen rehea earthie fetche thick firecracker interlinke 125 | redelive ethnicall tidemar indiscreetl cracklin menhade mishandlin catche 126 | ransack headline crest inerran teare cradle sincerit hater firt dinner 127 | rent snickerin recklessnes sharer thatche relinin refac heatin reinstatemen 128 | 129 | 130 | {67d9e774-71b0-4b15-92fd-8e12d90f611e} 131 | g and o 132 | go 133 | overcook rotat comi reconfirmatio reregistratio nomad management forklift 134 | storme socialisti shoestring conma iodide lading incontinentl fervo 135 | sag gentl mo legitimatin sociologicall dominanc font regicid gallantl 136 | migh elongatio nonsmokin integran demoni maroo comicalit toccata 137 | fag infliction shatteringl coalfield cloc almight remoldin tanglin 138 | fago gonorrhea evocatio dialing solderin ciggie collide monarchie 139 | correctiona conciliatio hok roilin integrate cosmologie demonstrate throttle 140 | glister avitaminosi noddle odditie chiffo mg solstice steroida conge 141 | theor ammoni microcos histologica notifier favor chromaticall chromosoma 142 | songste negotiator diagnostic nova glande hornie concavit interconnection 143 | 144 | 145 | {ca060cf6-46a6-440d-be85-b887d7fee484} 146 | b and p 147 | bp 148 | archbishop parliamentar calibe respel tiebac bon semipro retrospectiv transpir 149 | paren snappil absconde nobodie grosbeak podiatr precooke misinterpretatio 150 | parad establishin oppos liprea abrasiv dabbl seraph precookin kissabl 151 | embarkin breadth airdroppin permeabilit plainsme aberran bonnies gallbladder 152 | phaeto beepe packhors deciphermen plastere bloodthirstie cachepo vibration 153 | sandblas preme soppie dispos preppe bookmarke neighbore heptagona toboggane 154 | despondenc grabber blearil birdbath boast hellebor phonic blint escapemen 155 | horrible topographicall portende replier seborrhe peste debark composin 156 | trombonis ben bootblac resistibl rebor pikin barnacle pentacle trespasse 157 | sparre photocopie dolphin plantin pictographi brittl bipartit potat 158 | 159 | 160 | {331ed5b3-9af3-47fd-9699-7cf2d8ac6f3f} 161 | q and u 162 | qu 163 | thoroughnes recrudescin tunefulnes rigorousnes imprimatu rounde capsule 164 | breakou reintroduce contentiousnes bullfinche biennium augmenter nurse 165 | busb curse quipste munificen beautifie thankfu instruct tranquill 166 | stoup inundation undeservin fluf quarto purloinin quaho unheate cherub 167 | guffa sufficien ridicule unequivocall redistribute fulsomel herculea 168 | portentousnes shogun dangerou gutties samurai knuckl racquetbal babushka emolumen 169 | cuboi epilogue frui puddl auctio aqueou quot squint velu abuse pluckil 170 | therapeuticall renucleate turnoff busties accusa gustil pluckines neutral nonintellectua 171 | uncannil outcropping custodian rutties guardednes platitude grubb mus 172 | skunk impugn nonplussin nuptial untrouble flounc unchronicle bushe 173 | 174 | 175 | {db69d42f-a9b0-4c0f-89b2-c3e77fbb3efa} 176 | w and n 177 | wn 178 | weed rotundin kidnap compartment retakin enlighten adjurin sharin 179 | propositione driftne entitlemen debunk peasantr canvas insurgenc nullifie 180 | halfpennie middleweigh licensin outdistance sunburst whelmin supplicatin 181 | brinines opalescen chardonna aw salutatorian envelo futon outpatien indulgentl 182 | fascination blundere constitutionalist reedines endure wavie allianc rustines 183 | numskul refrigeratin repartitionin bookworm snowie annihilate noisom 184 | unbiassedl widemouthe phrenologica grandniec manipulation contorte airines 185 | institutionall accompanist ranke precedenc tackin squanderin sanitarie conjunctiv 186 | eastboun downwar monste inkblot sarong nattere cinematographe punchbag 187 | retransmittin sawhorse engineer counterpoise wigwa wakefu genr brainstorm 188 | 189 | 190 | {cdd26c2e-c32a-47e7-acec-88279f4670b9} 191 | c and x 192 | cx 193 | cull continu spectroscopi captionin complete pronounce accumulatio 194 | seraphicall misconstruin conservativenes scrabblin cosmeticia deficiencie 195 | copiousl chican dissociativel pronouncin congenitall extende cementer 196 | poleax attachment recombine compatibilitie colorles obscenes spamblock 197 | cinchin agrochemica nonreciproca cleare coastlin crumblines insurrectio 198 | discounte preconditionin relocke complexion destructibl crawlin corrode 199 | decommissione sec percusse discograph beneficia couple pixel officialis affixe 200 | lurchin rapprochemen raccoon incom nic doctorin ratche falsificatio 201 | ethnicall obsolesce unpunctualit effulgenc lunchroo chaoticall sackful 202 | shucke microelectroni watchtowe occurrin processe electrocardiograph 203 | 204 | 205 | {8c97dfe1-0f73-43d5-ae01-70e699492d05} 206 | y and z 207 | yz 208 | skylight syllabicatin secularize pygm amazo fizze overemphasize summariz 209 | heavyse appetize metaphysicall fraye psychoanalyticall economizer bricklayer 210 | mestizo yashmak yukk hygromete glamorizatio synthesi dillydall yup wheezil 211 | psychedelic burglariz phyl polytheis ethy nylon delaye psychosomatic highboy 212 | polynomiall hysteresi polymerase pyrimidine bowdleriz sterilize gazetteere 213 | playtim initializatio haphazar legitimatiz buzzard plasticizin sizzle 214 | emblazone zoolog anglicize rhyme dyestuff credenz ray squeezebo swiz stargaze 215 | baptiz mobilize throwaway oversizin dynast harmonize sublaye metalize 216 | humanizatio buckeye overspecialize graybeard magazine clearway yellow enjoyment 217 | layere flywa mizzen baptize capsiz styluse glaz synonymou bellyach 218 | 219 | 220 | {ef6091fe-54a5-4ead-87d5-4edfd18945e2} 221 | Capitalisation 222 | ABCDEFGHIJKLMNOPQRSTUVWXYZ 223 | I U Frann Iss V Sophe Ma Blanch Janissar Karl Equuleu Jech Dia 224 | Mariejeann Filofa Shoshann Cheeve Ludvi Stoicism Alabam Fo Belmon Al Peshawa 225 | Episcopalia Tammi Huc Castill McDowel Sabrin Izanam Salina Soav Gerar Margarett 226 | Blondell Austin Menande Vandal Winnifre Daun Porsch Thomis Noel TELNE 227 | Row Ber Fraue Kenya Trix Pissar Bake Vandal Wale Jua Benghaz Ronal 228 | Babylonia Jacobit Guamania Zebede Hagiograph Stou AWO Dustbuste Shani 229 | Edgard Rigolett Danic Carr Donn Rosco Jazmi Ermini BB Coloradoa Hebrais 230 | Stockhause Tolyatt Marshal VG Haga Kamek Gall Pilcomay Ballar Morto Renascenc 231 | Hebride Tup Hoebar Tunisia El Crysta Cheyenn SD Mad SU Silvai Johnn 232 | Vis Ramb Luge Demetriu Collie Nettl Dicken Joelyn Conservativ Fonzi 233 | 234 | 235 | 236 | -------------------------------------------------------------------------------- /v2/lessons/ru1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | {ebfc3797-2556-41bb-9f8a-2c2c1b3ac66f} 4 | Русская (автоматически сгенерированная) 5 | Russian training file 6 | adapted by Chemisov Konstantin <dabc4123@mail.ru> 7 | from ktouch-gen utility 8 | 29-08-2005 9 | ru 10 | 11 | 12 | {961987d3-b76f-424f-a9ea-61adc7e55585} 13 | Lesson 1 14 | ол 15 | лоло ооол л ллоо л ло лл ол ллл ол оооо ллоо лоо лл о лоло 16 | ол о оо лл лл л ло ооо ллл лоооо ооо ол ло олоо ол ололо лл 17 | ооо ололо ллооо оо оооо ол ол ллооо ооол лл лолл ооо ооол лл 18 | ло лл ооол ол ло олл лл о ллоо ол ол ооо олл о ол ло лл оооо 19 | лолл лоло ллооо лл ло ло олоо ол лоооо ооо ло олоо ол о о 20 | ллооо ооол ол лл лоо о о ло лоо 21 | 22 | 23 | {5080d1a2-9452-4b9f-9fa8-018e5d28d655} 24 | Lesson 2 25 | ва 26 | а а вола во авлао вввол ллва олоа а лвл вввол оа оа вллво 27 | ллв а а ала ллв вввол ал в оа оао ола аа во ла ал в ллв ал в 28 | а авлао вввол вввол вола в аалв ла лав олоа а ллва вола ао 29 | вавл ала в аалв аалв лвл аа алла алло олоа а ва в вллво аалв 30 | алло а ола ао во ола ола ла лвл в ал в вллво в вввол ао алло 31 | лвл авлао алло ала ла оа 32 | 33 | 34 | {7626d2b2-17e4-455d-ad88-69d85824c6ec} 35 | Lesson 3 36 | дж 37 | жол лвжжв лдв ододд лаж лаж ж ааж дл жажа аж ад ододд дл жв 38 | ж жол ааж жвала да жв ж лдв лдв джж лдв ододд до ж жв ооож 39 | аж ж лвлд ад ж жажа жажа джж лвлд жол жв до жв дао вдвж вдвж 40 | джж два ж долл дл жол джж жд лвлд два два джллж долл ододд 41 | жд лаж лввож ааж жв жв да жвала до лвжжв жв ооож дао два 42 | джллж жол вдвж дао дао жажа 43 | 44 | 45 | {893aa945-5e06-43a6-b71c-ec90a11708a3} 46 | Lesson 4 47 | фы 48 | дважды ф овы дыа жфл афф вы фыа ф овы дыа фд дважды фыа фдж 49 | дыа ф лафа фа фа дважды афвдо фд афф ыф дыа ввфлл вы ыф жфжо 50 | фф ы дважды афвдо фыа дважды фав ф вфы лафа фф жфл дважды ф 51 | афвдо афвдо ыафж выд ф ыф фа фа ф фд вы ввфлл одыд жфжо ф 52 | овы фав ф лафа афф ыафж одыд жфл афвдо ыф лафа фав ыф ф дыа 53 | одыд одыд дфы дважды ыафж фа афф 54 | 55 | 56 | {c2185320-c0b6-4441-9ec2-5ac1fea2180b} 57 | Lesson 5 58 | прэ 59 | пл про рыл вправо рады алоэ па вправо др фр па рожд рад прод 60 | пров дров оп рыл рва подп подо рыл рва па рвов рва доп вып 61 | рыл дрожа поло дров прод рады дров паф алоэ вып вып пров 62 | рада впопад вып пр проф рада про про пр оп подо алоэ рад 63 | дров впопад впопад проф рвов опа доп вправо пров про опа 64 | дрожа рад пл др опа доп алоэ рад впопад по поло алоэ рожд 65 | рва рады поло про опа про фр пл вып пл пров ров оп дров доп 66 | ров рада рады рожд рада па рыл подп прод прод алоэ оп про фр 67 | фр фр поло впопад доп рыл вправо рад опа пл подп фр поло 68 | 69 | 70 | {7245a9bc-445e-4f95-9501-f48ad1893cb9} 71 | Lesson 6 72 | нг 73 | дн оглы на англо аналого ровно гало одно агар га оглы вдогон 74 | ларго наполно она повадно долго прыг волго ага рондо рано 75 | попарно полгорода полн долго прогр дрыг гала он одно наново 76 | рожна арго попарно прогр оглы англо одного она однажды 77 | вдогон гав прогр она рожна рожна на гоп долга подавно 78 | наповал вдогон англо гала гало наповал долга наповал 79 | 80 | 81 | {fbbbde91-7898-4434-af49-e4b2cdc39211} 82 | Lesson 7 83 | ке 84 | полпервого краев ее кана лег корп внакладе положе 85 | однопокровные поныне акад коэфф жен панове реле жег кана окр 86 | де реле же поперек переде кр когда легко недалеко двое деп 87 | жег ввек врак недалек наверное вполнакала карго ножен еле 88 | недолго пролег недавно драже переде плавне подороже реф 89 | некогда невдогад арпеджо авокадо негде однопокровные легко 90 | 91 | 92 | {8912c90c-87ee-4e3c-9a40-e2b2b00465ed} 93 | Lesson 8 94 | ть 95 | пропоете дотлеет тенет потрепет нетверд лат отожжет толков 96 | то тратьте деревень подопреет ревете редеет выпрете аннот 97 | отопьете потрепет выжрете откровенен тоже отрепков накоротко 98 | нетвердо пропоете лото выпадете нет деньжат такова отд тогда 99 | натрое тепла дотла то подотрете деньжонок ладненько лото 100 | ткет авт вольете гложете поете отопьете вырвет попоете ржете 101 | тел альпака вплоть поленьев выпереть нетверда пожжет впереть 102 | арт терпежа давненько тред поодаль телеателье жнет трет 103 | выжрет также поленьев 104 | 105 | 106 | {30b0509d-eed5-42d6-b9f4-930590bfc3d2} 107 | Lesson 9 108 | ми 109 | полмира пережмем подымем иль моргана авантажем проедим 110 | тремоло фигли наметем потемок подремлем фин манером трио 111 | приват можно итого вытрем темени пламенем выметет 112 | фоторепортажем магнето немерено надменен идете андантино 113 | преждевременен подгнивает дремлет дотрем моими выплывем 114 | мелеет липидов витражом прогниет подомнем проникновенен 115 | помигивает филе помоев жжем отревем километражем поднадоедим 116 | полмиле леди али поедом конфетти дремлете виват подгоним 117 | равномерно тире идальго они вопрем ммоль имен деванагари 118 | дожем привиденьевые наедине миражом выедим метаданные 119 | радиоданные подгорит полголовки неплатежом отметет едим 120 | дожмете вытрем поднадоедите дотрем мимолетом претит поджилок 121 | мрет гидроидные идемте фламенко пианино 122 | 123 | 124 | {1ad99c4f-2f11-4170-bd3a-557c9936c0c9} 125 | Lesson 10 126 | шщ 127 | фетишом штормило вольешь лавашем нервишек шьет вишь шортов 128 | китенышем одинешенек помелешь дошьете вытошнит клевеща 129 | протрешь напрешь решет нашем перетрешь клевеща дешево шильев 130 | ерш клевещет выигрышем гашишем наше поднажмешь выпивши 131 | переешь детишек поешь вышьем втридешева гложешь китенышем 132 | шевроле дремлешь подешевеет нощно проревешь тише горше ваши 133 | штормило пожмешь вишь шьешь кашне потоньше шпионажем вширь 134 | ерше решет вышьет кошем дошьешь шорт дошьем ерша шт прошел 135 | клевеща дешевле трепеща выведешь ваш подопрешь шире нощно 136 | повелишь вгонишь подальше нащипет шимми шлеп щегле подопрешь 137 | проешьте фотофинишем краешком вотрешь вышлет клевещете 138 | шевалье ершом выживешь подешевле выпивши демаршем краше 139 | вышьете 140 | 141 | 142 | {0ac66eee-68bc-44db-9ab5-966c1531204b} 143 | Lesson 11 144 | цу 145 | ветру провидцев колодцев каудильо принцем половцев цефеид 146 | душем двоеженцем отцветут пожгут циклопарафинов упада 147 | коленец уже вытекут вотку вырву кукишем гуманен инородцев 148 | протру гордецов мегагерцем отожгу цунами выпекут иранцев 149 | вокруг утрем тру тимуровцем прекращу управленцев отметут 150 | приверженцем фрау ливанцем полегоньку мордовцев натолку 151 | вегетарианцев отмету подожму телешоу впервинку выплыву 152 | наголову рукоп вомну гуру огурцом вытрут недурно живцом 153 | марокканцев анекдотцев инородцев между туда дружке натуго 154 | отщепенцем утенышем выпадут царевен приморцем отревут утру 155 | огулом подожгу перерожденцем филиппинцев полуднем ропщу 156 | воплощу венцом натекут шпицев панцирнощекие погорельцем 157 | птенцом малоквалифицирован путиловцем перцем цыц трудоднем 158 | ркацители 159 | 160 | 161 | {2a4b89fb-9740-4ead-9908-4a122a7756d6} 162 | Lesson 12 163 | зхъ 164 | выползет изотрет зелены замдиректора поразомнет припухнуть 165 | взовьем перех незнакомцем авгиевых повывезут метаданных 166 | вузовцев издревле заржете туземцев превзошел заметешь 167 | конголезцем андалузцем зелены поразомнем намерзнет разв 168 | вышеуказан запрешь жизнен раздерут затрет изразцом впопыхах 169 | разомну ходуль гнездышек незаконен подзову взревем изопьешь 170 | тихомолком разыму запершит захолонет запоете разопру запоем 171 | дерзновен мерзее угораздить хитрецом отзовете хитра похлеще 172 | изомнет зернышек генуэзцев задешево припухнет тихомолком 173 | хлынут кахетинцев возьмешь поздно запоете разуем впопыхах 174 | назреет рукокрылых запрете назреет привиденьевых догрызете 175 | извергнул зазеленеет охотку загрызешь прогрызет закишит 176 | глазенок изольете полозьев зашьешь 177 | 178 | 179 | {1eb56091-da1d-4d89-bc96-f9a9c2001534} 180 | Lesson 13 181 | й 182 | коленей зуйком зуйка продажей вальпургиевой траурницей ложей 183 | дележей хохотуний травницей уйму ершей атторней дорогушей 184 | уймут пираний некоей тонкошеий доймешь плащаницей поймешь 185 | перенаймом фрейлейн впотай вельможей розвальней полыней 186 | оладий ежей поднайме поднайму займе дележей уйдемте нейдет 187 | вожжой айда парашей майна кашицей перепродажей фойе 188 | гайморова плащаницей лгуний летуний перешейку зайдемте райку 189 | далай ершей поймете вруний кражей плутней пройму поймете 190 | землицей поймет той наймем аванложей аванложей вещуний ершей 191 | моей межей поймет гридницей пейзажем кривошеий переймешь 192 | овцой трахейнодышащие уймет продажей живицей паршой долгушей 193 | дрожжей тефтелей увальней платежей ленцой переймешь 194 | разумницей гидрогелей 195 | 196 | 197 | {692fc9f8-e5d2-4171-8d9a-949344363232} 198 | Lesson 14 199 | сб 200 | слабило заснимете двумстам безлиствен знобить бегуний 201 | абазинцем обретешь отрастает косцом сростнолепестные пси 202 | стахановцем двухстах исхлещут малообоснован брызжет 203 | полуобнимете обниметесь усохнет оруженосцем всецело 204 | подобьешь скерцо суждено судей сцифоидных симф рыботорговцев 205 | массажем белорыбицей сих высокохудожественен посуше накось 206 | листажом выбреем слабило обомрешь засниму рыботорговцем 207 | утрусь смелем отрубей диссонирует вопросцем споешь сомбреро 208 | спеет вынесетесь прошибет исподволь изолжетесь сновидцем 209 | свищем прусь голосеменные вблизи сне скитальцев посередке 210 | либретто метростроевцев высокоторжественен сгоним 211 | сростнолепестные суворовцев шустры невесел посвищет рысцой 212 | сшибешь буйком виршеписцев улегшись вразброд пепси базедова 213 | кибуцем 214 | 215 | 216 | {4e17d4fb-95d8-4cd5-9aca-0882f6a45a72} 217 | Lesson 15 218 | чюя 219 | проклянешь прокаливаются слежатся живя разнимается 220 | ответвятся хлопоча заверчу отзовемся обовьется разуются 221 | пропаяю уплощаются ваяются промываются закладываются 222 | наименуется бдя дрематься обесцветится заколыхается 223 | незапятнан подвыпью натрешься позвеню сзываются 224 | расспрашиваются переплавляются пригорают захватится 225 | намучаются воспевается тупятся фильтруется колошмачу 226 | обуешься взращиваются всклочивается проламывается домочадцем 227 | нездоровится вмонтируется оплачиваются далече выглядя 228 | крошатся истолчет эмитируются отрезаются моя моею твердиться 229 | самоокупается перелагается нечестивцем цепче выклиниваются 230 | калачом рюшем звонче буксируются тиглю посходят диссоциируют 231 | расточатся предпочтя шью оценивается зарябят утончается 232 | расшумится засылается возделается заструится подзаймемся 233 | 234 | 235 | {e4eb24cd-cd7a-424b-86ea-4b78b9e0a90c} 236 | Lesson 16 237 | АБВГДЕЖЗИЙКЛМНОПРСТУФХЦШЩЧЪЫЬЭЮЯ 238 | НЭПу Верея Господи АЦП Вязников Сержем ГДР РНК Мезень 239 | Закопане УВД ЦРУ Хамамацу Манту Акимовичем ГУЛАГе 240 | Витальевичем Баренцево Марковичем ИТР Рагби РОЭ Гонолулу 241 | Айдахо мГц Мексико Лос ЮНЕСКО Лейбницем ВАКа ГУЛАГу 242 | Голанских РЛС Жанейро Леопольдовичем Карно Игнатьевичем 243 | Гошей Рамбуйе Ханчжоу Иннокентьевичем АЗС Янцзы Артемьевичем 244 | Сьерра Китакюсю Грацем Бородино Петром Ельца Аликанте 245 | Змееносец Валентиновичем СНГ ЧК АОНу Ярославовичем Хартри 246 | Безье ЕЭС ВИНИТИ Анжу Арсентьевичем Голанских Лауэ 247 | Леонтьевичем Токио Овен Больцано кГц Ямагути Родионовичем 248 | Джорджем Лиепае Анд Александровичем Альбукерке Алексеевичем 249 | Альбертовичем Оже Тренто Федосеевичем Леонтьевичем Египтом 250 | ВЛКСМ Самсоновичем Вадимовичем Тихоновичем Ниццей Сережею 251 | Ханчжоу Угличем Самоа мВ Коломбо НИИ Египте Огайо Череповец 252 | Фадеевичем мкА МХАТу Альп Христос Карло Гуанчжоу Адель ПВО 253 | Петродворце Андрюшей Карловичем Египту Капитоновичем 254 | Назаровичем Лиепая Архиповичем Польшей Карповичем Карло 255 | Петродворца МХАТ Теннесси Бородино ГУЛАГ Абрамовичем Египту 256 | Эгейского УКВ Голанские Станиславовичем Капитоновичем Адель 257 | КПД мэВ Монтевидео КПСС ГОЭЛРО Зимбабве Карно Георгиевичем 258 | Сент Макаровичем Карачи АЭС Чикаго Диего Гавриловичем НЭПа 259 | Харитоновичем Ефимовичем Саппоро кВ Кембриджем Шри ГРЭС 260 | Самоа Франциско ГУЛАГа Станиславовичем Онтарио НЧ ГОСТом 261 | Чудским БТР Лиможем ЧК Монтевидео Беркли Ефремовичем МХАТу 262 | Кузьмичом Лыткарино Мезень Льежем Петром Кордильер Змееносец 263 | Десау Николаевичем Удэ Христу ГЭКу Зимбабве Аксеновичем 264 | Панчево Гавриловичем ГДР Леонтьевичем ЦИК Борнео Чикаго ГЭКе 265 | Рио Григорьевичем АОНу Трускавец Катманду Долгопрудный 266 | Глазго ГОСТ Римини Фе ЦИК Калгари ВМФ Энрико ЦИК Воронежем 267 | Химок Кавасаки Джо Всеволодовичем Аксеновичем Анд 268 | Николаевичем Рико Артемовичем НТР КЗОТ ЦК Никифоровичем 269 | Мидлсбро Коломбо ООН Мехико Чеховом Аламогордо АОЗТ 270 | Лыткарино Осиповичем Рио Риу Егоровичем Сакаи РФ 271 | Фолклендские Анисимовичем Череповца Апеннин Канарскими 272 | Карповичем Игнатьевичем Монпелье Ефремовичем Халле Марокко 273 | Арсеньевичем Николаевичем ПЗУ Федосеевичем Карповичем мкВ 274 | Буффало Колорадо НПО ОВИРа Джорджем Иннокентьевичем Осака 275 | ЦСКА ЧМ Родионовичем Трофимовичем Петродворец Давыдовичем 276 | 277 | 278 | 279 | --------------------------------------------------------------------------------