LogseqをVimキーバインドでマウスなしキーボードのみで操作する

公開日:
目次

普段エディタとしてVimのキーバインドを使っているのと、キーボードのみで作業することが多いのでLogseqで使えないか調べてみました。

LogseqでVimを利用する

残念ながらLogseq公式にはVimのサポートがありません。

しかし、Vimのキーバインドを実現したいユーザーのために、Vimライクなショートカットを利用可能にするプラグインが存在します。

それがVIM Shourtcutsです。

このプラグインを利用することで完全にvimとは言わないまでも、マウスを利用しないでキーボードのみでLogseqを操作することが可能です。

VIM Shortcutsのインストール

プラグインをインストールします。

Logseqを開いて右上のメニューから「パズルピースのアイコン(プラグインアイコン)」をクリックして「プラグイン」を選択します。
Image from Gyazo

タブがあるので「マーケットプレース」を選択して検索窓に「vim」と打ち込みます。
Image from Gyazo

するとVIM Shortcutsが出てくるので、右下のインストールをクリックしてください。

これでインストールは完了です。

VIM Shortcutsの機能

Vim Shortcutsプラグインを導入することで、Vimっぽい操作がLogseq内で可能になります。

よく使うものを厳選して紹介します。

  • ブロックの上下移動: jk キーで簡単にブロック間を移動できます。
  • 入力モードの切り替え: aで行末から入力モードへiで行頭から入力モードへ移行できます。
  • ノーマルモードの切り替え: escでノーマルモードへ切り替えられます。
  • コピー&ペースト: yでコピー、pでブロック貼り付けが行えます。(ただし1ブロックしか選択できません)
  • ブロックの切り取り: ddで現在のブロックを切り取ることができます。
  • ブロックの開閉: zoでブロックを開き、zcで閉じることができます。

不満点とその対応

VIM Shortcutsはあくまでvimライクなキーを使えるということで、実際にvimではないのでそれなりに不満点があります。

横移動ができない

vimとは異なりhl キーの割り当てが下の階層へ移動するになっており、個人的にこの操作はあまり使わないです。

というのもjとkでも下の階層に簡単に移動できるからです。

正直横移動したい!

特に、単語毎の移動(weなど)ができないことは、Logseqでテキストを編集する上で少し不便を感じさせます。

対処法としてVIM Editorというプラグインを入れると横移動できるのですが、そちらだと一度画面内にvimっぽいエディタを開く必要があり個人的にはあまり好きではありません。

あえてこの二つが存在するということは(作者が同じ方)、やはりVimが公式でサポートされていないと実現不可能なのかもしれませんね。

ただ実際作業してみると、多くの場合Logseqで扱うテキストは箇条書きで一文が比較的短いため、この不便さはそれほど問題になっていない感じはしてます。

必要に応じてdeletebackspaceキーでテキストを全て修正してしまえばいいですしね。

ページ間移動ができない

このプラグインではページへの移動がサポートされていません。

少々面倒ですが検索のショートカットキー(私はctrl+kに割り当てている)で検索してenterで目的のページに移動しています。

戻る時はg hでホームに戻ることができます。

vimショートカットを公式にサポートして欲しい声もあるので、いずれ実現するかもしれません。

この辺はObsidianと比較するとデメリットかもしれませんね。

参考