from エンジニアの知的生産術英語化プロジェクト(-20190522) pIntEn 5章までリリース 2019-03-05

  • 0章の[motivation](-)が悪さをして、PDF版でそれ以降のリンクが全て脚注になる謎現象が起きている

    • Scrapbox上で修正して再変換が良いが、0章は手作業での修正もいれたので慎重な作業が必要
    • とりあえずScrapbox上を修正、手元のファイルは手作業で直しておく
  • 1.1の図のキャプションがepubでおかしい

    • これは行への内部リンクが、他に共通のリンクがないために強調表示に変わって、その中のRL的なところだけリンクになっているため
    • 行リンクがそもそもNGだがどうするか
    • 別ページに出した
  • 1.1.1の図キャプションが次の行の箇条書きとつながっている

    • Typola上でのプレビューで改行されてるが、空行が挟まっていないのでepubにする際に結合されてしまっている。
  • 1章のコードが壊れている件

    • コードは数カ所しか出てこないので手作業で修正する方が楽
    • 今の変換済みファイルに対して手作業で修正して、その修正を再変換したファイルに再度適用する仕組みが必要

2019-03-12 diffの例 :

134,135c134,138
< code:Example of a tuple
< - (1,  2,  3)
---
> Example of a tuple
> 
> ```
> (1, 2, 3)
> ```
139c142
< Lists and tuples are very similar. What is different? This question becomes the driving force of learning. The driving force let you query what is different on a [search engine](ref-673f998), rewrite the list in the program to tuples, and vice versa. These activities bring you new knowledge. I describe these activities with creating a new box and put it on two boxes.
---
> Lists and tuples are very similar. What is different? This question becomes the driving force of learning. The driving force let you query what is different on a search engine, rewrite the list in the program to tuples, and vice versa. These activities bring you new knowledge. I describe these activities with creating a new box and put it on two boxes.

上のhunkは変換後のファイルを手で編集してコードブロックにした修正、下のhunkは変換元のScrapboxでリンクを追加した修正、これが3-way mergeされて欲しい →できた


手順メモ

  • main()
  • merge_all()
  • コンフリクトが起きているならエディタで開いて修正する
  • copy_all_merged_file()

懸念点

  • いずれ手順をミスして何かややこしいことが起こるのではないかと言う漠然とした不安
  • copy_all_merged_file()とcopy_all_file()があるのはよくない
    • 最初のステップで後者を使うので、そちらが先に実装されて短いファイル名になっているのだが、これはbase/Xとmanuscript/Xを上書きするので間違えて途中で使うとややこしいことが起こりそう
    • 壊しうるものは壊れるのでなんとかする必要がある
      • →全部Dropboxに置くか?
  • main()の中で指定されたファイルをクロールしているが、新しいページを追加した時にはクロールされない
    • これも自動化されるべきなのではないかという気もする
    • このステップに4分程度かかる
    • プレビューの作成まで含めて自動化できないかな

Issues

  • 丸数字がアルファベットじゃないので日本語フォントになる
    • 適切か?
    • 英語フォントでも丸数字が出るなら丸数字を英語の文字に加える
    • 英語フォントで丸文字が化けているようなら置き換える
    • →そもそもなぜか日本語が化けている
  • リンクが辿れない
    • クロスリンクの中に重複するIDがある
    • 小文字にして同一であるものは同一のIDを割り当てるようにしたが、setに入れる際に大文字小文字が統一されないため
    • とはいえsetに入れるのを小文字にするわけにはいかない
      • 索引に表示される文字列なので見栄えの問題
    • 名前→IDは容易に計算できるので名前をリストに入れているが、ID→名前の関数を作って、IDをリストに入れるべき

プレビューの作成時間を測るべき

画像のダウンロード、存在しないものだけダウンロードする仕組みになっているのでクロール時に一緒に実行した方が良い。 容易にやり忘れる。

13:40 画像のダウンロードをして、プレビューの再生成を指令 あとでメール通知が来るタイミングを確認する

13:51 にメール通知が来ていた。画像が見つからないエラーは全部消えていた。

重複IDのバグを直した

  • 18:49 プレビュー生成開始
  • →19:02 重複IDのバグが直った
  • とりあえず大量のエラーが解決したので、隠すことでもないのでリリースしとこう
  • image
  • 210ページから423ページに増えた
    • 章立てに入ってないページを追加したことも大きいかな?

Issues

  • 追加ページが全部一番大きいセクションになっている
  • 箇条書きの開始に空行がないと以降の箇条書きが全部潰れる
    • 0→1の部分だけでいいみたいなのでスクリプトで対処するのが良さそう
  • 重複IDの問題を解決したのにジャンプできないリンクがある
    • 個別ページをページとして追加したのが良くなかった??
      • 明らかにIDが重複しているのに重複している旨のエラーが出てないだけか…
      • なんらかの原因で索引に章立ても入ってしまうようになってて、そこでIDが重複しているっぽい

感想

  • Scrapboxはリンクが繋げやすいし、つなげるために調べるのもやりやすいので、原著よりも英語版の方がリンクが豊富であるという現象が起きているw
    • 原著でもリンクは多いんだけど、そのリンクの手段が「123ページ」「1章で解説した」「Whone Mind Systemと比較すると」の3つ。1つ目はダイレクトにジャンプできるけど、残り2つは読者の脳内にその情報へのリンクが残っていることを暗黙に仮定している。
    • Scrapbox的に書くことで「検索で流入する人がいるかもしれない」という考えてによって「脳内にリンクが残っているはず」という仮定がなくなって明示する力がかかる。

ショーペンハウアー「読書について」の原題は?

  • ÜBER LESEN UND BÜCHER だな

絵のないページに絵をつけると面白いのではないか

2019-03-20

  • 昨日4章の翻訳が終わり、電子化のためのチェック作業に入る
  • クロスリンクがうまく機能していなかったバグを修正
  • クロスリンク中の日本語が豆腐

直す→ビルド→待つ(この間にさらに直す)→結果を見る、というサイクルが回るのだがこの時に、何を直して何を確認すべきか混乱しそう。

  • 1

    • 追加ページを足し忘れていた
      • 結果:
        • image
        • このアウトラインのでき方はいまいちだ
        • 大きな括りを作ってその中に入れるか
        • そもそも今、見出しの大きさは数値の個数(X.X.X)で判断しているのでは??
    • コラムをつけ忘れている
    • キーワードページは更新されず、過去のがそのまま使われているだけだった
  • 2

    • 日本語 が豆腐になっていることがある
      • リンクにすれば良いのか?0.2.1と0.3を試しに変えてみた、要確認

ソート順

  • 見た目では2: みたいにコロンをつけたいが、ASCIIコード上でコロンは数字より後なのでこれをやると2が2.1の後に来てしまう。
    • とはいえこの順番はtitles.txtで一度手動で指定するだけなので大問題ではない。
    • ソート順を機械的にいじらなければならないところは他にもある。索引で大文字と小文字が別の位置にいる

帰りの電車でキーワードページのソート順変更をした 18:38 プレビュー作成開始 18:46 完成 コラムに対するID not foundが出ている

19:21 → x

  • コラムが取り込まれたが一番上のレベルで目次に出ている
    • →2段目にするように変換スクリプトを修正 19:52
  • コラムが2段目になったことで4章の中に入ってしまった

並列タスクに混乱を感じたので妻に相談してみた: 即座に結果を確認できない改善の回し方

2019-03-22

  • 水曜の夜に書き出したものを今朝やった
  • PDFのページ番号で場所を指定すると不便
    • 実際に行う作業はScrapboxの適切なページを開く必要がある

丸数字の問題、デフォルトで本文と章見出しのフォントが異なる問題が原因。 日本語フォントにしなくても本文でなら化けないが、章見出しなら化ける。

TOCでの見出しの深度も調整できる

  • 全部出したらクロスリンクまで全部でてやりすぎなので少し絞ってみる

2019-03-26

  • MacのPreviewでPDFを見ている場合BackはCmd+[

2019-03-27 PDF全体に目を通し終わった

  • 章立ての表現を変更 Scrapbox上で章立てを表現
  • 外部リンクを特別扱いしていないが、そのままタイトルとURLのペアとして表示されるので実害がない
    • URLが出てしまうが、書籍PDFのなかに書かれるならURLが出た方がPDFの外へのリンクだということが明確で良い
    • ただ、索引に含まれてしまうのはイマイチなのでhttpを含む索引だけ削除する
  • 一部の画像が表示されない問題
    • Gyazoからダウンロードしたファイルの一部がPNGであることが原因
    • どう解決するか
      • 手元のファイルをJPEGに揃える
        • Gyazoから新しいファイルをダウンロードするたびに変換してJPEGであることを保証する必要がある
          • これは自動化できる
      • PNGのファイルだけ拡張子を変更して、Markdownからのリンクを変える
        • GyazoのURLだけからPNGかJPEGかを判断できない
          • レスポンスを見るかローカルのファイルを見るかしないといけない
          • ローカルのファイルを見れば良いのでは?
            • ファイルがないなどの問題にも気づくことができる
          • ダウンロードしたタイミングで種別を判定して適切な拡張子をつけておき、Markdown出力時にはローカルファイルを見てどちらの拡張子のファイルがあるかで出力を変える
    • →ダウンロードしたタイミングで画像の種別を識別して適切な拡張子をつけておき、Markdownの出力時にどちらのファイルがあるかで出力を変える方針でやろう

2019-03-29 今は電子的に読むことを想定して(LeanPubなので)リンクは実際に電子的なリンクの形で表現されているのだけどその結果紙の本で140ページのものがA4のPDFで400ページになってるのでこれをKDPでオンデマンド印刷させるのは流石にひどいと思うんだな

まあ、でもそれをどうするか考えるのは電子版が完成してからでいいか。

書き忘れてたけど4章までのチェックが終わったのでリリースビルドした。 image

2019-04-03

  • 前半(~4章)の電子書籍化作業でしばらくストップしていたけど、続きの翻訳を進めていく

2019-04-10

2019-04-16

2019-04-30

  • 5章の翻訳が終わったので電子書籍版のアップデート
  • get_scrapbox/scb2leanpub.pyって名前は微妙
  • help()を見たらmain()を実行せよと書いてあったので実行したが、その前に5章のコンテンツをクロール対象にしなきゃいけなかった
  • “Column:“のタイトルがいくつかあるが”(Column)“が正しい
  • Vickiの修正をまた取り込んでない

2019-05-01

  • “Column:“で検索
    • 修正
    • 1個翻訳忘れあり
  • mergeの作業をしてpreview buildしてからBook.txtを更新し忘れてたのに気づいた
  • 再ビルド
  • エラーは出ていない
    • Your word count is 92057 words.