0.7.2 • Published 10 years ago

keyconfig v0.7.2

Weekly downloads
1
License
MIT
Repository
github
Last release
10 years ago

keyconfig

stores keyboard shortcut definitions.

usage

var keyconfig = new Keyconfig({
  x: [ 
    { 
      name: 'foo', 
      binding: [ [ 'ctrl+z' ], [ 'command+z' ] ]
    } 
  ]
});

keyconfig
  .on('change', function (collection, model) { });
  .find({ name: 'x '})
  .find({ name: 'foo' })
  .update({ binding: ['command+d'] });

spec

Below is an example of a collection:

{
  "editor":
  [
    {
      "name": "save",
      "description": "Save",
      "binding": [
        [ "ctrl+s" ],
        [ "command+s" ]
      ],
      "options": {
        "enabled": true
      }
    }
  ]
}

### fields

  • name must be unique
  • binding is an array of two arrays that defines win and mac shortcuts respectively
  • description is description text
  • options is always extended when you do update

api

keyconfig(collections={})

Collection(name, models=[])

.add(model)

.update(name, value={}, silent=false)

.toJSON()

.getCollidingWin()

.getCollidingMac()

Keyconfig and Collection instances also proxy underscore methods.

Model(value={})

.update(value={}, silent=false)

.getWinKeys()

.getMacKeys()

.getWinChecksum()

.getMacChecksum()

.toJSON()

Updating a model triggers a change event that bubble up.

license

mit

0.7.2

10 years ago

0.7.1

10 years ago

0.7.0

10 years ago

0.6.1

10 years ago

0.6.0

10 years ago

0.5.0

10 years ago

0.4.0

10 years ago

0.3.2

10 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.1

10 years ago