Skip to main content

ちょっとしたMarkdown編集用の拡張機能を作りました

· 3 min read
mebiusbox
engineer

Markdown編集用にちょっと欲しかった機能があったので拡張機能を作りました.

Markdownを編集するときに太字などにショートカットが使えると便利です.しかし、たとえば太字は Ctrl+B とか、斜体は Ctrl+I など、他に割り当てている機能とかぶることが多いです.そこで、1つのショートカットキーで「斜体」→「太字」→「斜体+太字」→「取り消し線」→「なし」と切り替える機能が欲しくなりました.ざっくり調べたところ、とくにそういう機能がなかったので自作することにしました.といっても、1から作るよりかは既存のものを改良すると楽なので、今回もそのように作りました.

今回の拡張機能は「toggleQuotes」にインスパイアされました.また、ソースコードも参考にしています.

実装

実装してみたんですがいくつか問題、というか不便な部分が残っています.改良できるといいのですが、とりあえず様子見で. まず、あらかじめクォーテーションで囲んである必要があります.これは、Visual Studio Code で editor.autoSurroundquotes に設定することで選択した文字を簡単に囲むことができます.その状態で作成したコマンドを呼び出すショートカットキーを入力すれば切り替わります.

今回の実装では、太字や斜体から逆に取り消したいことがあったので、最後に「なし」に設定しているのですが、「なし」の状態からまた「斜体」などに繰り返すことができません.ちょっと難しそうだったのであきらめました.

この機能を使うと次のようになります.

以上です.