Python製の静的webジェネレータ”Lektor”を使った時のおぼえがきです.
環境
- Mac OS X 10.10.5 (Yosemite)
- python Python 2.7.8 :: Anaconda 2.1.0 (anacondaである意味は無いです.)
- lektor
※Pythonは2.7じゃないと動かないみたいです.あと,ImageMagickも必要とか..(公式サイト | Command Line Application)
導入
とりあえず,公式サイトに書いてある通りにコマンドを実行してみます.
$ curl -sf https://www.getlektor.com/install.sh | sh Welcome to Lektor This script will install Lektor on your computer. Installing at: bin: /usr/local/bin app: /usr/local/lib/lektor Continue? [Yn] y  # インストール先を聞かれてるみたい.とりあえず y ...(なんだか1分ぐらいゴニョゴニョやってるみたい) All done!
無事に終了したみたいです.
Quickstart
これもとりあえず公式ドキュメント通りに実行してみます.
$ lektor quickstart ~/D/Lektor ❯❯❯ lektor quickstart Lektor Quickstart ================= This wizard will generate a new basic project with some sensible defaults for getting started quickly. We just need to go through a few questions so that the project is set up correctly for you. Step 1: | A project needs a name. The name is primarily used for the admin UI and | some other places to refer to your project to not get confused if multiple | projects exist. You can change this at any later point. > Project Name: sample # プロジェクト名とりあえずsampleで: sample Step 2: | Your name. This is used in a few places in the default template to refer | to in the default copyright messages. > Author Name [************]: takunoko #Author Nameには標準でPCのユーザ名が入っています. Step 3: | This is the path where the project will be located. You can move a | project around later if you do not like the path. If you provide a | relative path it will be relative to the working directory. > Project Path [/Users/takunoko/Develop/Lektor/sample]: # プロジェクトを作るパスはとりあえずカレントディレクトリで. Step 4: | Do you want to generate a basic blog module? If you enable this the | models for a very basic blog will be generated. > Add Basic Blog [Y/n]: n # ブログのベーシックモジュール使う? -> よくわからないけどブログを作りたいわけじゃない.:n That's all. Create project? [Y/n] y # プロジェクトをつくりますか? :y
(2016/7/3: 追記)
作成するディレクトリまでに日本語の階層があるとエラーになります。
例: /User/username/日本語/(ここ以下で lektor quickstartをやるとミスる)
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 44: ordinal not in range(128)
現在,ディレクトリ内はこんな感じ.
sample ├── assets │ └── static │ └── style.css ├── content │ ├── about │ │ └── contents.lr │ ├── contents.lr │ └── projects │ └── contents.lr ├── models │ └── page.ini ├── sample.lektorproject └── templates ├── layout.html ├── macros │ └── pagination.html └── page.html
うん.いまいちよくわからん.
とりあえず公式ドキュメントの続きにしたがって,作成したプロジェクトのディレクトリに移動して以下のコマンドを実行
$ lektor server * Project path: /Users/takunoko/Develop/Lektor/sample/sample.lektorproject * Output path: /Users/takunoko/Library/Caches/Lektor/builds/84a9808e909da875eb12e9687cfacd93 Started source info update * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) Finished source info update in 0.14 sec Started build U index.html U about/index.html U projects/index.html U static/style.css Finished build in 0.11 sec Started prune Finished prune in 0.01 sec
何か始まったみたいだ...表示されてるurlにアクセス...http://127.0.0.1:5000/
スゲ〜 まだいくつかコマンドを入力しただけなのにそれっぽいものができてる...
公式ドキュメントには/admin/ にアクセスするとadminページに行けるとか...
http://127.0.0.1:5000/admin/
スゲーーーー^^^
なんだか編集画面が現れた..編集してみよう.
なるほど.WordPressみたいにWebから編集できる…
ついでに,システムフィールドってところをいじるとなんだかエラーが出ました.
ついでに,Markdownな書き方もできるようです.
ビルド
いままでゴニョゴニョいじったWebサイトは編集用ページで,実際にはいじったものを公開用にする必要があります.ここも公式ドキュメントにしたがって…
lektor build Started build Finished build in 0.02 sec Started prune Finished prune in 0.01 sec
どうやら無事にビルドできたみたい..
ここで出力されるディレクトリはカレントじゃ無いです.以下のコマンドで確認できます.
lektor project-info --output-path /Users/takunoko/Library/Caches/Lektor/builds/84a9808e909da875eb12e9687cfacd93
(こんなところに出力されるのか…)
以上でQuickStartは終了みたいです.お疲れ様でした〜
まとめ
むっちゃ簡単にそれっぽいWebページができました.最高!
Lektorを調べた理由として,GitHub pagesに公開するページにいい感じの静的Webを作ってくれる何かないかな〜と思って探してたら見つけました.
何より,Pythonが好きだからPython製のものが良かったw
今後はLektorを使ってGitHub pagesの自分のページでも作りなおそうかな〜と思ってます.
Deployment機能とかPluginとか使ってみたらまたブログを書こうと思うのでご期待ください.
Pingback: Lektorを使ってみた part2 (フォルダとかファイルとか) | たくのこ Web
Pingback: Python製のWebサイト生成ツールLektorで、github pagesに自分のサイトを公開する | IT技術情報局