<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Hotkey on Jeremy Jackson</title>
    <link>https://new.tsjee.ru/tags/hotkey/</link>
    <description>Recent content in Hotkey on Jeremy Jackson</description>
    <generator>Hugo</generator>
    <language>ru</language>
    <lastBuildDate>Sat, 09 Mar 2013 06:35:41 +0000</lastBuildDate>
    <atom:link href="https://new.tsjee.ru/tags/hotkey/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Hotkeys комбинация клавиш</title>
      <link>https://new.tsjee.ru/posts/2013-03-09-hotkeys-%D0%BA%D0%BE%D0%BC%D0%B1%D0%B8%D0%BD%D0%B0%D1%86%D0%B8%D1%8F-%D0%BA%D0%BB%D0%B0%D0%B2%D0%B8%D1%88/</link>
      <pubDate>Sat, 09 Mar 2013 06:35:41 +0000</pubDate>
      <guid>https://new.tsjee.ru/posts/2013-03-09-hotkeys-%D0%BA%D0%BE%D0%BC%D0%B1%D0%B8%D0%BD%D0%B0%D1%86%D0%B8%D1%8F-%D0%BA%D0%BB%D0%B0%D0%B2%D0%B8%D1%88/</guid>
      <description>&lt;p&gt;Будет в виде модуля, для евентовой модели.&lt;/p&gt;&#xA;&lt;p&gt;Основная суть здесь вот в чем, имеем массив, в который будем добавлять клавиши по &lt;strong&gt;keydown&lt;/strong&gt;, и удалять по &lt;strong&gt;keyup&lt;/strong&gt;, то есть пока клавиша зажата она будет в массиве и мы можем посмотреть какая комбинация сейчас нажата.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;ZERO&lt;/strong&gt;, для бага в хроме.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-js&#34; data-lang=&#34;js&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;APP.hotKeys &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;function&lt;/span&gt; () {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;use strict&amp;#39;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#ff7b72&#34;&gt;var&lt;/span&gt; init &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;function&lt;/span&gt; () {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            $(document).bind(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;keydown&amp;#39;&lt;/span&gt;, hotKeyHandler);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            $(document).bind(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;keyup&amp;#39;&lt;/span&gt;, removeKeyUp);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ZERO &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;0&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ESC_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;27&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        CTRL_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;17&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ALT_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;18&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        SHIFT_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;16&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ENTER_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;13&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        SPACE &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;32&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        RIGHT_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;39&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        LEFT_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;37&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        UP_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;38&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        DOWN_KEY &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;40&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        M &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;77&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        A &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;65&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        S &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;83&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        F &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a5d6ff&#34;&gt;70&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        keys &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; [],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        hotKeyHandler &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;function&lt;/span&gt; (e) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            e &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; e &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; window.event;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#ff7b72&#34;&gt;var&lt;/span&gt; codeKey &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; e.which &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; e.keyCode;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            keys[codeKey] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#79c0ff&#34;&gt;true&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//esc&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; (codeKey &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;===&lt;/span&gt; ESC_KEY) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;escKeyUp&amp;#39;&lt;/span&gt;);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//enter&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; (codeKey &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;===&lt;/span&gt; ENTER_KEY) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                 $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;enterKeyUp&amp;#39;&lt;/span&gt;);&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;// e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + SHIFT + M&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[SHIFT_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; keys[M]) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlShiftMKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + SHIFT + A&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[SHIFT_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; keys[A]) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                 $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlShiftAKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + SHIFT + F&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[SHIFT_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; keys[F]) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlShiftFKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + UPKEY&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[UP_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO])) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                 $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlUpKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + DOWNKEY&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[DOWN_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO])) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                 $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlDownKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;               &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + LEFTKEY&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[LEFT_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO])) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                 $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlLeftKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//CTRL + RIGHTKEY&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &lt;span style=&#34;color:#ff7b72&#34;&gt;else&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; ((keys[CTRL_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO]) &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (keys[RIGHT_KEY] &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; keys[ZERO])) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                $(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;body&amp;#39;&lt;/span&gt;).trigger(&lt;span style=&#34;color:#a5d6ff&#34;&gt;&amp;#39;comboCtrlRightKeyUp&amp;#39;&lt;/span&gt;, {codeKey&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; codeKey});&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                e.preventDefault();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#8b949e;font-style:italic&#34;&gt;//SPACE&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            } &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            codeKey &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#79c0ff&#34;&gt;null&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        removeKeyUp &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#ff7b72&#34;&gt;function&lt;/span&gt;(e) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#ff7b72&#34;&gt;var&lt;/span&gt; codeKey &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;=&lt;/span&gt; e.which &lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;||&lt;/span&gt; e.keyCode;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#ff7b72&#34;&gt;if&lt;/span&gt; (keys[ZERO]) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#ff7b72&#34;&gt;delete&lt;/span&gt; keys[ZERO];&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#ff7b72&#34;&gt;delete&lt;/span&gt; keys[codeKey];&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#ff7b72&#34;&gt;return&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        init&lt;span style=&#34;color:#ff7b72;font-weight:bold&#34;&gt;:&lt;/span&gt; init&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
  </channel>
</rss>
