記事ファイルを作成するスクリプト改、細かなデザイン変更

以前書いたHexoの記事ファイルを作成するスクリプトの改訂版。

#!/bin/sh

cd <レポジトリのパス>

# ファイル名に使う変数
$prefix = Get-Date -Format "yyyy-MM-dd"
$title = $Args[0]
$filename = "${prefix}-$title"

# FrontMatterにセットする変数
$date = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
$random= -Join (Get-Random -Count 6 -input 0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z)

# FrontMatterの準備
$frontMatter = "---
title: $title
date: $date
post_id: $random
categories:
  -
tags:
---

<!-- more -->
"

# ファイル作成
New-Item "$filename.md"
Add-Content "$filename.md" -Value $frontMatter -Encoding Utf8

# フォルダ作成
If($Args[1]){
    New-Item $filename -ItemType Directory
}

# ファイルを開く
Invoke-Item "$filename.md"
If($Args[1]){
    Invoke-Item $filename
}

exit

変わったところ

以前のものは_posts以下のディレクトリ構造からカテゴリーを自動でセットするようにしていたけれど、記事を書こうと思い立ったときにまずカテゴリーのフォルダを開かなければならいのがストレスだった。現在はMarkdownファイルを_posts直下にまとめ、カテゴリー名は手で書くことにした。まだ、画像を入れるフォルダを作成した場合はそのフォルダも自動で開くようにした。

<!-- more -->タグもこのスクリプトに組み込んでおけば、逐一タイプしなくていいという天啓を得たのでそれも組み込んだ。上下に文章を書くだけでいいので便利。これなら続けられそう。

細かな変更

ブログのデザインも、記事下のカテゴリーとタグのラベルを横並びにしたり、シンタックスハイライトを黒背景に変更し行番号を廃止したりした。行番号はhighlight.jsの機能に備わっているものではなく、Hexoが独自に実装している機能でおもしろいアイデアだけれど、HTMLが力技になっているのとCSSでの対応が大変(スタイル適用のフットワークが重い)のでやめることにした。