title: Actual key assigned to JavaScript keyCode
body: <p>I have setup an event listener:</p>
  <pre><code>editor.addEventListener('keydown', function(e) {
      if (e.shiftKey === false) {
          alert(String.charFromCode(e.keyCode).toLowerCase());
      }
      else {
          alert(String.charFromCode(e.keyCode));
      }
  }, false);
  </code></pre>
  <p>When the user presses <kbd>2</kbd> along with <kbd>shift</kbd>, how do I know if I should output (@) or (&quot;)? Each users' character mapping is different per locale.</p>