HugoはGo言語で作成されたウェブサイト生成ソフトウェアです。Markdown形式で記事を作成することが出来ます。このページではHugoをダウンロードしてからウェブページを公開するまでの流れをなるべく詳細に記述します。

1. Hugoのダウンロード

HugoはGo言語で書かれていますが、コンパイラについて心配する必要はありません。以下のウェブページからコンパイル済みのバイナリをダウンロードしましょう。Windowsの人は”hugo_x.xx_windows_amd64.zip”をダウンロードすればOKです。

https://github.com/spf13/hugo/releases

2. ブログの作成とテーマの設定

ダウンロードしたzipファイルを任意の場所に解凍します。 以下のコマンドを実行してブログを作成します。 すると、指定した名前のフォルダが作成されます。hugo の実行ファイルはこのフォルダ内に移動しておきましょう。

$ hugo new site [blog_name]
$ mv hugo [blog_name]

次に、中に入って、設定ファイル”config.toml”を編集しましょう。私は以下のように設定しています。

$ cd [blog_name]
$ cat config.toml

baseurl = "http://blog.yyyak.com"
languageCode = "ja-jp"
title = "YuNext: Make+"
theme = "purehugo"

[params]
  twitterName = "KimurayaNext"
  description = "********"
  google_analytics = "UA-********-*"

テーマファイルは以下にまとめられています。丸ごとZIPをダウンロードして、一番上の階層に展開すれば良いでしょう。設定ファイルにある通り、私はpurehugoというテーマを改変して使っています。いろいろなthemeを設定してみて気に入ったものにすればいいでしょう。

https://github.com/spf13/hugoThemes/

テーマごとに設定ファイルの内容が少しずつ異なります。各テーマファイル内の設定ファイル例を参考にしながら、一番上の階層のconfig.tomlを作成しましょう。

3. 投稿

さて、それでは早速投稿してみましょう。以下のコマンドを実行します。about.mdがcontentフォルダの中に作成されます。

$ hugo new about.md

テーマによって初期ファイルは違いますが、大筋は同じはずです。私はこのようにしてみました。

$ cat content/first.md

+++
date = "2015-07-17T3:10:16+09:00"
draft = false
title = "About This Blog"
slug = "about"

+++
このブログでは、以下のような内容を扱いたいと思います。

* Linuxサーバに関するTips
* 情報科学系の研究メモ
* 日々の生活で気づいたこと、調べてわかったこと

マメに更新して、コンテンツの充実したブログにしたいと思います。

実は hugo new コマンドを使わなくてもcontentフォルダの中にmdファイルを作成すれば、hugoはちゃんと認識して投稿を生成します。

4. 公開

さて、それではウェブサイトを生成しましょう。

$ hugo

これで終わりです!新たに作成されたpublicフォルダ内の内容をウェブサーバに移動すれば、そのままブログとして運用できます。

ただ、作成したmarkdownファイルが正しくウェブページに変換されているか確認したいこともあると思います。その時には以下のコマンドを実行しましょう。

$hugo server --watch -D

このコマンドを実行した上で、”http://localhost:1313" にアクセスすると、生成されたページが閲覧できます。watchオプションは内容の変更を自動反映するためのもので、DオプションはdraftフラグがTrueの投稿も生成対象にします。

おつかれさまでした、完了です

なんとこれだけでブログが出来上がります。すごく簡単ですよね!今後は投稿する上でのTipsを紹介したいと思います。