#技術書典3 でサークル参加したことのふりかえり

先日、ブログに書いたように技術書典3にサークル参加していたので、そのふりかえりをブログに書いておく。

sinsoku.hatenablog.com

同人誌を作成した環境

Re:VIEW + Docker を使用して pdf を作成する環境を作りました。 CircleCI でビルドして、textlint で簡単な日本語のチェックも行いました。

ビルド方法

ローカルに下記のスクリプトを作成して、使っていた。

build

#!/bin/sh

ROOT=$(cd $(dirname $0)/;pwd)
IMAGE=vvakame/review

docker run --rm -v ${ROOT}:/work ${IMAGE} /bin/sh -c "cd /work && rake clean pdf"

使い方は ./build を実行するだけで、実行すると config.yml を使って book.pdf が出来る

CircleCI の設定

.circleci/config.yml

version: 2
jobs:
  build:
    docker:
      - image: vvakame/review
    steps:
      - checkout
      - run: npm i
      - run: npm t
      - run: rake clean pdf
      - store_artifacts:
          path: book.pdf
          destination: book.pdf

textlint の設定

package.json

{
  "name": "book",
  "version": "0.1.0",
  "dependencies": {
    "textlint": "^8.2.1"
  },
  "devDependencies": {
    "textlint": "^8.2.1",
    "textlint-plugin-review": "^0.3.3",
    "textlint-rule-preset-japanese": "^2.0.0",
    "textlint-rule-preset-jtf-style": "^2.3.0"
  },
  "scripts": {
    "test": "textlint *.re"
  }
}

.textlintrc

{
  "rules": {
    "preset-japanese": true,
    "preset-jtf-style": {
      "1.1.3.箇条書き": false,
      "4.2.6.ハイフン(-)": false
    }
  },
  "plugins": [
    "review"
  ]
}

印刷所

いくつか印刷所はあるのですが、最終的に名前の可愛い ねこのしっぽ を使いました。

そして、入稿締切は10/18(水)と一番遅い「ねこスパーク」のプランを選択。

入稿とトラブル

  • 10/18(水)
    • 04:00頃 入稿
    • 17:00頃 入稿に不備が発覚
    • 印刷所の方と相談し、翌日朝まで待って頂くように調整(特急料金で10%up)
    • 22:00頃 用紙サイズとフォント問題は解決。用意サイズの変更に伴い、全ページのデザインが崩れる。
  • 10/19(木)
    • 02:00頃 全ページの校正が完了

印刷所から指摘された不備とその対応

  • 表紙にレイヤーが残っていた
    • レイヤーを結合して、表紙を再アップロード
  • pdf の目次やリンクに色がついている
    • 印刷所でグレースケール化の対応を依頼
  • B5 の注文なのに、pdf のサイズは A4 になっている
    • 19日夜に対応。これにより 60p => 80p とページ数が増加。
  • フォントが埋め込まれていない
    • 別のフォントを使うようにして対応

ちなみに、ねこのしっぽではノンブルは無くても大丈夫ですが、他の印刷所だと必要なケースがあるので注意。

B5の対応

review-init で生成されていた config.yml にはコメントで下記のような記述がある。

# 1ページの行数文字数と1kbごとのページ数を用紙サイズで指定する(A5 or B5)。
# page_metric: A5

これを B5 にして、コメント外して安心してたけど、どうやらこれだと駄目らしい。

  # LaTeX用のdocumentclassを指定する
  # texdocumentclass: ["jsbook", "uplatex,oneside"]
+ texdocumentclass: ["jsbook", "b5j,twoside,openany,uplatex"]

documentclass を指定する必要があった。難易度が高い。

フォントの埋め込み

正直、詳細はよく分からないけど、Type3 のフォントが実際は埋め込まれているのに、印刷所で認識できていないらしい?

で、他のメジャーなフォントを使うように変更したから、問題が解決した・・・という事なのかな。 よく分かっていない。

とりあえず kmuto さんのアドバイス通りに変更したところ修正できた。

sty/reviewmacro.sty

+\usepackage{lmodern}
 %% from review-pdfmaker
 \usepackage{fancyhdr}
 \pagestyle{fancy}

進捗状況のグラフ化

GitHub で原稿を書いていたので、実際のコミットログをグラフにしてみました。

締切に追われている人の状況が見事に可視化されていますね。

コミット数

$ git log --date=format:"%Y-%m-%d" --no-merges --author=sinsoku --format="%cd" | uniq -c
   6 2017-10-19
  15 2017-10-18
  23 2017-10-17
   5 2017-10-16
   4 2017-10-15
   4 2017-10-14
   3 2017-10-11
   6 2017-10-10
   1 2017-10-09
   5 2017-10-08
   1 2017-10-07
   7 2017-10-06
   4 2017-10-04
   4 2017-10-02
   2 2017-10-01
   1 2017-09-30
   1 2017-09-25
   2 2017-09-23
   1 2017-09-22
   2 2017-09-20
   3 2017-09-17
   2 2017-09-16
   1 2017-09-11
   1 2017-09-03
   1 2017-08-26
   1 2017-08-24
   6 2017-08-10

f:id:sinsoku:20171023001014p:plain:w600

変更量

$ git log --date=format:"%Y-%m-%d" --no-merges --author=sinsoku --shortstat --format="%cd" | paste -d , - - -  
2017-10-19,, 1 file changed, 15 insertions(+)
2017-10-19,, 1 file changed, 50 insertions(+), 19 deletions(-)
2017-10-19,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-19,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-19,, 1 file changed, 6 insertions(+), 5 deletions(-)
2017-10-19,, 1 file changed, 34 insertions(+), 25 deletions(-)
2017-10-18,, 1 file changed, 14 insertions(+), 9 deletions(-)
2017-10-18,, 1 file changed, 10 insertions(+), 8 deletions(-)
2017-10-18,, 1 file changed, 9 insertions(+), 12 deletions(-)
2017-10-18,, 1 file changed, 5 insertions(+), 4 deletions(-)
2017-10-18,, 1 file changed, 6 insertions(+), 3 deletions(-)
2017-10-18,, 1 file changed, 11 deletions(-)
2017-10-18,, 2 files changed, 11 insertions(+), 11 deletions(-)
2017-10-18,, 1 file changed, 1 insertion(+)
2017-10-18,, 3 files changed, 96 insertions(+), 1 deletion(-)
2017-10-18,, 1 file changed, 8 insertions(+), 8 deletions(-)
2017-10-18,, 2 files changed, 2 insertions(+), 2 deletions(-)
2017-10-18,, 3 files changed, 9 insertions(+), 9 deletions(-)
2017-10-18,, 1 file changed, 17 insertions(+), 1 deletion(-)
2017-10-18,, 7 files changed, 9 insertions(+), 9 deletions(-)
2017-10-18,, 1 file changed, 44 insertions(+), 15 deletions(-)
2017-10-17,, 2 files changed, 6 deletions(-)
2017-10-17,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-17,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-17,, 3 files changed, 5 insertions(+), 3 deletions(-)
2017-10-17,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-17,, 1 file changed, 5 insertions(+), 5 deletions(-)
2017-10-17,, 1 file changed, 27 insertions(+), 26 deletions(-)
2017-10-17,, 1 file changed, 33 insertions(+), 37 deletions(-)
2017-10-17,, 1 file changed, 16 insertions(+), 27 deletions(-)
2017-10-17,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-17,, 2 files changed, 1 deletion(-)
2017-10-17,, 1 file changed, 145 insertions(+), 18 deletions(-)
2017-10-17,, 3 files changed, 69 insertions(+), 11 deletions(-)
2017-10-17,, 4 files changed, 3 deletions(-)
2017-10-17,, 1 file changed, 280 insertions(+), 1 deletion(-)
2017-10-17,, 1 file changed, 27 deletions(-)
2017-10-17,, 1 file changed, 20 insertions(+), 4 deletions(-)
2017-10-17,, 1 file changed, 78 insertions(+), 5 deletions(-)
2017-10-17,, 2 files changed, 49 insertions(+), 22 deletions(-)
2017-10-17,, 1 file changed, 31 insertions(+), 5 deletions(-)
2017-10-17,, 1 file changed, 92 insertions(+), 16 deletions(-)
2017-10-17,, 2 files changed, 0 insertions(+), 0 deletions(-)
2017-10-17,, 1 file changed, 1 insertion(+)
2017-10-16,, 1 file changed, 62 insertions(+), 17 deletions(-)
2017-10-16,, 2 files changed, 43 insertions(+), 17 deletions(-)
2017-10-16,, 1 file changed, 7 insertions(+), 7 deletions(-)
2017-10-16,, 1 file changed, 29 insertions(+), 24 deletions(-)
2017-10-16,, 6 files changed, 204 insertions(+), 9 deletions(-)
2017-10-15,, 1 file changed, 27 insertions(+), 14 deletions(-)
2017-10-15,, 1 file changed, 54 insertions(+), 19 deletions(-)
2017-10-15,, 1 file changed, 46 insertions(+), 13 deletions(-)
2017-10-15,, 1 file changed, 2 insertions(+), 1 deletion(-)
2017-10-14,, 1 file changed, 40 insertions(+), 11 deletions(-)
2017-10-14,, 1 file changed, 10 insertions(+)
2017-10-14,, 1 file changed, 53 insertions(+), 6 deletions(-)
2017-10-14,, 1 file changed, 71 insertions(+), 6 deletions(-)
2017-10-11,, 1 file changed, 55 insertions(+), 8 deletions(-)
2017-10-11,, 1 file changed, 6 insertions(+), 1 deletion(-)
2017-10-11,, 11 files changed, 241 insertions(+), 120 deletions(-)
2017-10-10,, 3 files changed, 37 insertions(+), 37 deletions(-)
2017-10-10,, 1 file changed, 26 insertions(+), 10 deletions(-)
2017-10-10,, 1 file changed, 14 insertions(+), 14 deletions(-)
2017-10-10,, 1 file changed, 50 insertions(+), 2 deletions(-)
2017-10-10,, 8 files changed, 7 deletions(-)
2017-10-10,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-09,, 1 file changed, 115 insertions(+), 30 deletions(-)
2017-10-08,, 6 files changed, 79 insertions(+), 11 deletions(-)
2017-10-08,, 1 file changed, 34 insertions(+), 17 deletions(-)
2017-10-08,, 2 files changed, 2 insertions(+), 7 deletions(-)
2017-10-08,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-10-08,, 4 files changed, 0 insertions(+), 0 deletions(-)
2017-10-07,, 5 files changed, 41 insertions(+), 10 deletions(-)
2017-10-06,, 1 file changed, 12 insertions(+), 8 deletions(-)
2017-10-06,, 1 file changed, 2 insertions(+)
2017-10-06,, 21 files changed, 258 insertions(+), 255 deletions(-)
2017-10-06,, 1 file changed, 324 deletions(-)
2017-10-06,, 3 files changed, 30 insertions(+)
2017-10-06,, 2 files changed, 6 insertions(+), 1 deletion(-)
2017-10-06,, 1 file changed, 3 insertions(+), 3 deletions(-)
2017-10-04,, 38 files changed, 11 insertions(+), 22 deletions(-)
2017-10-04,, 1 file changed, 29 insertions(+), 2 deletions(-)
2017-10-04,, 1 file changed, 42 insertions(+), 2 deletions(-)
2017-10-04,, 1 file changed, 43 insertions(+), 4 deletions(-)
2017-10-02,, 1 file changed, 20 insertions(+), 2 deletions(-)
2017-10-02,, 1 file changed, 19 insertions(+)
2017-10-02,, 1 file changed, 51 insertions(+), 18 deletions(-)
2017-10-02,, 1 file changed, 116 insertions(+), 32 deletions(-)
2017-10-01,, 2 files changed, 4 insertions(+), 1 deletion(-)
2017-10-01,, 22 files changed, 156 insertions(+), 63 deletions(-)
2017-09-30,, 4 files changed, 128 insertions(+), 22 deletions(-)
2017-09-25,, 18 files changed, 113 insertions(+), 103 deletions(-)
2017-09-23,, 7 files changed, 18 deletions(-)
2017-09-23,, 20 files changed, 130 insertions(+), 51 deletions(-)
2017-09-22,, 13 files changed, 150 insertions(+), 18 deletions(-)
2017-09-20,, 1 file changed, 7 insertions(+), 5 deletions(-)
2017-09-20,, 1 file changed, 5 insertions(+)
2017-09-17,, 1 file changed, 1 insertion(+), 1 deletion(-)
2017-09-17,, 18 files changed, 48 insertions(+), 48 deletions(-)
2017-09-17,, 1 file changed, 27 insertions(+), 21 deletions(-)
2017-09-16,, 34 files changed, 132 insertions(+), 25 deletions(-)
2017-09-16,, 2 files changed, 15 insertions(+), 6 deletions(-)
2017-09-11,, 1 file changed, 5 insertions(+), 1 deletion(-)
2017-09-03,, 2 files changed, 48 insertions(+), 9 deletions(-)
2017-08-26,, 3 files changed, 304 insertions(+), 40 deletions(-)
2017-08-24,, 7 files changed, 68 insertions(+), 9 deletions(-)
2017-08-10,, 1 file changed, 3 insertions(+)
2017-08-10,, 1 file changed, 17 insertions(+), 1 deletion(-)
2017-08-10,, 1 file changed, 11 insertions(+)
2017-08-10,, 2 files changed, 11 insertions(+)
2017-08-10,, 9 files changed, 1244 insertions(+)
2017-08-10,, 1 file changed, 1 insertion(+)

f:id:sinsoku:20171023002353p:plain:w600

まとめ

もし技術書典4があるなら、次は余裕をもった入稿をしたいと思う。

少なくとも、朝4時に入稿はもう経験したくない。