Skip to content

Compare the keystroke efficiency of keyboard layouts.

License

Notifications You must be signed in to change notification settings

peferron/keybench

Repository files navigation

keybench Build Status npm

Keybench evaluates the keystroke efficiency of keyboard layouts against your own input files.

$ keybench my-project/*.rs

1) French AZERTY
  - 0 characters cannot be typed
  - 15999 characters can be typed in 17700 keystrokes (avg 1.106 keystrokes per character)

2) United States ANSI QWERTY
  - 0 characters cannot be typed
  - 15999 characters can be typed in 19072 keystrokes (avg 1.192 keystrokes per character)

Installation

npm install -g keybench

Keybench has zero dependencies.

Usage

$ keybench --help

Usage:
  keybench [layout...] [--] file...

Options:
  -h, --help  Show help

Examples:
  # Benchmark all built-in layouts against sample.go and sample.scala
  keybench sample.go sample.scala

  # Benchmark all built-in layouts plus mylayout1 and mylayout2 against sample.go
  keybench mylayout1.json mylayout2.json -- sample.go

  # Benchmark all built-in layouts against stdin
  keybench -

Contribution

Built-in layouts are located in the layouts directory. The JSON structure should be self-explanatory; just make sure that the length of the modifiers array is equal to the number of extra keystrokes required to input the characters.

Pull requests for new layouts or improvements to Keybench are appreciated!

About

Compare the keystroke efficiency of keyboard layouts.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published