NKSSG
NakaKen Static Site Generator

コマンドのすべて

🎮

NKSSG では、サイトの構築などを行う コマンド (command) を用意しています。VSCode なら Ctrl + @ でターミナルを開いて実行します。

ここでは、すべてのコマンドと、オプションを説明していきます。他の記事でもところどころにコマンドが出てきますが、すべてをカバーしているのはこのページだけです。

なお、コマンドは、nkssg.yml ファイルがあるフォルダに移動した状態で実行しましょう。nkssg.yml ファイルが見つからない場合、エラーが発生してしまいます。

build コマンド

次のコマンドを実行すると、docs フォルダ内の記事をもとに、静的ファイルを public フォルダへ書き出します。

nkssg build

なお、このコマンドを実行しても、前の内容は削除されません。もし、public フォルダ内のファイルをすべて削除してから、再度書き出したい場合は、次のどちらかを実行します。

nkssg build -c
nkssg build --clean

どちらを実行しても、同じ結果が得られます。

serve コマンド

次のコマンドを実行すると、ローカルサーバー上でサイトを確認できるようになります。

nkssg serve

一時フォルダにサイトの中身が書き出されます。この内容をローカルサーバー上で確認することができます。デフォルトの設定では http://127.0.0.1:5500/ でトップページにアクセスできます。VSCode を使っている場合は、ターミナル上で表示されている URL を、Ctrl キーを押しながらクリックすれば、ブラウザで開くことができます。

このモードでは、docs フォルダ内のファイルや、themes フォルダ内のファイル(テーマとして使っているものだけ)が更新されると、サイトの再生成とページの更新が行われます。記事の執筆やテーマの作成に便利です。

staticオプション

docs フォルダ内などのファイルが更新されるたびにサイトが再生成される機能は、便利ではありますが、不要な場合もあるかもしれません。不要な場合は、次のようにします。どちらを実行しても構いません。

nkssg serve -s
nkssg serve --static

デフォルトでは、このオプションは有効になっていません。

また、サイトの再生成をしたいが、ページ数が多いので時間がかからないか心配な人は、後述するプラグイン (TODO) を試してみましょう。

allオプション

build でも serve でも、作成対象の記事は draft でないものだけです。しかし、serve の場合には、draft の記事も含めてすべてを対象にプレビューをすることができます。次のように書きます。

nkssg serve -a
nkssg serve --all

どちらでも同じ結果です。draft の記事を公開したらどのようになるか、を確認することができます。デフォルトでは、このオプションは有効になっていません。

portオプション

ローカルサーバーのポート番号を変えたい場合は、次のようにします。

nkssg serve -p 5501
nkssg serve --port 5501

複数のサイトをローカルサーバーで立ち上げたい場合には、ポート番号を変えるといいでしょう。上のようにすると、http://127.0.0.1:5501 でアクセスできるようになります。デフォルトのポート番号は 5500 です。

draft コマンド

draft コマンドは、1つの記事だけをローカルサーバーで確認するための機能です。

nkssg draft {path}

{path} の部分に、ファイルへのパスを入力します。ファイルへのフルパスか、config.yml のあるフォルダからの相対パスを入力します。

このコマンドを実行してから、http://127.0.0.1:5500 にアクセスすると、そのページだけを見ることができます。

draft コマンドでは、1ページしか作成しないので、全体を作成する serve コマンドよりも処理は速くなります。しかし、他のページは作成されていないので、リンクをクリックしても別ページを見ることはできません。

なお、このときに使用するテンプレートは、テーマ内の draft.html です。

portオプション

draft も、ポート番号を変えて実行することができます。

nkssg draft -p 5501
nkssg draft --port 5501

複数ページを見たいときに使うといいでしょう。どちらを実行しても同じ結果になります。

new コマンド

new コマンドを使うと、サイトの新規作成や、ページの新規追加を行うことができます。

siteオプション

サイトの新規作成は、次のように行います。

nkssg new site

こうすると、今いるフォルダに、サイトのひな型ができあがります。次のようにしても同じことが起きます。最後にピリオドがついていますが、これが「今いるフォルダ」を表しています。

nkssg new site .

一方、今いるフォルダに新規フォルダを作り、そこにサイトのひな型を作りたい場合は、次のようにします。

nkssg new site {site-name}

{site-name} には好きな名前を入れます。 cd {site-name} として作業フォルダの場所を変えてから、nkssg build などを実行しましょう。

他のオプション

記事を追加するには、次のようにします。

nkssg new post

初期状態では、フロントマターとサンプルテキストが入ったファイルが、post フォルダの下に作成されます。VSCode の場合は、ターミナル上でパスが表示されるので、それを Ctrl + クリック で開いて編集しましょう。

このひな形は、 /themes/default/ 内の new フォルダの下に入っています。これを変えれば、別のひな型を自由に作ることができます。

ひな型の編集方法は、別のページで解説しています。

🐤 新規記事のひな型を作ろう

上の記事でも解説していますが、新規記事のひな型は新しく追加することもできます。例えば、/themes/default/new/new_book.html/themes/child/new/new_book.html にひな型を追加すれば、nkssg new book でこのひな形を使って新規ファイルを作れるようになります。