Giter Site home page Giter Site logo

keys.js's Introduction

Keys.js

For a quick look at the kind of solution that Keys.js is intended to provide, check out the demo application.

This project spawned out of a Chrome extension I was working on where I kept handling more and more key combinations for shortcut actions, until it eventually became an unmaintainable rats nest. Obviously I needed a solution, and Keys.js was born.

Installation

$ npm install --save keys.js

Status

Stable, but it's a new project, so as always, caveat emptor. The documentation is very close to comprehensive, but some work needs to be done. The test suite is comprehensive, and very few gaps are left to fill there that are meaningful. Please help me identify any gaps in functionality, testing, or docs, by submitting issues so that I can prioritize things as needed. The current list of things I am working on is as follows:

  • Implement locale selection, locale loading
  • Implement Sequences (non-chord key combinations)
  • Implement scoped bindings (only execute a binding if focus is within the scope of a given element)
  • Comprehensive documentation (good progress already)
  • Discover additional use cases that aren't covered as well as they could be
  • Implement a faux-Vim example to demonstrate a complex usecase of keybindings in a web application.

Check out the Keys.js home page for information on browser support, dependencies, examples, and in-depth description of how Keys.js works.

License

MIT

See LICENSE file

keys.js's People

Contributors

bitwalker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

keys.js's Issues

Simple bootstrap problem

When I resize my window the twitter bootstrap's css make the demo looks like this:

keys js-bootstrap-problem

its very simple to solve, if you reorder the <link> tags it works.

I will submit a pull request for that!

webpack support?

Any plans to support Webpack?

If I include the library via bower, works as expected but using webpack I am getting the following error:

keys.js:959 
Uncaught TypeError: Cannot read property 'addEventListener' of undefined

it seems the library being loaded by webpack does not get initialized properly -- global is null

CC BY-SA might be a bad idea

If you choose a copyleft license for software, please choose one that’s compatible with as many other licenses as possible. Unfortunately, that’s not the case for CC BY-SA (which, BTW, was probably not meant really for software where there are plenty of licenses already).

If you want a license with copyleft: you can choose, among others:

  • Mozilla Public License version 2 (compatible with GNU GPLv3 and Apache License v2)
  • GNU General Public License version 3
  • or also the AGPL or the LGPL…

Demo page

Hey, what do you think about create a demo page! A github demo page would be great!

npm support?

Hi, great library, thanks for building it. Do you plan on adding npm support?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.