「+」という文字の入力はUS配列だと shift+=, JIS配列では shift+;になる。
問題となるのは、ctrl+shift+αという組み合わせがどういうメタキーの組み合わせとして解釈されるか、キーボードの設定次第で変わる。
US配列だとkeyCode: 187 とctrlKey。JIS配列だと186とctrlKeyとshiftKeyになっていた。
window.addEventListener "keydown", (e) =>
# US / JIS
if (e.keyCode is 187 and e.ctrlKey) or (e.keyCode is 186 and e.shiftKey and e.ctrlKey)
e.preventDefault()
# exec something
return false
return true
この挙動によって何が起こるかというと、JIS配列を考慮してないキーバインド定義ライブラリを使うと、どう頑張ってもメタ-+をキャッチできないようなことになっていることがある。CodeMirrorお前だ。