🦆

Codemirrorデフォルトのショートカット(KeyMap)を無効化する

2021/10/15に公開

ドキュメントやGitHubリポジトリのissuesを漁ってもどうしても見当たらなかったので記事に残しておく。

CodemirrorのkeyMap周りのソースコードを探ってみたところ、以下のようにCodemirrorのインスタンスに対してaddKeyMapで値にfalseを渡すことで無効にできることが分かった。

cm.addKeyMap({
  'Alt-D': false,
});

ちなみにremoveKeyMapを呼び出すことで無効化ができそうだが、ドキュメントには「addKeyMapにより追加されたKeyMapを無効にするもの」と書いてあり、デフォルトのKeyMapを無効にするものではなさそう。

cm.removeKeyMap(map: object)
Disable a keymap added with addKeyMap. Either pass in the key map object itself, or a string, which will be compared against the name property of the active key maps.

Discussion