meta-keys

Get the state of any pressed meta keys, differentiating between their left/right location on the keyboard


Keywords
left, right, meta, ctrl, control, option, alt, command, cmd, key, keyboard, ui
License
MIT
Install
npm install meta-keys@1.1.0

Documentation

meta-keys

Get the state of any pressed meta keys, differentiating between their left/right location on the keyboard.

Usage

NPM

keys = MetaKeys([element], [capture])

Creates a new instance of meta-keys, listening to keyboard events fired on element. If element is not supplied, window will be used.

const keys = require('meta-keys')()

setInterval(function () {
  if (keys.shift[0]) {
    console.log('Left shift key is down')
  }
  if (keys.shift[1]) {
    console.log('Right shift key is down')
  }
}, 1000)

Optionally, you may pass capture as true to catch keyboard events before they're caught and disabled by any other scripts. For example, this is required in Atom:

const atomMeta = require('meta-keys')(null, true)

keys.shift

A [left, right] array of booleans, which are true when the Shift key is pressed.

keys.meta

A [left, right] array of booleans, which are true when the Meta key is pressed (either the Windows key on Windows or Command on OSX).

keys.ctrl

A [left, right] array of booleans, which are true when the Control key is pressed.

keys.alt

A [left, right] array of booleans, which are true when the Alt/Option key is pressed.

keys.dispose()

Removes all attached event listeners and sets all key states to false. To be used for cleaning up after yourself if required.

License

MIT. See LICENSE.md for details.