{"_id":"ansi-keycode","_rev":"479709","name":"ansi-keycode","description":"map browser keycodes to ansi characters and escape sequences","dist-tags":{"latest":"0.0.0"},"maintainers":[{"name":"substack","email":""}],"time":{"modified":"2021-08-05T09:31:28.000Z","created":"2013-10-18T01:51:20.580Z","0.0.0":"2013-10-18T01:51:20.580Z"},"users":{"nwinant":true},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"repository":{"type":"git","url":"git://github.com/substack/ansi-keycode.git"},"versions":{"0.0.0":{"name":"ansi-keycode","version":"0.0.0","description":"map browser keycodes to ansi characters and escape sequences","main":"index.js","dependencies":{},"devDependencies":{"tape":"~1.0.4"},"scripts":{"test":"tape test/*.js"},"repository":{"type":"git","url":"git://github.com/substack/ansi-keycode.git"},"homepage":"https://github.com/substack/ansi-keycode","keywords":["ansi","keycode","event","ev.which","ev.keycode","browser"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/ansi-keycode/issues"},"_id":"ansi-keycode@0.0.0","dist":{"shasum":"85bfbebd2d0c07da9610472c36a5854c912ed963","size":2533,"noattachment":false,"key":"/ansi-keycode/-/ansi-keycode-0.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ansi-keycode/download/ansi-keycode-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":""}],"directories":{},"publish_time":1382061080580,"_hasShrinkwrap":false,"_cnpm_publish_time":1382061080580}},"readme":"# ansi-keycode\n\nTurn browser keycodes into ansi characters and escape sequences.\n\n# example\n\n## simple repl example\n\n```\n$ node\n> require('ansi-keycode')(97)\n'a'\n> require('ansi-keycode')(36) // HOME key\n'\\u001bOH'\n> require('ansi-keycode')(220)\n'\\\\'\n```\n\n## browser->server\n\nthe browser forwards its decoded events to the server:\n\n``` js\nvar decode = require('ansi-keycode');\nvar shoe = require('shoe');\nvar sock = shoe('/sock');\n\nwindow.addEventListener('keydown', function (ev) {\n    var c = decode(ev);\n    if (c) sock.write(c);\n});\n```\n\nand the server.js will print what is typed in the browser:\n\n``` js\nvar http = require('http');\nvar shoe = require('shoe');\nvar ecstatic = require('ecstatic')(__dirname + '/static');\n\nvar server = http.createServer(ecstatic);\nserver.listen(8000);\n\nvar sock = shoe(function (stream) {\n    stream.pipe(process.stdout);\n});\nsock.install(server, '/sock');\n```\n\n# methods\n\n``` js\nvar decode = require('ansi-keycode')\n```\n\n## decode(ev, opts)\n\nReturn the ansi string for `ev.which` or the keycode integer `ev`.\n\nIf `opts.arrows` is `false`, don't include escape sequences for arrow keys.\n\nIf `opts.delete` is `false`, don't include escape sequences for the delete key.\n\nIf `opts.backspace` is `false`, don't include escape sequences for the backspace\nkey.\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install ansi-keycode\n```\n\n# license\n\nMIT\n","_attachments":{},"readmeFilename":"readme.markdown","homepage":"https://github.com/substack/ansi-keycode","bugs":{"url":"https://github.com/substack/ansi-keycode/issues"},"license":"MIT"}