Boostnote の Vim カスタムマッピングの追加方法

Vim
スポンサーリンク

Boostnote の Vim カスタムマッピングの追加方法

Markdown には Boostnote が便利

このあたりは以前記事にしましたので、そちらをご覧ください。

おすすめしたい Markdown Editor 5選
ドキュメントは Markdown で書こうMarkdown 記法書きやすいですよね。昔ははてな記法とか使ってブログを書いていた時期もあるんですが、Githubがこれだけ普及した今、Markdown記法が世界的なグローバルスタンダードになっ...

Vim Mode とは

おすすめしたい Markdown Editor 5選
ドキュメントは Markdown で書こうMarkdown 記法書きやすいですよね。昔ははてな記法とか使ってブログを書いていた時期もあるんですが、Githubがこれだけ普及した今、Markdown記法が世界的なグローバルスタンダードになっ...

Boostnote の公式で Vim Mode の紹介があります。ここのチュートリアルに沿ってやれば、キーバインドが Vim 準拠になります。ちゃんとノーマルモードヴィジュアルモードインサートモード があり、移動のキーマッピングもほとんど実装されています。Boostnote の Vim mode はとても優秀です。

vimrc が欲しくなる

Boostnote に Vim mode があるから Boostnote を使っているといっても過言ではないぐらい Vim に依存している私です。Vim 使いとしては、vimrc みたいにカスタムキーマッピングを設定したいところ。個人的には kj というキーマッピングを ESC として使っているので、それがないのはとても辛い。

カスタムキーマッピングを設定する

ということで、色々中のコードを漁ってみました。すると、/usr/share/boostnote/resources/app/node_modules/codemirror/keymap/vim.jsというファイルに Vim のキーマッピングが設定されていることを見つけました。

このファイルの defaultKeymap という配列に自分が追加したいキーマッピングを掘り込んでやれば、カスタムキーマッピングの登録が出来ました。どのように設定すればいいかは、同一のファイルの他のキーマッピングを参考すれば大体分かります。

先程のファイルの 41 行目あたりからです。

  var defaultKeymap = [
    { keys: 'k', type: 'keyToKey', toKeys: 'gk'},
    { keys: 'j', type: 'keyToKey', toKeys: 'gj'},
    { keys: 'kj', type: 'keyToKey', toKeys: '<Esc>' , context: 'insert' },
    // Key to key mapping. This goes first to make it possible to override
    // existing mappings.
    { keys: '<Left>', type: 'keyToKey', toKeys: 'h' },
    { keys: '<Right>', type: 'keyToKey', toKeys: 'l' },
    { keys: '<Up>', type: 'keyToKey', toKeys: 'k' },

やっぱり ESC は kj でしょ!

ESC キーを jj に設定している人を見かけますが、海外でもその設定が人気なようですが、同じキー2回って非効率じゃないですか?別々のキーを設定したほうがタイピングスピードがかなり早くなりますよね。ということで、kjでA ESC キーを設定するのはお薦めです!

Boostnote で快適 Vim ライフを!

というわけで、自分のカスタムキーマッピングをも設定できるようになった Boostnote は他の追従を許さない、一番の Markdown エディタとなったのでした。ぜひ、使ってみてくださいね!

コメント

タイトルとURLをコピーしました