Jekyllのタイムゾーンを日本時間にする
Jekyllは_post
にmarkdownを置いていくことになるが、ファイルのネーミングルールが決まっていてYYYY-MM-DD-{お好みで}.md
としないといけない。
そして、この日付にならないとbuildのときに記事が生成されないんだけど、デフォルトだと時差が考慮されていない。
日本の場合は標準時から9時間進んでいるので、そうするとどうなるかというと記事をbuildしたくてもbuildしてくれない、ということがある。
できれば記事を書いたらすぐにbuildしてほしいんだけど、その場合の調整内容は二点。
- タイムゾーンをAsia/Tokyoにする
- 日付に時差まで書いておく
タイムゾーンをAsia/Tokyoにする
タイムゾーンは以下のように_config.yml
に設定すると調整できるらしい。
これで書いた記事はすぐにbuildしてくれるようになる。
timezone: Asia/Tokyo
日付に時差まで書いておく
mdファイル内の頭にdate
の項目がありますが、そちらに+09:00
と加えておくことで時差を認識してくれる。
date: 2022-11-26 00:00:00 +09:00
markdownの雛形を生成するスクリプト
毎回、mdファイルを作るのが面倒なのでshellスクリプトを作った。
mdファイルのタイトルの文字列を指定して実行すれば日付付きで雛形を生成してくれる。
#!/bin/sh
TITLE=$1
TODAY=`date +%Y-%m-%d`
FILE_NAME="_posts/$TODAY-$TITLE.md"
if [ -e $FILE_NAME ]; then
echo "file $FILE_NAME is already exists."
exit
fi
echo $FILE_NAME
cat <<TEMPLATE > $FILE_NAME
---
layout: post
title: ""
date: $TODAY 00:00:00 +09:00
image: /assets/images/ogp_image.png
tags:
# この記事の環境情報
---
TEMPLATE
使用例はこんな感じ。上記をcreate_post.sh
という名前にした場合。
# Jekyllプロジェクトのルート直下で実行
$ bash create_post.sh youre_title
同じファイル名ですでに作られている場合は、上書きされちゃうと悲しいのでifでファイル有無を確認している。
この記事の環境情報
- Jekyll 4.3.1
- Jekyllは大体打ち間違う
Jekyllに関する他の記事を読む
- Jekyllの中でLiquidの記法を文字列としてエスケープさせる方法
- Jekyllで記事に関連した他の記事一覧を表示する
- JekyllのサイトをGA4に対応させる
- Jekyllのプラグインでsitemapを生成する
最近の記事を読む
- Flutterでcontextを使わずにlocale情報を取得する
- Cloud RunでIAPを有効にしようとしてハマったこと
- slimでtype='application/ld+json'のscriptタグを書く
- タグマネージャーでjsのloadイベントを発火させたいとき
- mysqlコマンドを実行してERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)と言われたら