静的サイトジェネレータやらを使ってブログをつくってみることにしました。
今回はPython製のPelicanを使いました。
#環境
- Windows10
- Python 3.4
- virtualenv
- pip
#Pelicanインストール
まず、virtualenv コマンドでpelicanという名前で仮想環境を作成します。
C:\> virtualenv pelican
pelicanへ移動
C:\> cd pelican
仮想環境へ移動
C:\pelican> Scripts\activate
Pelicanをインストール
(pelican)C:\pelican> pip install pelican
記事をMarkdown形式で書きたいので、
(pelican)C:\pelican> pip install Markdown
これでブログ作成準備が整いました。
#ブログ作成
myblogプロジェクトフォルダ作成、移動
(pelican)C:\pelican> mkdir myblog
(pelican)C:\pelican> cd myblog
ブログの雛型作成。
(pelican)C:\pelican\myblog> pelican-quickstart
このときブログタイトルや著者名など、いろいろ質問されるので答えます。
#記事を書く
Markdown形式で記事をかきます。
Title: Pelicanでブログ
Date: 2016-05-20 22:40
Category: Pelican
Tags: pelican, python
Slug: first-post
Author: Daiki
Summary: Pelicanでブログ作成
Pelicanでブログを作成します。
これを\myblog\content\以下に保存します。
#記事投稿
本来ならmake html
コマンドで簡単に静的ページを生成できるのですが、Windowsでは出来ないのでバッチファイルを使います。
(https://gist.github.com/traeblain/4252511)
ここにあるpmake.cmdをmyblog以下に置き、
set _PELICAN=$pelican
set _PELICANOPTS=$pelicanopts
.
.
cd %_OUTPUTDIR% && python -m SimpleHTTPServer
.
.
を
set _PELICAN=pelican
set _PELICANOPTS=
.
.
cd %_OUTPUTDIR% && python -m http.server
.
.
にpelicanのパスとpython3.4の場合のサーバー起動コマンド(2.xの場合はそのまま)を編集、
これでmake
の代わりにpmake
コマンドでコンパイルできるようになります。
(pelican)C:\pelican\myblog> pmake html
特にエラーがなければHTML化に成功しました。
localhostサーバー起動
(pelican)C:\pelican\myblog> pmake serve
これでhttp://localhost:8000
にブラウザでアクセスすると作成記事の確認ができます。
#Githubで公開
公開用のHTMLファイルの生成
(pelican)C:\pelican\myblog> pmake publish
公開用URLなどの設定はpelicanconf.pyで変更できます。
outputディレクトリへ移動
(pelican)C:\pelican\myblog> cd output
Githubでページを公開 (公開URL:ユーザー名.github.io)
(pelican)C:\pelican\myblog\output> git init
(pelican)C:\pelican\myblog\output> git add --all
(pelican)C:\pelican\myblog\output> git commit -m "first post"
(pelican)C:\pelican\myblog\output> git push https://github.com/ユーザー名/ユーザー名.github.io.git master:master
*追記: output以下にgitレポジトリを作るとpmake html
でエラーがでるのでmyblog以下につくり、pushするときにghp-importを使ってoutputを指定でうまく共存できるみたいです。
*追追記: 他にもpublishconf.pyのDELETE_OUTPUT_DIRECTORY = False
に変更するとうまくいきました。
参考:(http://docs.getpelican.com/en/3.6.3/tips.html)
参考サイト