public static byte[] setG1Str(string str, bool jp) { Dictionary<string, byte> dict = jp ? U2RBY_J : U2RBY_U; if (dict.ContainsKey(str)) return new[] {dict[str], dict["\0"]}; return str .TakeWhile(c => dict.ContainsKey(c.ToString())) .Select(c => dict[c.ToString()]) .Concat(new[] {dict["\0"]}) .ToArray(); }
  • ~
    `
  • !
    1
  • @
    2
  • #
    3
  • $
    4
  • %
    5
  • ^
    6
  • &
    7
  • *
    8
  • (
    9
  • )
    0
  • _
    -
  • +
    =
  • Backspace
  • Tab
  • Q
  • W
  • E
  • R
  • T
  • Y
  • U
  • I
  • O
  • P
  • {
    [
  • }
    ]
  • |
    \
  • CapsLock
  • A
  • S
  • D
  • F
  • G
  • H
  • J
  • K
  • L
  • :
    ;
  • "
    '
  • Enter
  • Shift
  • Z
  • X
  • C
  • V
  • B
  • N
  • M
  • <
    ,
  • >
    .
  • ?
    /
  • Shift
  • Ctrl
  • Fn
  • win
  • Alt
  • Alt
  • Ctrl
Please open this page on a larger display
:




Hide Keyboard
Loading...



How to Use?
  • Look at the program and start typing the same
  • The keyboard on the screen shows where your fingers should be placed highlighted keys are the assigned keys for the respective finger
  • After completing this program you can see your WPM (words per minute), Accuracy and Keys with most mistakes
Equations used

WPM tells how fast you type, considering mistakes

An uncorrected mistake per minute brings down your WPM by 1.


wpm

Accuracy defines percentage of correct typed character out of total typed characters.


wpm

Why are group of keys highlighted?

In touch typing, every finger is assigned to a specific group of keys. for example the left hand middle finger is supposed to hit keys: 3 E D and C only.

What are keyboard layouts?

You must be familiar with QWERTY keyboard, as it is the most widely used. But this is not the only layout used. Many people prefer to use the Dvorak keyboard as it is designed to increase typing speed, decrease errors and provide comfort. Colemak is also an alternative to QWERTY. The QWERTZ layout is used in Germany, Austria and Switzerland. Many more layouts are also available.

What is forced correction?

Forced correction does not let you proceed if you have typed the current character wrong. you can only proceed if you correct your mistake. Therefore it forces you to correct your mistake.