以下の内容はhttps://smooth-pudding.hatenablog.com/entry/2025/06/15/101105より取得しました。


Git 管理下の Vivliostyle プロジェクトを Create Book で作る備忘録

Vivliostyle の雛形を作ってくれる create book という npm のコマンドがあります。これで雛形を作ったものをリモートリポジトリで管理できる状態にするための最初の準備のメモです。

前提

以下はインストール済み

  • Node.js
  • Vivliostyle CLI
  • create book

手元のバージョン:

  • npm: 10.9.2
  • vivliostyle
    • cli: 9.2.0
    • core: 2.32.1

OS は Ubuntu 24.04 だが、他の Linux ディストリビューションWindowsMac 等でも適当に読み替えれば多分大丈夫。

ターミナルを開いておき、作業ディレクトリに移動しておく。作業後その直下に Git リポジトリディレクトリが配置される。

# 作業前
work
# 作業後
work/
  └ myBook/ # Git リポジトリ

※work は空である必要はない。既存のファイルは省略。

手順

大まかな流れは以下。

  1. リモートリポジトリ作成
  2. create book で雛形作成
  3. .gitignore を編集
  4. リモートリポジトリを clone
  5. create book で作った中身を移す
  6. push

リモートリポジトリ作成

GitHub や GitLab などでリポジトリ作成。詳細は省略。リポジトリ名は仮に myBook とする。

create book で雛形作成

1. コマンドラインで以下を実行

npm create book myBook

2. いくつかのオプションの入力を求められるので、入力して Enter を押下。

  • Description
    →この本の簡単な説明文 (vivliostyle.config.js に記述される)
  • Auther name
    →著者名 (vivliostyle.config.js に記述される)
  • Auther email
    →著者のメールアドレス (vivliostyle.config.js に記述される)
  • License
    →コードに与えるライセンス (リポジトリルートに配置される)
  • choose theme
    →使う雛形を選択 (vivliostyle.config.js に記述される)

→作業ディレクトリ直下に myBook というディレクトリが作成される

3. ディレクトリ名を変更しておく

mv myBook myBookCreated

.gitignore を編集

1. 雛形のフォルダに移動し、.gitignore ファイルがあることを確認する*1

cd myBookCreated
ls .gitignore
# .gitignore と表示されればOK

2. (1. でなかった場合) 以下コマンドでビルドする

vivliostyle build

→再度 ls コマンドで .gitignore ができたか確認する
3. (2. でもなかった場合) Node.gitignore の内容をコピーして配置する。

touch .gitignore # 空ファイル作成
vi .gitignore # 適当なエディタで開いて貼り付け+保存

4. .gitignore の末尾に以下を追加する

# vivliostyle
.vivliostyle
*.pdf
*.epub
  • .vivliostyle: ビルドの中間ファイル群が入るディレクト
  • *.pdf, *.epub: ビルドで作られる本のファイル。リポジトリに含めていいなら記述は不要。

リモートリポジトリを clone

  1. ブラウザを使ってリポジトリにアクセスし、clone するための URL を取得する。
  2. 作業ディレクトリに戻り、リモートリポジトリを clone する。
cd ../
git clone git@github.com:your-id/myBook.git # GitHub の例

ディレクトリ構造は以下のようになっているはず。

work/
  ├ myBook/
  └ myBookCreated/

create book で作った中身を移す

1. myBookCreated 以下にある .git を消す (myBook の .git を上書きしないようにする)

cd myBookCreated
rm -rf .git
cd ../

2. myBookCreated の中身をごっそり myBook に移す

cp -r myBookCreated/. myBook

3. myBookCreated はもう不要なので削除

rm -rf myBookCreated # 間違えて myBook や他のものを消さないように!

→ファイルの編集は終了

push

myBook のディレクトリの内容をリモートリポジトリに push

cd myBook
git add .
git commit -m "Some good comments"
git push

おまけ

言語選択

私の環境では、最初の状態では句点の位置がずれていました。
vivliostyle.config.js 内の以下の行のコメントアウトを外せば解決しました。

// language: 'ja', // default to undefined.

VSCode で編集する場合

以下を tasks.json に設定しておくと、ビルドオプションから preview と build が実行できて便利。場所は repositoryRoot/.vscode/tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "npm",
            "script": "build",
            "group": "build",
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": false,
                "panel": "shared"
            },
            "problemMatcher": []
        },
        {
            "label": "preview",
            "type": "npm",
            "script": "preview",
            "group": "build",
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": false,
                "panel": "shared"
            },
            "problemMatcher": []
        }
    ]
} 

*1:Windows だと隠しフォルダを表示する設定にしないと見えないかも。




以上の内容はhttps://smooth-pudding.hatenablog.com/entry/2025/06/15/101105より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14