プログラマーのメモ書き

伊勢在住のプログラマーが気になることを気ままにメモったブログです

hugo にまつわるあれこれ

久しぶりに森ソフトの Web サイトを更新しようとして hugo を触ってて気づいたあれこれをまとめておきます。

テーマのアップデート

使っているテーマ Universal がいろいろと更新されていたので、1.1.1 から最新版の 1.2.5 へアップデートします。

mor@DESKTOP-DE7IL4F:/mnt/d/work/own_app/mywebsite$ cd themes/hugo-universal-theme/
mor@DESKTOP-DE7IL4F:/mnt/d/work/own_app/mywebsite/themes/hugo-universal-theme$ git tag
1.0.0
(中略)
1.2.4
1.2.5
mor@DESKTOP-DE7IL4F:/mnt/d/work/own_app/mywebsite/themes/hugo-universal-theme$ git checkout tag/1.2.5

いくつかのファイルをカスタマイズしているので、以前の記事と同様に、カスタマイズした内容を新バージョンのファイルに適用しておきます。

一度 hugo server を実行して問題なくサイトが表示されることを確認します。よさそうですね。

クラス属性の追加を可能にする

テーマのアップデートに続き、コンテンツもいくつか内容を更新しました。この際に、 CSS をカスタマイズしようとしたら、マークダウンで書いた内容に対してクラスなどの属性が追加できないことに気づきました。

取り急ぎは直接タグを指定して CSS 定義する形でも問題ないんだけど、先々困りそうでちょっと嫌な感じです。

で、調べてみたら、hugo v0.81 以降だと、クラス属性の追加ができるとのことです。

Hugo Markdown でブロック要素にクラス属性を付与する | text.Baldanders.info

公式の説明はこちら。

ということで、早速これを試してみました。

試してみる

まずは既存の hugo を v0.77.0 から v0.89.4 にアップデートします。

mor@DESKTOP-DE7IL4F:~/tmp$ wget https://github.com/gohugoio/hugo/releases/download/v0.89.4/hugo_0.89.4_Linux-64bit.deb
mor@DESKTOP-DE7IL4F:~/tmp$ sudo apt purge hugo
mor@DESKTOP-DE7IL4F:~/tmp$ sudo apt install ./hugo_0.89.4_Linux-64bit.deb
mor@DESKTOP-DE7IL4F:~/tmp$ hugo version
hugo v0.89.4-AB01BA6E linux/amd64 BuildDate=2021-11-17T08:24:09Z VendorInfo=gohugoio
mor@DESKTOP-DE7IL4F:~/tmp$

で、試してみます。content/sample.md を作って、テーブルの最後にクラス名を追加してみます。

---
title: "クラス属性のテスト"
date: 2021-11-26T16:45:34+09:00
---

サンプルページです。

|col a|col b|
|-----|-----|
|aaaaa|bbb01|
{.mytable}

うまくいくかな

で、 hugo server で表示して、ブラウザで表示すると

f:id:junichim:20211126165041p:plain

こんな感じに、テーブル要素にクラス属性が追加されていました。

これで、CSSもクラスを指定して書けるので、ちょっと安心ですね。

ページバンドル

こんな感じで更新作業を行っていたら、 content 以下のページ単位でリソースを持つことができる機能があることに気づきました(ページバンドル と呼ぶようです)。 似たような名前のページリソースというのものあるのですが、こちらはページバンドルの対象フォルダ内にあるリソース(画像や動画やPDFなどなど)のことを指すようです。

公式ドキュメントを読んでみてもいいのですが、下記のサイトがわかりやすかったです。

画像ファイルを Markdown ファイルと同じディレクトリに置く (Page Bundle) | まくまくHugo/Goノート

ポイントは

  • index.md があるフォルダが Leaf Bundle
  • _index.md があるフォルダが Branch Bundle

となり、それぞれのフォルダに画像リソースなどを置くことができる。というものです。 Leaf と Branch はいろいろと違うので、詳細は上記のサイトや公式ドキュメントを見ていただいたたほうがいいのですが、おおざっぱな理解として、

  • Leaf Bundle は一記事のために画像リソース等をまとめて管理して扱うためのもの
  • Branch Bundle は複数記事のために画像リソース等をまとめて管理して扱うためのもの

という感じでしょうか(公式のページバンドルのページの頭あたりにある表が比較にはいいかもしれません)。

こちらも試してみます。こんな感じにsampleフォルダを作って

f:id:junichim:20211126170734p:plain

index.mdを以下のようにします(Leaf Bundle になります)。

---
title: "ページバンドルのテスト"
date: 2021-11-26T16:45:34+09:00
---

サンプルページです。

![ロゴ](images/morisoft-logo.png)

うまくいくかな

ブラウザで localhost:1313/sample を表示すると

f:id:junichim:20211126170542p:plain

問題なく画像が表示できていますね。

QNAP NAS のスナップショットレプリカは2段階認証に対応していないそうです

以前、QNAP のスナップショットレプリカの設定をデフォルトの admin 以外で設定した作業をまとめました。

その際に、スナップショットレプリカが2段階認証に対応していなさそうだなと予想されたのですが、先日 QTS の更新通知(QTS 5.0.0.1858 build 20211119)が来ていたのでリリースノートを見ていたら、 Fixed Issues のところに

Storage & Snapshots would still display successful test results for Snapshot Replica jobs even if 2-step verification was enabled on the destination NAS. (Note: Snapshot Replica does not support 2-step verification).

のように、見事にスナップショットレプリカは2段階認証に対応していません、と明記されていました。

ということですので、スナップショットレプリカを使う場合は(現時点では)受け取り側 NAS の2段階認証を諦めないといけないようです。

あーあ。

これについては、早く改善してほしいです、QNAPさん。

Windows 10 のプロダクトキーを調べる

いくつか Windows 10 を仮想マシン上で使っているのが、インストール時に使ったプロダクトキーがどれになるか確認する必要が出てきました(プロダクトキーの一覧はあるのですが、どの仮想マシンとどのキーが紐づいているのがちょっとあやふやになってしまいました)。せっかく調べたので、備忘録代わりにメモっておきます。

少しネットを調べてみると、下記記事で紹介されているように、コマンドラインで調べる方法とかあったのですが、今回の場合はこれでは表示されませんでした。

Windows 10のプロダクトキーを確認する方法 | マイナビニュース

ちなみに、Windows 10 のプロダクトキーに加えて、 Windows 7 からアップグレードしたものもあるので、なおさら面倒そうです。

同じ記事にツールも紹介されていたので、これを手掛かりに調べてみるといろんなツールがあることがわかりました。

そこで、いくつかの無料ツールを試してみました。結論からすると、手元の環境の場合、下記のツールで、 Windows 7 からアップグレードしたものも含めて正しく表示されました。

github.com

なお、紹介記事もありました。

ShowKeyPlus のダウンロードと使い方 - k本的に無料ソフト・フリーソフト

How to Find Your Product Key After Upgrading to Windows 10

試した結果はこんな感じでした。

f:id:junichim:20211122131340p:plain

Original Key が Windows 7 インストール時に使ったもので、 Installed Key が Windows 10 にアップグレードした際に発行されたもののようです。 手元のプロダクトキー一覧の一つと Original Key が一致しているので、たぶん正しいのだろうと思います。 また、Windows 10 のプロダクトキーでインストールしたやつは、 Original Key の欄がない状態で表示されました。

問題ないようですね。

ご自分で試される場合はくれぐれも自己責任のうえご用心しておためしください。