You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ORPA-pyOpenRPA/Resources/Help/keyboard · PyPI.html

1790 lines
71 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<!-- saved from url=(0046)https://pypi.org/project/keyboard/#description -->
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="defaultLanguage" content="en">
<meta name="availableLanguages" content="en">
<title>keyboard · PyPI</title>
<meta name="description" content="Hook and simulate keyboard events on Windows and Linux">
<link rel="stylesheet" href="./keyboard · PyPI_files/warehouse.6b3cae16.css">
<link rel="stylesheet" href="./keyboard · PyPI_files/fontawesome.91df071f.css">
<link rel="stylesheet" href="./keyboard · PyPI_files/regular.8819f1a9.css">
<link rel="stylesheet" href="./keyboard · PyPI_files/solid.002489ee.css">
<link rel="stylesheet" href="./keyboard · PyPI_files/brands.0c9eb08b.css">
<link rel="stylesheet" href="./keyboard · PyPI_files/css">
<noscript>
<link rel="stylesheet" href="/static/css/noscript.69d08c82.css">
</noscript>
<link rel="icon" href="https://pypi.org/static/images/favicon.6a76275d.ico" type="image/x-icon">
<link rel="alternate" type="application/rss+xml" title="RSS: 40 latest updates" href="https://pypi.org/rss/updates.xml">
<link rel="alternate" type="application/rss+xml" title="RSS: 40 newest packages" href="https://pypi.org/rss/packages.xml">
<link rel="canonical" href="https://pypi.org/project/keyboard/">
<meta property="og:url" content="https://pypi.org/project/keyboard/">
<meta property="og:site_name" content="PyPI">
<meta property="og:type" content="website">
<meta property="og:image" content="https://pypi.org/static/images/twitter.c0030826.jpg">
<meta property="og:title" content="keyboard">
<meta property="og:description" content="Hook and simulate keyboard events on Windows and Linux">
<link rel="search" type="application/opensearchdescription+xml" title="PyPI" href="https://pypi.org/opensearch.xml">
<script src="./keyboard · PyPI_files/lib.23f53f0dd5fed5e0b8788024646a4167734db1c0.js.Без названия"></script><script type="text/javascript" async="" src="./keyboard · PyPI_files/analytics.js.Без названия"></script><script src="./keyboard · PyPI_files/raven.min.js.Без названия" integrity="sha384-D6LXy67EIC102DTuqypxwQsTHgiatlbvg7q/1YAWFb6lRyZ1lIZ6bGDsX7jxHNKA" crossorigin="anonymous">
</script>
<script async="" data-ga-id="UA-55961911-1" data-sentry-frontend-dsn="https://3a67b35c9dc248a191d761410b095861@sentry.io/1231155" src="./keyboard · PyPI_files/warehouse.ea40d9aa.js.Без названия">
</script>
<script async="" src="./keyboard · PyPI_files/js"></script>
<script defer="" src="./keyboard · PyPI_files/insights.js.Без названия"></script>
</head>
<body data-controller="viewport-toggle" style="padding-top: 0px;">
<!-- Accessibility: this link should always be the first piece of content inside the body-->
<a href="https://pypi.org/project/keyboard/#content" class="skip-to-content">Skip to main content</a>
<button class="button button--primary button--switch-to-mobile hidden" data-target="viewport-toggle.switchToMobile" data-action="viewport-toggle#switchToMobile">
Switch to mobile version
</button>
<section id="sticky-notifications" class="stick-to-top js-stick-to-top">
<!-- Add browser warning. Will show for ie9 and below -->
<!--[if IE]>
<div class="notification-bar notification-bar--danger">
<span class="notification-bar__icon">
<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>
<span class="sr-only">Warning:</span>
</span>
<span class="notification-bar__message">You are using an unsupported browser, upgrade to a newer version.</span>
</div>
<![endif]-->
<noscript>
<div class="notification-bar notification-bar--danger">
<span class="notification-bar__icon">
<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>
<span class="sr-only">Warning:</span>
</span>
<span class="notification-bar__message">Some features may not work without JavaScript. Please try enabling it if you encounter problems.</span>
</div>
</noscript>
</section>
<div class="notification-bar">
<span class="notification-bar__message">
Donate to the Python Software Foundation or Purchase a PyCharm License to Benefit the PSF!
<a href="https://www.python.org/psf/donations/2019-q2-drive/" target="_blank" title="Donate to the Python Software Foundation">Donate Now</a>
</span>
</div>
<div data-html-include="/_includes/flash-messages/">
</div>
<div data-html-include="/_includes/session-notifications/">
</div>
<header class="site-header ">
<div class="site-container">
<div class="split-layout">
<div class="split-layout">
<div>
<a class="site-header__logo" href="https://pypi.org/">
<img alt="PyPI" src="./keyboard · PyPI_files/logo-small.6eef541e.svg">
</a>
</div>
<form class="search-form search-form--primary" action="https://pypi.org/search/">
<div role="search">
<label for="search" class="sr-only">Search PyPI</label>
<input id="search" class="search-form__search" type="text" name="q" placeholder="Search projects" value="">
<button type="submit" class="search-form__button">
<i class="fa fa-search" aria-hidden="true"></i>
<span class="sr-only">Search</span>
</button>
</div>
</form>
</div>
<div data-html-include="/_includes/current-user-indicator/">
<nav id="user-indicator" class="horizontal-menu horizontal-menu--light horizontal-menu--tall" aria-label="Main navigation">
<a class="horizontal-menu__link horizontal-menu__link--remove-on-mobile" href="https://pypi.org/help/">Help</a>
<a class="horizontal-menu__link horizontal-menu__link--remove-on-mobile" href="https://donate.pypi.org/">Donate</a>
<a class="horizontal-menu__link" href="https://pypi.org/account/login/">Log in</a>
<a class="horizontal-menu__link" href="https://pypi.org/account/register/">Register</a>
</nav>
</div>
</div>
</div>
</header>
<section class="mobile-search">
<form class="search-form search-form--fullwidth" action="https://pypi.org/search/">
<div role="search">
<label for="mobile-search" class="sr-only">Search PyPI</label>
<input id="mobile-search" class="search-form__search" type="text" name="q" placeholder="Search projects" value="">
<button type="submit" class="search-form__button">
<i class="fa fa-search" aria-hidden="true"></i>
<span class="sr-only">Search</span>
</button>
</div>
</form>
</section>
<main id="content">
<section class="banner">
<div class="package-header">
<div class="package-header__left">
<h1 class="package-header__name">
keyboard 0.13.3
</h1>
<p class="package-header__pip-instructions">
<span id="pip-command">pip install keyboard</span>
<button class="-js-copy-pip-command tooltipped tooltipped-s" data-clipboard-target="#pip-command" aria-label="Copy to clipboard" data-original-label="Copy to clipboard">
<i class="fa fa-copy" aria-hidden="true"></i>
<span class="sr-only">Copy PIP instructions<span>
</span></span></button>
</p>
</div>
<div class="package-header__right">
<a class="status-badge status-badge--good" href="https://pypi.org/project/keyboard/">Latest version</a>
<p class="package-header__date">Last released: <time class="-js-relative-time" datetime="2019-03-18T08:52:09+0000" data-controller="localized-time" data-localized-time-relative="true">Mar 18, 2019</time></p>
</div>
</div>
</section>
<section class="horizontal-section horizontal-section--grey horizontal-section--thin">
<div class="site-container">
<div class="split-layout split-layout--middle package-description">
<p class="package-description__summary">Hook and simulate keyboard events on Windows and Linux</p>
<div data-html-include="/_includes/edit-project-button/keyboard"></div>
</div>
</div>
</section>
<section data-controller="project-tabs" data-project-tabs-content="description">
<div class="tabs-container">
<div class="vertical-tabs">
<div class="vertical-tabs__tabs">
<div class="sidebar-section">
<h3 class="sidebar-section__title">Navigation</h3>
<nav role="tablist">
<a id="description-tab" data-target="project-tabs.tab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--is-active" href="https://pypi.org/project/keyboard/#description" role="tab">
<i class="fa fa-align-left" aria-hidden="true"></i>
Project description
</a>
<a id="history-tab" data-target="project-tabs.tab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon" href="https://pypi.org/project/keyboard/#history" role="tab">
<i class="fa fa-history" aria-hidden="true"></i>
Release history
</a>
<a id="files-tab" data-target="project-tabs.tab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon" href="https://pypi.org/project/keyboard/#files" role="tab">
<i class="fa fa-download" aria-hidden="true"></i>
Download files
</a>
</nav>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Project links</h3>
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed" href="https://github.com/boppreh/keyboard" rel="nofollow">
<i class="fas fa-home" aria-hidden="true"></i>Homepage
</a>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Statistics</h3>
<div class="github-repo-info" data-url="https://api.github.com/repos/boppreh/keyboard">
GitHub statistics:
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed github-repo-info__item" data-key="html_url" data-attr="href" data-supplement="/stargazers" rel="noopener" target="_blank" href="https://github.com/boppreh/keyboard/stargazers">
<i class="fa fa-star" aria-hidden="true"></i>
<strong>Stars: </strong>
<span class="github-repo-info__item" data-key="stargazers_count">1&nbsp;448</span>
</a>
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed github-repo-info__item" data-key="html_url" data-attr="href" data-supplement="/network" rel="noopener" target="_blank" href="https://github.com/boppreh/keyboard/network">
<i class="fa fa-code-branch" aria-hidden="true"></i>
<strong>Forks: </strong>
<span class="github-repo-info__item" data-key="forks_count">160</span>
</a>
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed github-repo-info__item" data-key="html_url" data-attr="href" data-supplement="/issues" rel="noopener" target="_blank" href="https://github.com/boppreh/keyboard/issues">
<i class="fa fa-exclamation-circle" aria-hidden="true"></i>
<strong>Open issues/PRs: </strong>
<span class="github-repo-info__item" data-key="open_issues_count">126</span>
</a>
</div>
<p>View statistics for this project via <a href="https://libraries.io/pypi/keyboard">Libraries.io</a>, or by using
<a href="https://packaging.python.org/guides/analyzing-pypi-package-downloads/">Google
BigQuery</a></p>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Meta</h3>
<p><strong>License:</strong> MIT License (MIT)</p>
<p><strong>Author:</strong> <a href="mailto:boppreh@gmail.com">BoppreH</a></p>
<p class="tags">
<i class="fa fa-tags" aria-hidden="true"></i>
<span class="sr-only">Tags:</span>
<span class="package-keyword">
keyboard,
</span>
<span class="package-keyword">
hook,
</span>
<span class="package-keyword">
simulate,
</span>
<span class="package-keyword">
hotkey
</span>
</p>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Maintainers</h3>
<span class="sidebar-section__maintainer">
<a href="https://pypi.org/user/BoppreH/" aria-label="BoppreH" class="sidebar-section__user-gravatar">
<img src="./keyboard · PyPI_files/68747470733a2f2f7365637572652e67726176617461722e636f6d2f6176617461722f63366235353162363539383061643764356632353737363837643565616665393f73697a653d3530" height="50" width="50" alt="Avatar for BoppreH from gravatar.com" title="Avatar for BoppreH from gravatar.com">
</a>
<a href="https://pypi.org/user/BoppreH/" class="sidebar-section__user-gravatar-text">
BoppreH
</a>
</span>
</div>
<div class="sidebar-section classifiers">
<h3>Classifiers</h3>
<dl>
<dt>Development Status</dt>
<dd>
<a href="https://pypi.org/search/?c=Development+Status+%3A%3A+4+-+Beta">
4 - Beta
</a>
</dd>
<dt>License</dt>
<dd>
<a href="https://pypi.org/search/?c=License+%3A%3A+OSI+Approved+%3A%3A+MIT+License">
OSI Approved :: MIT License
</a>
</dd>
<dt>Operating System</dt>
<dd>
<a href="https://pypi.org/search/?c=Operating+System+%3A%3A+MacOS+%3A%3A+MacOS+X">
MacOS :: MacOS X
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Operating+System+%3A%3A+Microsoft+%3A%3A+Windows">
Microsoft :: Windows
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Operating+System+%3A%3A+Unix">
Unix
</a>
</dd>
<dt>Programming Language</dt>
<dd>
<a href="https://pypi.org/search/?c=Programming+Language+%3A%3A+Python+%3A%3A+2">
Python :: 2
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Programming+Language+%3A%3A+Python+%3A%3A+3">
Python :: 3
</a>
</dd>
<dt>Topic</dt>
<dd>
<a href="https://pypi.org/search/?c=Topic+%3A%3A+Software+Development+%3A%3A+Libraries+%3A%3A+Python+Modules">
Software Development :: Libraries :: Python Modules
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Topic+%3A%3A+Utilities">
Utilities
</a>
</dd>
</dl>
</div>
</div>
<div class="vertical-tabs__panel">
<!-- mobile menu -->
<nav>
<a id="mobile-description-tab" data-target="project-tabs.mobileTab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--mobile vertical-tabs__tab--no-top-border vertical-tabs__tab--is-active" href="https://pypi.org/project/keyboard/#description">
<i class="fa fa-align-left" aria-hidden="true"></i>
Project description
</a>
<a id="mobile-data-tab" data-target="project-tabs.mobileTab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--mobile" href="https://pypi.org/project/keyboard/#data">
<i class="fa fa-info-circle" aria-hidden="true"></i>
Project details
</a>
<a id="mobile-history-tab" data-target="project-tabs.mobileTab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--mobile" href="https://pypi.org/project/keyboard/#history">
<i class="fa fa-history" aria-hidden="true"></i>
Release history
</a>
<a id="mobile-files-tab" data-target="project-tabs.mobileTab" data-action="project-tabs#onTabClick" class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--mobile" href="https://pypi.org/project/keyboard/#files">
<i class="fa fa-download" aria-hidden="true"></i>
Download files
</a>
</nav>
<div id="description" data-target="project-tabs.content" class="vertical-tabs__content" role="tabpanel" aria-labelledby="description-tab mobile-description-tab" style="display: block;">
<h2 class="page-title">Project description</h2>
<div class="project-description">
<p>Take full control of your keyboard with this small Python library. Hook
global events, register hotkeys, simulate key presses and much more.</p>
<div id="features">
<h2>Features</h2>
<ul>
<li><strong>Global event hook</strong> on all keyboards (captures keys regardless of
focus).</li>
<li><strong>Listen</strong> and <strong>send</strong> keyboard events.</li>
<li>Works with <strong>Windows</strong> and <strong>Linux</strong> (requires sudo), with
experimental <strong>OS X</strong> support (thanks @glitchassassin!).</li>
<li><strong>Pure Python</strong>, no C modules to be compiled.</li>
<li><strong>Zero dependencies</strong>. Trivial to install and deploy, just copy the
files.</li>
<li><strong>Python 2 and 3</strong>.</li>
<li>Complex hotkey support (e.g. <tt>ctrl+shift+m, ctrl+space</tt>) with
controllable timeout.</li>
<li>Includes <strong>high level API</strong> (e.g. <a href="https://pypi.org/project/keyboard/#keyboard.record" rel="nofollow">record</a> and
<a href="https://pypi.org/project/keyboard/#keyboard.play" rel="nofollow">play</a>,
<a href="https://pypi.org/project/keyboard/#keyboard.add_abbreviation" rel="nofollow">add_abbreviation</a>).</li>
<li>Maps keys as they actually are in your layout, with <strong>full
internationalization support</strong> (e.g. <tt>Ctrl+ç</tt>).</li>
<li>Events automatically captured in separate thread, doesnt block main
program.</li>
<li>Tested and documented.</li>
<li>Doesnt break accented dead keys (Im looking at you, pyHook).</li>
<li>Mouse support available via project
<a href="https://github.com/boppreh/mouse" rel="nofollow">mouse</a> (<tt>pip install mouse</tt>).</li>
</ul>
</div>
<div id="usage">
<h2>Usage</h2>
<p>Install the <a href="https://pypi.python.org/pypi/keyboard/" rel="nofollow">PyPI package</a>:</p>
<pre>pip install keyboard
</pre>
<p>or clone the repository (no installation required, source files are
sufficient):</p>
<pre>git clone https://github.com/boppreh/keyboard
</pre>
<p>or <a href="https://github.com/boppreh/keyboard/archive/master.zip" rel="nofollow">download and extract the
zip</a> into
your project folder.</p>
<p>Then check the <a href="https://github.com/boppreh/keyboard#api" rel="nofollow">API docs
below</a> to see what features
are available.</p>
</div>
<div id="example">
<h2>Example</h2>
<pre><span class="kn">import</span> <span class="nn">keyboard</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">press_and_release</span><span class="p">(</span><span class="s1">'shift+s, space'</span><span class="p">)</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'The quick brown fox jumps over the lazy dog.'</span><span class="p">)</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">add_hotkey</span><span class="p">(</span><span class="s1">'ctrl+shift+a'</span><span class="p">,</span> <span class="k">print</span><span class="p">,</span> <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="s1">'triggered'</span><span class="p">,</span> <span class="s1">'hotkey'</span><span class="p">))</span>
<span class="c1"># Press PAGE UP then PAGE DOWN to type "foobar".</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">add_hotkey</span><span class="p">(</span><span class="s1">'page up, page down'</span><span class="p">,</span> <span class="k">lambda</span><span class="p">:</span> <span class="n">keyboard</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'foobar'</span><span class="p">))</span>
<span class="c1"># Blocks until you press esc.</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">wait</span><span class="p">(</span><span class="s1">'esc'</span><span class="p">)</span>
<span class="c1"># Record events until 'esc' is pressed.</span>
<span class="n">recorded</span> <span class="o">=</span> <span class="n">keyboard</span><span class="o">.</span><span class="n">record</span><span class="p">(</span><span class="n">until</span><span class="o">=</span><span class="s1">'esc'</span><span class="p">)</span>
<span class="c1"># Then replay back at three times the speed.</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">play</span><span class="p">(</span><span class="n">recorded</span><span class="p">,</span> <span class="n">speed_factor</span><span class="o">=</span><span class="mi">3</span><span class="p">)</span>
<span class="c1"># Type @@ then press space to replace with abbreviation.</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">add_abbreviation</span><span class="p">(</span><span class="s1">'@@'</span><span class="p">,</span> <span class="s1">'my.long.email@example.com'</span><span class="p">)</span>
<span class="c1"># Block forever, like `while True`.</span>
<span class="n">keyboard</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
</pre>
</div>
<div id="known-limitations">
<h2>Known limitations:</h2>
<ul>
<li>Events generated under Windows dont report device id
(<tt>event.device == None</tt>).
<a href="https://github.com/boppreh/keyboard/issues/21" rel="nofollow">#21</a></li>
<li>Media keys on Linux may appear nameless (scan-code only) or not at
all. <a href="https://github.com/boppreh/keyboard/issues/20" rel="nofollow">#20</a></li>
<li>Key suppression/blocking only available on Windows.
<a href="https://github.com/boppreh/keyboard/issues/22" rel="nofollow">#22</a></li>
<li>To avoid depending on X, the Linux parts reads raw device files
(<tt>/dev/input/input*</tt>) but this requries root.</li>
<li>Other applications, such as some games, may register hooks that
swallow all key events. In this case <tt>keyboard</tt> will be unable to
report events.</li>
<li>This program makes no attempt to hide itself, so dont use it for
keyloggers or online gaming bots. Be responsible.</li>
</ul>
</div>
</div>
</div>
<div id="data" data-target="project-tabs.content" class="vertical-tabs__content" role="tabpanel" aria-labelledby="mobile-data-tab" style="display: none;">
<h2 class="page-title">Project details</h2>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Project links</h3>
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed" href="https://github.com/boppreh/keyboard" rel="nofollow">
<i class="fas fa-home" aria-hidden="true"></i>Homepage
</a>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Statistics</h3>
<div class="github-repo-info hidden" data-url="https://api.github.com/repos/boppreh/keyboard">
GitHub statistics:
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed github-repo-info__item" data-key="html_url" data-attr="href" data-supplement="/stargazers" rel="noopener" target="_blank" href="https://github.com/boppreh/keyboard/stargazers">
<i class="fa fa-star" aria-hidden="true"></i>
<strong>Stars: </strong>
<span class="github-repo-info__item" data-key="stargazers_count">1&nbsp;448</span>
</a>
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed github-repo-info__item" data-key="html_url" data-attr="href" data-supplement="/network" rel="noopener" target="_blank" href="https://github.com/boppreh/keyboard/network">
<i class="fa fa-code-branch" aria-hidden="true"></i>
<strong>Forks: </strong>
<span class="github-repo-info__item" data-key="forks_count">160</span>
</a>
<a class="vertical-tabs__tab vertical-tabs__tab--with-icon vertical-tabs__tab--condensed github-repo-info__item" data-key="html_url" data-attr="href" data-supplement="/issues" rel="noopener" target="_blank" href="https://github.com/boppreh/keyboard/issues">
<i class="fa fa-exclamation-circle" aria-hidden="true"></i>
<strong>Open issues/PRs: </strong>
<span class="github-repo-info__item" data-key="open_issues_count">126</span>
</a>
</div>
<p>View statistics for this project via <a href="https://libraries.io/pypi/keyboard">Libraries.io</a>, or by using
<a href="https://packaging.python.org/guides/analyzing-pypi-package-downloads/">Google
BigQuery</a></p>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Meta</h3>
<p><strong>License:</strong> MIT License (MIT)</p>
<p><strong>Author:</strong> <a href="mailto:boppreh@gmail.com">BoppreH</a></p>
<p class="tags">
<i class="fa fa-tags" aria-hidden="true"></i>
<span class="sr-only">Tags:</span>
<span class="package-keyword">
keyboard,
</span>
<span class="package-keyword">
hook,
</span>
<span class="package-keyword">
simulate,
</span>
<span class="package-keyword">
hotkey
</span>
</p>
</div>
<div class="sidebar-section">
<h3 class="sidebar-section__title">Maintainers</h3>
<span class="sidebar-section__maintainer">
<a href="https://pypi.org/user/BoppreH/" aria-label="BoppreH" class="sidebar-section__user-gravatar">
<img src="./keyboard · PyPI_files/68747470733a2f2f7365637572652e67726176617461722e636f6d2f6176617461722f63366235353162363539383061643764356632353737363837643565616665393f73697a653d3530" height="50" width="50" alt="Avatar for BoppreH from gravatar.com" title="Avatar for BoppreH from gravatar.com">
</a>
<a href="https://pypi.org/user/BoppreH/" class="sidebar-section__user-gravatar-text">
BoppreH
</a>
</span>
</div>
<div class="sidebar-section classifiers">
<h3>Classifiers</h3>
<dl>
<dt>Development Status</dt>
<dd>
<a href="https://pypi.org/search/?c=Development+Status+%3A%3A+4+-+Beta">
4 - Beta
</a>
</dd>
<dt>License</dt>
<dd>
<a href="https://pypi.org/search/?c=License+%3A%3A+OSI+Approved+%3A%3A+MIT+License">
OSI Approved :: MIT License
</a>
</dd>
<dt>Operating System</dt>
<dd>
<a href="https://pypi.org/search/?c=Operating+System+%3A%3A+MacOS+%3A%3A+MacOS+X">
MacOS :: MacOS X
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Operating+System+%3A%3A+Microsoft+%3A%3A+Windows">
Microsoft :: Windows
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Operating+System+%3A%3A+Unix">
Unix
</a>
</dd>
<dt>Programming Language</dt>
<dd>
<a href="https://pypi.org/search/?c=Programming+Language+%3A%3A+Python+%3A%3A+2">
Python :: 2
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Programming+Language+%3A%3A+Python+%3A%3A+3">
Python :: 3
</a>
</dd>
<dt>Topic</dt>
<dd>
<a href="https://pypi.org/search/?c=Topic+%3A%3A+Software+Development+%3A%3A+Libraries+%3A%3A+Python+Modules">
Software Development :: Libraries :: Python Modules
</a>
</dd>
<dd>
<a href="https://pypi.org/search/?c=Topic+%3A%3A+Utilities">
Utilities
</a>
</dd>
</dl>
</div>
<br>
</div>
<div id="history" data-target="project-tabs.content" class="vertical-tabs__content" role="tabpanel" aria-labelledby="history-tab mobile-history-tab" style="display: none;">
<h2 class="page-title split-layout">
<span>Release history</span>
<a class="reset-text margin-top" href="https://pypi.org/help/#project-release-notifications">Release notifications</a>
</h2>
<section class="release-timeline">
<div class="release release--latest release--current">
<div class="release__meta">
<span class="badge">This version</span>
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/blue-cube.e6165d35.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.13.3/">
<p class="release__version">
0.13.3
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2019-03-18T08:52:09+0000" data-controller="localized-time" aria-label="Mar 18, 2019, 11:52:09 GMT+3" data-original-label="Mar 18, 2019, 11:52:09 GMT+3">Mar 18, 2019</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.13.2/">
<p class="release__version">
0.13.2
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2018-05-18T23:04:38+0000" data-controller="localized-time" aria-label="May 19, 2018, 02:04:38 GMT+3" data-original-label="May 19, 2018, 02:04:38 GMT+3">May 19, 2018</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.13.1/">
<p class="release__version">
0.13.1
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2018-03-27T16:54:21+0000" data-controller="localized-time" aria-label="Mar 27, 2018, 19:54:21 GMT+3" data-original-label="Mar 27, 2018, 19:54:21 GMT+3">Mar 27, 2018</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.13.0/">
<p class="release__version">
0.13.0
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2018-03-26T22:59:24+0000" data-controller="localized-time" aria-label="Mar 27, 2018, 01:59:24 GMT+3" data-original-label="Mar 27, 2018, 01:59:24 GMT+3">Mar 27, 2018</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.11.0/">
<p class="release__version">
0.11.0
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-08-24T20:11:25+0000" data-controller="localized-time" aria-label="Aug 24, 2017, 23:11:25 GMT+3" data-original-label="Aug 24, 2017, 23:11:25 GMT+3">Aug 24, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.10.4/">
<p class="release__version">
0.10.4
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-08-15T02:02:00+0000" data-controller="localized-time" aria-label="Aug 15, 2017, 05:02:00 GMT+3" data-original-label="Aug 15, 2017, 05:02:00 GMT+3">Aug 15, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.10.3/">
<p class="release__version">
0.10.3
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-08-08T13:46:22+0000" data-controller="localized-time" aria-label="Aug 8, 2017, 16:46:22 GMT+3" data-original-label="Aug 8, 2017, 16:46:22 GMT+3">Aug 8, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.10.2/">
<p class="release__version">
0.10.2
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-08-08T13:38:56+0000" data-controller="localized-time" aria-label="Aug 8, 2017, 16:38:56 GMT+3" data-original-label="Aug 8, 2017, 16:38:56 GMT+3">Aug 8, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.10.0/">
<p class="release__version">
0.10.0
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-08-03T15:17:16+0000" data-controller="localized-time" aria-label="Aug 3, 2017, 18:17:16 GMT+3" data-original-label="Aug 3, 2017, 18:17:16 GMT+3">Aug 3, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.13/">
<p class="release__version">
0.9.13
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-03-29T03:25:10+0000" data-controller="localized-time" aria-label="Mar 29, 2017, 06:25:10 GMT+3" data-original-label="Mar 29, 2017, 06:25:10 GMT+3">Mar 29, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.12/">
<p class="release__version">
0.9.12
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-02-04T16:02:32+0000" data-controller="localized-time" aria-label="Feb 4, 2017, 19:02:32 GMT+3" data-original-label="Feb 4, 2017, 19:02:32 GMT+3">Feb 4, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.11/">
<p class="release__version">
0.9.11
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-02-02T07:17:17+0000" data-controller="localized-time" aria-label="Feb 2, 2017, 10:17:17 GMT+3" data-original-label="Feb 2, 2017, 10:17:17 GMT+3">Feb 2, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.10/">
<p class="release__version">
0.9.10
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2017-01-29T10:13:43+0000" data-controller="localized-time" aria-label="Jan 29, 2017, 13:13:43 GMT+3" data-original-label="Jan 29, 2017, 13:13:43 GMT+3">Jan 29, 2017</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.9/">
<p class="release__version">
0.9.9
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-12-18T17:32:46+0000" data-controller="localized-time" aria-label="Dec 18, 2016, 20:32:46 GMT+3" data-original-label="Dec 18, 2016, 20:32:46 GMT+3">Dec 18, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.8/">
<p class="release__version">
0.9.8
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-12-10T22:26:25+0000" data-controller="localized-time" aria-label="Dec 11, 2016, 01:26:25 GMT+3" data-original-label="Dec 11, 2016, 01:26:25 GMT+3">Dec 11, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.7/">
<p class="release__version">
0.9.7
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-11-16T21:05:51+0000" data-controller="localized-time" aria-label="Nov 17, 2016, 00:05:51 GMT+3" data-original-label="Nov 17, 2016, 00:05:51 GMT+3">Nov 17, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.6/">
<p class="release__version">
0.9.6
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-11-14T23:13:18+0000" data-controller="localized-time" aria-label="Nov 15, 2016, 02:13:18 GMT+3" data-original-label="Nov 15, 2016, 02:13:18 GMT+3">Nov 15, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.5/">
<p class="release__version">
0.9.5
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-11-14T07:31:43+0000" data-controller="localized-time" aria-label="Nov 14, 2016, 10:31:43 GMT+3" data-original-label="Nov 14, 2016, 10:31:43 GMT+3">Nov 14, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.4/">
<p class="release__version">
0.9.4
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-11-13T19:13:52+0000" data-controller="localized-time" aria-label="Nov 13, 2016, 22:13:52 GMT+3" data-original-label="Nov 13, 2016, 22:13:52 GMT+3">Nov 13, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.3/">
<p class="release__version">
0.9.3
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-11-13T13:46:32+0000" data-controller="localized-time" aria-label="Nov 13, 2016, 16:46:32 GMT+3" data-original-label="Nov 13, 2016, 16:46:32 GMT+3">Nov 13, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.9.1/">
<p class="release__version">
0.9.1
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-11-13T13:20:09+0000" data-controller="localized-time" aria-label="Nov 13, 2016, 16:20:09 GMT+3" data-original-label="Nov 13, 2016, 16:20:09 GMT+3">Nov 13, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.7.1/">
<p class="release__version">
0.7.1
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-07-20T20:45:12+0000" data-controller="localized-time" aria-label="Jul 20, 2016, 23:45:12 GMT+3" data-original-label="Jul 20, 2016, 23:45:12 GMT+3">Jul 20, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.7.0/">
<p class="release__version">
0.7.0
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-06-23T15:29:46+0000" data-controller="localized-time" aria-label="Jun 23, 2016, 18:29:46 GMT+3" data-original-label="Jun 23, 2016, 18:29:46 GMT+3">Jun 23, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.8/">
<p class="release__version">
0.6.8
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-05-14T12:50:42+0000" data-controller="localized-time" aria-label="May 14, 2016, 15:50:42 GMT+3" data-original-label="May 14, 2016, 15:50:42 GMT+3">May 14, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.7/">
<p class="release__version">
0.6.7
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-04-05T16:47:36+0000" data-controller="localized-time" aria-label="Apr 5, 2016, 19:47:36 GMT+3" data-original-label="Apr 5, 2016, 19:47:36 GMT+3">Apr 5, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.6/">
<p class="release__version">
0.6.6
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-04-05T16:20:56+0000" data-controller="localized-time" aria-label="Apr 5, 2016, 19:20:56 GMT+3" data-original-label="Apr 5, 2016, 19:20:56 GMT+3">Apr 5, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.5/">
<p class="release__version">
0.6.5
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-03-08T19:24:16+0000" data-controller="localized-time" aria-label="Mar 8, 2016, 22:24:16 GMT+3" data-original-label="Mar 8, 2016, 22:24:16 GMT+3">Mar 8, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.4/">
<p class="release__version">
0.6.4
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-03-08T17:42:35+0000" data-controller="localized-time" aria-label="Mar 8, 2016, 20:42:35 GMT+3" data-original-label="Mar 8, 2016, 20:42:35 GMT+3">Mar 8, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.3/">
<p class="release__version">
0.6.3
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-02-01T00:17:40+0000" data-controller="localized-time" aria-label="Feb 1, 2016, 03:17:40 GMT+3" data-original-label="Feb 1, 2016, 03:17:40 GMT+3">Feb 1, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.2/">
<p class="release__version">
0.6.2
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-01-31T23:56:23+0000" data-controller="localized-time" aria-label="Feb 1, 2016, 02:56:23 GMT+3" data-original-label="Feb 1, 2016, 02:56:23 GMT+3">Feb 1, 2016</time>
</p>
</a>
</div>
<div class="release">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.1/">
<p class="release__version">
0.6.1
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-01-31T23:48:50+0000" data-controller="localized-time" aria-label="Feb 1, 2016, 02:48:50 GMT+3" data-original-label="Feb 1, 2016, 02:48:50 GMT+3">Feb 1, 2016</time>
</p>
</a>
</div>
<div class="release release--oldest">
<div class="release__meta">
</div>
<div class="release__graphic">
<div class="release__line"></div>
<img class="release__node" alt="History Node" src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg">
</div>
<a class="card release__card" href="https://pypi.org/project/keyboard/0.6.0/">
<p class="release__version">
0.6.0
</p>
<p class="release__version-date">
<time class="tooltipped tooltipped-s -js-relative-time" datetime="2016-01-31T23:41:18+0000" data-controller="localized-time" aria-label="Feb 1, 2016, 02:41:18 GMT+3" data-original-label="Feb 1, 2016, 02:41:18 GMT+3">Feb 1, 2016</time>
</p>
</a>
</div>
</section>
</div>
<div id="files" data-target="project-tabs.content" class="vertical-tabs__content" role="tabpanel" aria-labelledby="files-tab mobile-files-tab" style="display: none;">
<h2 class="page-title">Download files</h2>
<p>Download the file for your platform. If you're not sure which to choose, learn more about <a href="https://packaging.python.org/installing/">installing packages</a>.</p>
<table class="table table--downloads">
<thead>
<tr>
<th class="table__filename">
Filename, size &amp; hash
<a href="https://pip.pypa.io/en/stable/reference/pip_install/#hash-checking-mode" class="tooltipped tooltipped-n" aria-label="what&#39;s this?" data-original-label="what&#39;s this?">
<i class="fa fa-question-circle" aria-hidden="true"></i>
<span class="sr-only">SHA256 hash help</span>
</a>
</th>
<th class="table__type">File type</th>
<th class="table__version">Python version</th>
<th class="table__upload-date">Upload date</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a href="https://files.pythonhosted.org/packages/8d/14/b7a8f46e750b5905b099f0ae164a00bc99fe2a3029b4d54ae978797d2c15/keyboard-0.13.3-py2.py3-none-any.whl">
keyboard-0.13.3-py2.py3-none-any.whl
</a>
(58.7 kB)
<a class="-js-copy-hash table__sha256-link tooltipped tooltipped-s" aria-label="Copy to clipboard" data-original-label="Copy to clipboard" data-clipboard-text="18b53344408df1973c452549f47a203f20a0e65fbbd4436c72562759fa03c0b8">
<i class="fa fa-copy" aria-hidden="true"></i>
<span class="sr-only">Copy SHA256 hash</span>
SHA256
</a>
</td>
<td>
Wheel
</td>
<td>
py2.py3
</td>
<td><time class="tooltipped tooltipped-s -js-relative-time" datetime="2019-03-18T08:52:09+0000" data-controller="localized-time" aria-label="Mar 18, 2019, 11:52:09 GMT+3" data-original-label="Mar 18, 2019, 11:52:09 GMT+3">Mar 18, 2019</time></td>
</tr>
<tr>
<td>
<a href="https://files.pythonhosted.org/packages/bf/5e/4c046b8f94e68af6b5b3fe7550a87370f68a168fbc2eff10f06f59172e32/keyboard-0.13.3.win-amd64.exe">
keyboard-0.13.3.win-amd64.exe
</a>
(650.4 kB)
<a class="-js-copy-hash table__sha256-link tooltipped tooltipped-s" aria-label="Copy to clipboard" data-original-label="Copy to clipboard" data-clipboard-text="0fa2f6d5aa793270d97952d256fbd984091bdccd63a7e10127bd1a04e3f2ee71">
<i class="fa fa-copy" aria-hidden="true"></i>
<span class="sr-only">Copy SHA256 hash</span>
SHA256
</a>
</td>
<td>
Windows Installer
</td>
<td>
any
</td>
<td><time class="tooltipped tooltipped-s -js-relative-time" datetime="2019-03-18T08:52:13+0000" data-controller="localized-time" aria-label="Mar 18, 2019, 11:52:13 GMT+3" data-original-label="Mar 18, 2019, 11:52:13 GMT+3">Mar 18, 2019</time></td>
</tr>
<tr>
<td>
<a href="https://files.pythonhosted.org/packages/ea/bf/f00decd3a10c55039d9036c9d698a6a59798f736db7b046af20e7e6fd02d/keyboard-0.13.3.zip">
keyboard-0.13.3.zip
</a>
(69.4 kB)
<a class="-js-copy-hash table__sha256-link tooltipped tooltipped-s" aria-label="Copy to clipboard" data-original-label="Copy to clipboard" data-clipboard-text="d900fefc9c8dfc0c5d92bea6d6190a2ed9beea1bdbc0e16ce12a235bf5ef6281">
<i class="fa fa-copy" aria-hidden="true"></i>
<span class="sr-only">Copy SHA256 hash</span>
SHA256
</a>
</td>
<td>
Source
</td>
<td>
None
</td>
<td><time class="tooltipped tooltipped-s -js-relative-time" datetime="2019-03-18T08:52:15+0000" data-controller="localized-time" aria-label="Mar 18, 2019, 11:52:15 GMT+3" data-original-label="Mar 18, 2019, 11:52:15 GMT+3">Mar 18, 2019</time></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</section>
</main>
<footer class="footer" role="contentinfo">
<div class="footer__logo">
<img src="./keyboard · PyPI_files/white-cube.8c3a6fe9.svg" alt="Logo" class="-js-white-cube">
</div>
<div class="footer__menus">
<ul class="footer__menu">
<li>
<h2>Help</h2>
</li>
<li><a href="https://packaging.python.org/installing/">Installing packages</a></li>
<li><a href="https://packaging.python.org/tutorials/packaging-projects/">Uploading packages</a></li>
<li><a href="https://packaging.python.org/">User guide</a></li>
<li><a href="https://pypi.org/help/">FAQs</a></li>
</ul>
<ul class="footer__menu">
<li>
<h2>About PyPI</h2>
</li>
<li><a href="https://twitter.com/PyPI">PyPI on Twitter</a></li>
<li><a href="https://dtdg.co/pypi">Infrastructure dashboard</a></li>
<li><a href="https://www.python.org/dev/peps/pep-0541/">Package index name retention</a></li>
<li><a href="https://pypi.org/sponsors/">Our sponsors</a></li>
</ul>
<ul class="footer__menu">
<li>
<h2>Contributing to PyPI</h2>
</li>
<li><a href="https://pypi.org/help/#feedback">Bugs and feedback</a></li>
<li><a href="https://github.com/pypa/warehouse">Contribute on GitHub</a></li>
<li><a href="https://github.com/pypa/warehouse/graphs/contributors">Development credits</a></li>
</ul>
<ul class="footer__menu">
<li>
<h2>Using PyPI</h2>
</li>
<li><a href="https://www.pypa.io/en/latest/code-of-conduct/">Code of conduct</a></li>
<li><a href="https://pypi.org/security/">Report security issue</a></li>
<li><a href="https://www.python.org/privacy/">Privacy policy</a></li>
<li><a href="https://pypi.org/policy/terms-of-use/">Terms of use</a></li>
</ul>
</div>
<hr class="footer__divider">
<div class="footer__text">
<p>Status: <a href="https://status.python.org/"><span data-statuspage-domain="https://2p66nmmycsj3.statuspage.io">All Systems Operational</span></a></p>
<p>
Developed and maintained by the Python community, for the Python community.
<br>
<a href="https://donate.pypi.org/">Donate today!</a>
</p>
<p>© 2019 <a href="https://www.python.org/psf/">Python Software Foundation</a></p>
</div>
<div class="centered hide-on-desktop">
<button class="button button--switch-to-desktop" data-target="viewport-toggle.switchToDesktop" data-action="viewport-toggle#switchToDesktop">
Desktop version
</button>
</div>
</footer>
<div class="sponsors">
<p class="sponsors__title">Supported by</p>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://www.elastic.co/">
<img class="sponsors__image" alt="Elastic" src="./keyboard · PyPI_files/elastic.a912fb87.png">
<span class="sponsors__name">Elastic</span>
<span class="sponsors__service">Search</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://www.pingdom.com/">
<img class="sponsors__image" alt="Pingdom" src="./keyboard · PyPI_files/pingdom.07446398.png">
<span class="sponsors__name">Pingdom</span>
<span class="sponsors__service">Monitoring</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://cloud.google.com/">
<img class="sponsors__image" alt="Google" src="./keyboard · PyPI_files/google.2f72f26f.png">
<span class="sponsors__name">Google</span>
<span class="sponsors__service">BigQuery</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://getsentry.com/for/python">
<img class="sponsors__image" alt="Sentry" src="./keyboard · PyPI_files/sentry.5ab437bc.png">
<span class="sponsors__name">Sentry</span>
<span class="sponsors__service">Error logging</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://aws.amazon.com/">
<img class="sponsors__image" alt="AWS" src="./keyboard · PyPI_files/aws.5f800271.png">
<span class="sponsors__name">AWS</span>
<span class="sponsors__service">Cloud computing</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://www.datadoghq.com/">
<img class="sponsors__image" alt="DataDog" src="./keyboard · PyPI_files/datadog.e569d741.png">
<span class="sponsors__name">DataDog</span>
<span class="sponsors__service">Monitoring</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://www.fastly.com/">
<img class="sponsors__image" alt="Fastly" src="./keyboard · PyPI_files/fastly.0563c6f5.png">
<span class="sponsors__name">Fastly</span>
<span class="sponsors__service">CDN</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://www.signalfx.com/">
<img class="sponsors__image" alt="SignalFx" src="./keyboard · PyPI_files/signalfx.560cb5c4.png">
<span class="sponsors__name">SignalFx</span>
<span class="sponsors__service">Supporter</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://www.digicert.com/">
<img class="sponsors__image" alt="DigiCert" src="./keyboard · PyPI_files/digicert.79748718.png">
<span class="sponsors__name">DigiCert</span>
<span class="sponsors__service">EV certificate</span>
</a>
<a class="sponsors__sponsor" target="_blank" rel="noopener" href="https://statuspage.io/">
<img class="sponsors__image" alt="StatusPage" src="./keyboard · PyPI_files/statuspage.67af0b3d.png">
<span class="sponsors__name">StatusPage</span>
<span class="sponsors__service">Status page</span>
</a>
</div>
</body></html>