目次
ペリカンとの出会い
私は、EmacsのOrg-modeを愛用している。 Org-modeユーザーのためのブログを書くツールを調査したが、 納得いくモノを見つけられなかった。
そこで、多くの静的サイトジェネレーターが掲載されている StaticGenから使いやすそうなツールを選定を試みた。 そして、巡り巡ってPelican(以下、ペリカン)で本ブログを構築できることを発見した。
ペリカンとは、Python製の静的サイトジェネレーターでブログを作成するツールである。 GitHub Pagesで本ブログを公開するまで手順を記録として残しておく。
ペリカンの公式ドキュメント
不明点に関しては、 ペリカンの公式ドキュメント を読んで解決する。
ペリカンを導入する
はじめに、ペリカンでブログを作成&公開するために
必要なライブラリを pip
を利用してインストールする。
(以下の作業は、Ubuntu 18.10で実施)
ペリカンのインストール
以下のコマンドを利用し、
pelican
・
ghp-import
をダウンロードする。
sudo -H pip3 install pelican sudo -H pip3 install ghp-import
インストールできていることを確認
インストールできた pelican
の情報を確認した結果を記録する。
$ pip3 show pelican Name: pelican Version: 4.0.1 Summary: Static site generator supporting reStructuredText and Markdown source content. Home-page: https://getpelican.com/ Author: Alexis Metaireau Author-email: authors@getpelican.com License: AGPLv3 Location: /usr/local/lib/python3.6/dist-packages Requires: pygments, six, blinker, docutils, feedgenerator, pytz, unidecode, jinja2, python-dateutil Required-by:
ペリカンのプラグインとテーマを取得
GitHubからペリカン用のテーマとプラグインを導入する。
/opt/pelican
以下にダウンロードするようにしている。
git clone https://github.com/getpelican/pelican-themes.git git clone https://github.com/getpelican/pelican-plugins.git
ペリカンでブログを作成する
ペリカンでブログを作成するために、
pelican-quickstart
を実行する。
$ pelican-quickstart -h usage: pelican-quickstart [-h] [-p PATH] [-t title] [-a author] [-l lang] A kickstarter for Pelican optional arguments: -h, --help show this help message and exit -p PATH, --path PATH The path to generate the blog into (default: .) -t title, --title title Set the title of the website (default: None) -a author, --author author Set the author name of the website (default: None) -l lang, --lang lang Set the default web site language (default: None)
ヘルプコマンドで確認すると、
title
・
author
・
lang
などが設定できるので、以下のコマンドを実行する。
pelican-quickstart --path . -t "ブログ名" -a "作者名" -l "ja"
ペリカンのテーマを設定する
ペリカンのテーマを確認
ペリカンのテーマ一覧を確認し、 pelican-bootstrap3 を利用することにした。
ブログにテーマの適用
以下のディレクトリで、以下のコマンドを実行して テーマのインストールを行う。
/opt/pelican/pelican-themes
sudo pelican-themes --i pelican-bootstrap3
テーマを適用するために設定ファイル
(pelicanconf.py
)に以下を記載する。
THEME = 'pelican-bootstrap3' JINJA_ENVIRONMENT = {'extensions': ['jinja2.ext.i18n']}
ペリカンのプラグイン設定する
Org-modeで記事を書く
EmacsのOrg-mode記法で記事を書くために設定ファイル
(pelicanconf.py
)に以下を記載する。
PLUGINS += ['org_reader'] ORG_READER_EMACS_LOCATION = '/usr/bin/emacs'
GitHub Pagesでブログを公開する
ブログをホスティングするために、 ブログ用のリポジトリを用意し GitHub Pagesで公開できるようにする。
手動で動作確認
GitHubに公開する方法を参考に以下のコマンドを実行する。
pelican content -o output -s pelicanconf.py ghp-import output -b gh-pages git push origin gh-pages
コマンドが成功すれば、以下のURLで公開が完了している。
Makefileを編集
Github Pageに簡単に公開できるようにするために、Makefileのターゲットを追加する。
github: html ghp-import $(OUTPUTDIR) git push origin gh-pages