/* Данные тренера: раскладки, списки слов и тексты для упражнений. В русских текстах нет "ё", "«»" и "—": их нет на клавиатуре в привычных местах. */ window.TD = { /* Каждая клавиша - пара символов "без Shift" + "с Shift". Порядок = физические клавиши ряда. */ keyRows: { en: [ "`~ 1! 2@ 3# 4$ 5% 6^ 7& 8* 9( 0) -_ =+", "qQ wW eE rR tT yY uU iI oO pP [{ ]} \\|", "aA sS dD fF gG hH jJ kK lL ;: '\"", "zZ xX cC vV bB nN mM ,< .> /?" ], ru: [ "ёЁ 1! 2\" 3№ 4; 5% 6: 7? 8* 9( 0) -_ =+", "йЙ цЦ уУ кК еЕ нН гГ шШ щЩ зЗ хХ ъЪ \\/", "фФ ыЫ вВ аА пП рР оО лЛ дД жЖ эЭ", "яЯ чЧ сС мМ иИ тТ ьЬ бБ юЮ .," ] }, words: { en: ` a all ask add ads as dad sad fad fads lad lads fall falls flask flasks salad alfalfa sass lass had has gas gash hash dash lash flash slash flag flags glad glass shall hall halls half hag hags gal gals gala gall shag asks about above across after again against age ago air almost alone along already also always among and animal another answer any appear area arm around away baby back bad ball bank base be bear beat beautiful because bed before begin behind believe below best better between big bird black blue board boat body book both box boy bread bring brother build busy buy call came can car care carry case cat catch cause center chair change child children city class clean clear close cold color come common cook cool corner could country course cover cross cut dark day dead deep did different dinner do dog door down draw dream dress drink drive drop dry during each early earth east easy eat edge egg end enough even evening ever every eye face fact family far farm fast father feel feet few field fight find fine finger fire first fish five floor flower fly follow food foot for forest forget form found four free friend from front full fun game garden gave get girl give go gold gone good got grass great green ground group grow guess hair hand happy hard hat have he head hear heart heavy help her here high hill his hold home hope horse hot hour house how however hundred hurry idea if important in inside into iron is it job join jump just keep key kind king kitchen knew know lady lake land large last late laugh lay lead learn leave left leg less let letter life light like line lip list listen little live long look lost lot loud love low machine made main make man many map mark matter may me mean meet melt men middle might mile milk mind minute miss money month moon more morning most mother mountain mouth move much music must my name near need never new next night nine no noise none north nose not note nothing notice now number object ocean of off often oil old on once one only open or order other our out over own page paint pair paper part party pass past path pay people pick picture piece place plan plant play please point pool poor power press pretty problem pull push put quick quiet quite race rain ran reach read ready real red rest rich ride right ring river road rock room round rule run sad safe said salt same sand sat saw say school sea season second see seem send sentence serve set seven several shape she ship shoe shop short should show side sign simple sing sister sit six size sky sleep slow small smile snow so soft some song soon sound south space speak special spell spend spring square stand star start stay step stick still stone stop store story street strong study such summer sun sure surface sweet table take talk tall teach tell ten than thank that the their them then there these they thick thin thing think third this those though thought three through time tiny to today together told too took top toward town tree try turn two under until up us use usual very voice wait walk wall want warm was wash watch water way we wear weather week weight well went were west what wheel when where which while white who whole why wide will wind window winter wish with without woman wonder wood word work world would write year yellow yes yet you young your beautiful different important mountain together everything something sometimes remember question computer keyboard practice knowledge adventure afternoon yesterday tomorrow elephant restaurant telephone chocolate wonderful education information possibility `, ru: ` ода вода папа дар жар вор вол вал лад ад ал ар овал аврал вдова водопад ложа падал фара дрова парад пара яма мама имя кафе фея ива чума торт горох голод дорого оно блюдо долго холод город ход год гол дно тон рот лорд он она оно мы вы они мой твой наш ваш его ее их кто что где как так там тут вот вон еще уже или если но да нет не ни для про при над под без из от до за на по во об ко со бы же ли ну дом мир год день ночь утро вечер час минута неделя месяц время дело жизнь рука нога голова глаз ухо нос рот лицо сердце слово речь место город село улица площадь двор сад парк лес поле луг гора река озеро море океан остров берег небо солнце луна звезда ветер дождь снег лед туман гроза облако земля вода огонь воздух камень песок трава цветок дерево лист корень птица рыба зверь собака кошка лошадь корова овца свинья мышь заяц волк лиса медведь книга ручка тетрадь бумага стол стул кровать диван шкаф окно дверь стена пол потолок крыша комната кухня лампа часы телефон машина поезд самолет автобус дорога мост путь билет сумка ключ деньги цена магазин рынок хлеб молоко масло сыр мясо суп каша чай кофе сахар соль яблоко груша вишня лимон картофель морковь помидор огурец семья мама папа брат сестра сын дочь муж жена друг подруга дед баба ребенок мальчик девочка мужчина женщина человек люди народ страна язык школа урок класс учитель ученик студент работа завод офис врач больница лекарство спорт игра футбол музыка песня танец картина фильм театр праздник подарок письмо новость вопрос ответ проблема идея мысль причина результат начало конец сила воля память мечта любовь радость страх правда сказка история хороший плохой новый старый большой маленький высокий низкий длинный короткий широкий узкий светлый темный красный синий зеленый желтый белый черный серый быстрый медленный тихий громкий теплый холодный горячий сладкий горький кислый добрый злой умный сильный слабый веселый грустный красивый легкий трудный простой сложный свободный важный первый второй третий последний каждый другой самый такой быть мочь сказать говорить знать стать идти хотеть видеть думать делать жить смотреть найти работать писать читать любить помнить понять ждать спросить ответить дать взять пойти начать держать слушать играть учить ходить бежать лежать сидеть стоять спать есть пить петь рисовать строить открыть закрыть купить продать помочь забыть решить спешить когда тогда сейчас потом всегда никогда здесь там где куда откуда почему зачем очень сегодня завтра вчера рядом далеко близко быстро медленно хорошо плохо много мало один два три четыре пять шесть семь восемь девять десять сто тысяча клавиатура правильный интересный путешествие предложение произведение удовольствие разговаривать определенный замечательный самостоятельно образование информация возможность объект подъезд объем съезд щука борщ товарищ площадь вещь общий пища ищу цирк цель центр цвет цена улица птица лицо юг юбка июнь июль яблоко ящик язык эхо этаж экран энергия эпоха ` }, text: { en: { easy: [ "The cat sat on the mat.", "We all like to read books.", "She has a red car.", "It is a sunny day.", "The dog runs in the park.", "He drinks tea every morning.", "Birds sing in the spring.", "I have two brothers.", "My house is near the river.", "They are playing a game.", "We went to the shop.", "The sun is bright today.", "Snow falls in winter.", "Please open the window." ], caps: [ "Anna and Peter live in London.", "Yesterday John flew to Paris.", "Mary works at a school in Boston.", "The Nile flows through Egypt.", "Tom loves New York in the fall.", "We will visit Rome in July.", "Mount Everest is the highest peak.", "Lucy and Oliver went to Tokyo.", "Canada is north of the United States.", "Sarah reads Shakespeare on Sundays." ], p1: [ "In the morning I drink tea, and in the evening I drink coffee.", "He came in, sat down, and opened the book.", "When it rained, we stayed at home.", "I like autumn, because it is beautiful.", "We bought bread, milk, cheese, and apples.", "If you want success, you must work.", "She knew that he would come.", "First we ate, then we went for a walk.", "The weather is nice, but the wind is cold.", "I do not know where he is, or what he does." ], p2: [ "What is your name?", "Where are you going?", "Hooray, we won!", "What time is it?", "What are you doing tonight?", "Careful, the road is slippery!", "Why are you so quiet?", "Will you come tomorrow?", "What a wonderful day!", "Where is the station?", "Please, help me!", "Is that really true?" ], p3: [ "He bought three things: a book, a pen, and a notebook.", "One wanted to sleep; the other wanted to eat.", "Summer - the best season of the year.", "Here is my plan: wake up early, eat, and leave.", "We waited for a long time; nobody came.", "Remember the main thing: patience and work.", "A cat is a pet - it is soft and warm.", "She said: come tomorrow.", "It was a well-known, old-fashioned song." ], p4: [ "He said: \"I will be back soon.\"", "The book \"Moby Dick\" is very long.", "My friend (he lives nearby) often visits us.", "She answered: \"Of course, come in!\"", "It's a nice day, isn't it?", "I don't know what you're talking about.", "The store (on the corner) has fresh bread.", "They said they'd come, but they haven't." ], p5: [ "Wait, what? You've finished already - that's impressive!", "Dear Anna, thank you for the gift (it's lovely); see you on Friday!", "\"Why not?\" he asked. \"Because it's late,\" she said.", "Ingredients: flour, sugar, eggs, and milk (2 cups).", "Is it true? Yes - and it's only the beginning!", "Note: the shop opens at 9:30; it closes at 6.", "Hurry up, the train leaves at 7:45!", "She whispered, \"Don't tell anyone (not even Tom).\"" ], para: [ "Autumn came quietly. The leaves on the trees turned yellow and red, and in the mornings a light fog hangs over the river. People put on warm jackets, and children happily collect the prettiest leaves in the park.", "A good habit is something we do every day without thinking. To learn to type fast, you do not need to practice for hours. Twenty minutes a day is enough, as long as you practice regularly and carefully.", "A split keyboard lets you keep your hands at shoulder width. Your shoulders stay open and your wrists stay straight. At first typing feels strange, but after a couple of weeks your fingers remember the new positions of the keys.", "There is an old library in our town. It is quiet, and it smells of paper and a little of coffee from the small cafe on the ground floor. In the evenings students come here to prepare for exams, and older people come to read the newspapers.", "The sea was calm, and the boat slid slowly over the water. Far away we could see mountains covered with snow, and above our heads the gulls were crying. We were silent for a long time because words were not needed.", "Every journey begins with a first step. Do not be afraid of mistakes: they show you what to work on. Accuracy is more important than speed, because speed comes by itself when your fingers know the way." ], num: [ "In {y} there were {n} people in the hall.", "Call us at {ph} after {t}.", "The ticket costs ${p}, seat {m}, row {s}.", "Meeting on {d} at {t}.", "Order number {n} was sent on {d}.", "Room {m} is on floor {s}.", "It is {n} miles to the town.", "Page {s} of {m}.", "Her phone number is {ph}.", "The year {y} was long.", "We sold {n} items for ${p}." ], sym1: [ "user@example.com", "#typing #practice #goals", "Total: $45.50 (20% off)", "Email john.doe@mail.org today", "Save 15% on orders over $100", "@anna and @peter joined #team", "Price: $9.99 plus 8% tax", "50% of $200 is $100" ], sym2: [ "2 + 2 = 4", "a^2 + b^2 = c^2", "Tom & Jerry", "snake_case_name = 5 * 6", "(a + b) * c = ac + bc", "x = y + 1; z = x * 2", "R&D and Q&A teams", "total = (price * 3) + tax" ], sym3: [ "array[0] = {1, 2, 3};", "C:\\Users\\Admin\\Documents", "a | b / c ~ d", "
", "~/projects/app/src", "if (x > 5 && y < 3) { run(); }", "use `code` for inline text", "path/to/file.txt | sort > out.txt" ], /* Упражнения на слои: много цифр и символов, которых нет на базовом слое */ lsym: [ "a[3] = {1, 2, 3};", "x = y + 12 * (z - 4);", "path = \"C:\\\\temp\\\\log_07.txt\";", "arr[0] = arr[1] | 255;", "total = [10, 20, 30]; sum = 60;", "if (n == 42) { ok = 1; }", "id=7&page=15&size=200", "cfg = { w: 640, h: 480 };", "~/dev/app_2/src/main.c", "`npm run build` takes 90 sec", "a1 = [1, 2]; a2 = [3, 4]; // 14", "v = (a + b) * [c - 5] / 8;" ], lcode: [ "for (let i = 0; i < 100; i++) { sum += arr[i]; }", "const rows = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];", "if (a[2] >= 10 && b[3] <= 20) { total = a[2] + b[3]; }", "SELECT id, price FROM items WHERE price > 100;", "x = {\"a\": 1, \"b\": [2, 3], \"c\": 4};", "let mask = (flags & 0xFF) | 0x10;", "path = `/api/v2/users/${id}/posts/5`;", "while (n > 0) { s += n % 10; n = n / 10; }" ], ltext: [ "In 2024 we sold 1250 books, 340 maps, and 78 posters for $4521.", "Room 214 is on floor 2; the key is in box 37.", "Flight 805 leaves at 06:45 and lands at 09:10 on 12/05/2025.", "Call 555-0142 before 5, or 555-0187 after 6.", "The recipe needs 3 eggs, 250 g of flour, 2 cups of milk, and 1 pinch of salt.", "Chapter 12 starts on page 187 and ends on page 203.", "Order #4821: 6 items, total $93.50, delivery in 3 days.", "Score: 3 - 2 after 90 minutes, then 4 - 3 on penalties." ], code: [ "for (let i = 0; i < 10; i++) { sum += i; }", "const name = 'Alex';", "function add(a, b) { return a + b; }", "if (a >= b) { print(\"yes\"); } else { print(\"no\"); }", "SELECT * FROM users WHERE age > 18;", "Home", "#include