atom-keymap
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/atom-keymap package

8.2.15 • Public • Published

Atom keymap

Build Status Dependency Status

Atom's DOM-aware keymap module

var KeymapManager, keymaps;
KeymapManager = require('atom-keymap')

keymaps = new KeymapManager
keymaps.defaultTarget = document.body

// Pass all the window's keydown events to the KeymapManager
document.addEventListener('keydown', function(event) {
  keymaps.handleKeyboardEvent(event)
})

// Add some keymaps
keymaps.loadKeymap('/path/to/keymap-file.json') // can also be a directory of json / cson files
// OR
keymaps.add('/key/for/these/keymaps', {
  "body": {
    "up": "core:move-up",
    "down": "core:move-down"
  }
})

// When a keybinding is triggered, it will dispatch it on the node that was focused
window.addEventListener('core:move-up', (event) => console.log('up', event))
window.addEventListener('core:move-down', (event) => console.log('down', event))

Development

The tests for this module must be run in Electron because they depend on browser APIs.

  • devtool is bundled as a development dependency to run the tests.
  • Native modules need to be compiled against the version of Electron included with devtool. Be sure to run electron-rebuild be sure recompile native dependencies before running tests.
  • Tests can be run in batch mode with npm test
  • If you want to use the debugger, profiler, etc or just speed up your flow by being able to refresh the devtool window to re-run tests, use the npm run test-drive script. This will keep devtool open instead of exiting after the test run.

/atom-keymap/

    Package Sidebar

    Install

    npm i atom-keymap

    Weekly Downloads

    81

    Version

    8.2.15

    License

    MIT

    Unpacked Size

    104 kB

    Total Files

    17

    Last publish

    Collaborators

    • izuzak
    • probablycorey
    • benogle
    • nathansobo
    • smashwilson
    • kevinsawicki
    • maxbrunsfeld
    • zcbenz
    • as-cii
    • daviwil
    • iolsen
    • ben3eee
    • atom-team
    • jasonrudolph