静的サイトは、高速で安全、公開が容易であり、バージョン管理システムを介して管理できます。 ジャスパー・ファン・デル・ジュート
ジェスパーが言ったことの証拠を提供する必要はないことを願っています。すべてがすでにはっきりしているからです。
その日、個人ページを作成することにしたとき、githubに投稿できることがわかりました。 公開するには、リポジトリからgit push -u origin masterを呼び出すだけで十分であるため、すべてが非常に単純である必要があります。 しかし、最初に、静的サイトのビルダーを見つけて、一度使用してすべてを構成し、起動してから、時々新しい投稿、プロジェクト情報などを追加する必要があります。 Windowsマシンで最も人気のあるJekyllソリューションを構成するのは、インターネットに少し登り、素晴らしい代替手段であるHakyllを見つけたため、どういうわけか問題が大きすぎました。 そして、Haskellで何かをしようとするために私の手が長い間かゆいので、試してみる価値があると判断しました。 あなたが私の足跡をたどるのに興味があるなら、ようこそ。
ステップ1.インストール。
Haskell Platformを手に入れることから始めましょう。 インストール後、以下を受け取ります。
- グラスゴーコンパイラは、私が間違えなければ最も有名なものの1つです。
- 対話型環境-コンソール形式とWinGHCアプリケーションでラップされた両方。
- CabalはHaskellのパッケージマネージャーです。 (ここでは、このテーマに関する他の意見はインターネットで読むことができますが、私の謙虚な見解では、まだパッケージマネージャーであることに注意したいと思います)。
このためにHaskellの経験がない場合は、ghciを実行して、それが何であるかを試すだけでよいように思えます。 別の方法は、 tryhaskellで初めて試すことです。
Haskellをより詳細に学習したい場合は、素晴らしい本「 Haskellで善の名で教育してください 」 をお勧めします 。 しかし、私はあなたに少し秘密を教えます。 Hackellでブログを作成するためにHaskellを知る必要はありません。 すでにプログラミングの経験があり、バージョン管理システムとは何かを知っている場合(そして、私は確信しています)、以下で説明するすべてを読み終えるにはこれで十分です。 好みに合わせて構築されたデフォルトサイトの外観をカスタマイズするには、おそらくhtmlとcssのスキルが必要になると思いますが、それについては後で詳しく説明します。
ステップ2. Hakyllを入手する
私たちはすでに目標にさらに近づく準備ができており、cabalはこれを助けてくれます。 そして、素晴らしいアイデアはそれをアップグレードすることです。
> cabal update > cabal install cabal-install
パッケージ情報が更新されるまで少し時間がかかり、2番目の魔法のコマンドの準備ができています。
> cabal install hakyll
できた! かどうか。 実際、上記のコマンドを呼び出した後にハックすることになっていますが、個人的にはディレクトリや他の恐怖が存在しないというエラーを受け取りました。 残念ながら、私は問題の詳細を調べるために時間を無駄にせず、単にすべてを知っているGoogleに尋ねました。 彼は、最後のコマンドを少し異なる形式で実行することを提案しました。
> cabal install --flags="-unixFilter" --constraint="directory installed" hakyll-XXXX
XXXXの代わりに、当然パッケージのバージョンがあるはずです。 ここで最後の1つを確認してください :Windowsを使用しているためにエラーが発生する可能性があると仮定しているだけです。
ステップ3.サイトを初期化します。
これらの手順はプロジェクトの公式ページで詳しく説明されていますが、整合性のためにここで繰り返します。 前のステップは、hakyllパッケージで私たちに報いることでした。したがって、コンソールで将来の素晴らしい個人ページの場所を開き、次のことを行います。
> hakyll-init our_amazing_personal_site > cd our_amazing_personal_site
何が起こったのか見てみましょう。 そして、次のものを入手しました。
- site.hsにはHaskellコードが含まれています。このコードは後で実行可能ファイルにコンパイルされ、サイトを構築して、たとえばこのサーバーを表示するローカルサーバーを実行する機会を与えます。
- index.htmlには、ホームページのコンテンツが含まれています
- contact.markdownは、連絡先ページにコンパイルされます
- about.rstは「About us」ページにコンパイルされます
- テンプレートパパには、後でサイトのさまざまなページを構築するのに役立つテンプレートが含まれています
- 画像には明らかに写真が含まれています
- postsには.markdown形式のサンプル投稿が含まれています
- cssにはサイトのスタイルが含まれています
もちろん、ここで必要なものはすべて変更できますが、これを行う前に、Haskellを知っていて、site.hsのコンテンツを調べたことを確認してください。 そしてもちろん、今こそ他のファイルに含まれているものを見て回るときです。
次に、実行可能ファイルをコンパイルします。
> ghc --make site.hs > site build
おそらく、フォルダーにさらに多くのファイルが表示されていることに気づいたでしょう。 それらを見てください:
- site.o 、 site.hi 、およびsite.exeコンパイル製品のsite.hsファイル
- _siteには、お気に入りのブラウザーで開く準備ができたコンパイル済みサイトが含まれています。 やった! :)
- _cacheには、サイトをローカルに移動するときにキャッシュが含まれます
プレビューサーバーにハキルをインストールした場合は、以下を呼び出します。
> site preview
地元のホストに急いで私たちに何が起こったのかを見てください。 8000ポートがビジーの場合は、次を呼び出します。
> site server --port=5050
そして結果を見てみてください。
ステップ4.公開。
すでにgithubに自分のアカウントがあることを願っています。そうでない場合は、それを取得する時間です。 いずれの場合でも、登録(またはログイン)後、次の名前のリポジトリを作成します: [your github username] .github.com
gitBushを実行し、hackillによって作成された_siteフォルダーに移動して、以下を実行します。
$ git init $ git add . $ git commit -m "my amazing personal page with hakyll init" $ git remote add origin [repository address github gently provided you with] $ git push -u origin master
ふー...私たちはそれをやった:)今あなたのリポジトリを訪問し、プッシュが完全に行ったことを確認してください。 ブラウザで[githubユーザー名] .github.comと入力するだけで、最後に新しい素晴らしいページにアクセスできます。
エピローグ。
記事が少なくとも少し適合していると思われる場合は、個人用の井戸に書き込むかコメントを残してください。 ありがとう:)