この記事はVisual Studio Code Advent Calendar 2020の23日目の記事です
Gatsbyなどの静的サイトジェネレータでブログ記事などを書く場合、Markdownのメタデータ(frontmatter)を最初に書くと思う
ほぼ定形なので記事を書くたびに他の記事からコピーして…というのが面倒
ということで、VS Codeのスニペット機能で楽をする
前提
前提として自分は次のような形式のメタデータを用意している
--- title: "VS Codeのスニペットで記事執筆を楽にする" date: "2020-11-11" description: "frontmatterのスニペット" tags: - VS Code ---
スニペットの設定
可変な部分(title,description,tags)はプレースホルダで入力できるように設定する
日付はその現在日時をとりあえず入れるようにしている
{ "frontmatter": { "prefix": "mdmeta", "body": [ "---", "title: \"${1:title}\"", "date: \"${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}\"", "description: \"${2:desc}\"", "tags:", " - ${3:tag}", "---" ] } }
CURRENT_YEAR
,CURRENT_MONTH
,CURRENT_DATE
はVS Codeが用意している組込み変数
現在の日付や月など他にも色々種類があるので見てみたらアイデアが浮かぶかも
また、新規に無題のファイルを作成した状態でも差し込めるようにするため、上記設定をMarkdownのスニペットではなくグローバルのスニペットに登録している
これだけで書き出しがかなり楽になった
まぁ記事自体毎日書くわけでもないので使用機会でいうとそんなに多くないが、記事を書き始めるまでのステップの面倒くささを解消できるので心理的ハードル下がって継続につながる要素の1つになる
よければお試しください