HugoのコンテンツフォーマットにOrgを使うハナシ

PUBLISHED ON 2019-12-30 — PROGRAMMING

どうも、僕です。

今回はOrg modeでHugoコンテンツを書いてみるハナシをしたいと思います。

なぜわざわざこんなこと書くかというとHugoがOrgをそのまま扱えるという事を広めたいからです。

Emacsユーザーなら一度は触ったことがあるOrg mode、実はかなり前からHugoはOrg modeをそのまま扱えていたのです。

それなのになぜox-hugoを使う記事ばかり出てくるのか…。

ということでHugoでそのままOrg mode書くハナシを書いてみたいと思います。

Org mode with Hugo

HugoのList of content formatsを見ると何気に org の文字が見えますね。

どうもHugoは2017年頃からOrgに対応していたらしく、現状はgo-org(昔はgoorgeous)を取り込んで変換できるようになっています。

理由はよくわかりませんが直接Orgで書いている人をあまり見かけないように思います…。

もちろんox-hugoを使うメリットもありますし、ox-hugoじゃないとできないこともあります。

ox-hugo

よくOrg modeのフォーマットでHugoコンテンツを書く際によく使われるものにox-hugoがあります。

ox-hugoは、Org modeをMarkdownにExportする便利なもので、1 org ファイルで複数エントリを出力することも可能です。

実際、私もOrgファイルを使う場合に1エントリ、1ファイルよりも1ファイルに複数エントリ書くことが多いです。

そのため、Orgファイルを自身でどういうスタイルで運用しているかによってはox-hugoを使うほうが利便性があがると思います。

Org modeでの例

HugoでOrgを読み込ませる場合、1ファイル、1エントリ形式にしておく必要があります。

metadata部はOrgのコメントとして記述しておけば読み込まれます。

この部分は各テーマによっても異なるのでテーマに合わせて適時合わせます。

以下簡単な例です。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#+title: HugoのコンテンツフォーマットにOrgを使うハナシ
#+description: Hugoで直接Org modeを使おう
#+date: 2019-12-30
#+slug: hugo-with-org
#+tags[]: programming
#+categories[]: programming
#+toc: false
#+eyecatch: img/strongneko.jpg

どうも、僕です。

今回は[[https://orgmode.org/][Org mode]]でHugoコンテンツを書いてみるハナシをしたいと思います。

なぜわざわざこんなこと書くかというとHugoがOrgをそのまま扱えるという事を広めたいからです。

Emacsユーザーなら一度は触ったことがある[[https://orgmode.org/][Org mode]]、実はかなり前からHugoはOrg modeをそのまま扱えていたのです。

それなのになぜ[[https://ox-hugo.scripter.co/][ox-hugo]]を使う記事ばかり出てくるのか…。

ということでHugoでそのまま[[https://orgmode.org/][Org mode]]書くハナシを書いてみたいと思います。

…

最後に

ox-hugoによる2段階運用がめんどくさくなったら、そのままOrg書くことも検討しましょう。

(Propertyの移行は大変だけどね)