from エンジニアの知的生産術英語化プロジェクト(-20190522) 3章までリリース 2019-02-21
- 行きの電車で
- 太字の問題 5c6cebb3aff09e00007cd01b
-
太字の出力がバグっていて、リンクになっているっぽい
-
- タイトルの階層付け
- 太字の問題 5c6cebb3aff09e00007cd01b
- を実装した
今、Scrapboxの構文木を作ってからMarkdownに変換してしまっているけど、構文木の状態でリンク先の解決をしてからMarkdownを出力すべきだよなぁ。
- クロール結果をキャッシュ
- 画像は自動的にダウンロードしたものへのリンクに差し替え これで帰りの電車でも繰り返し実験できるようになったぞ
そうそう、メモし忘れたけど昨日1章までの自動変換結果をリリースしたので、ページ数と単語数はかなり増えた。 今日のスクリプト改善で画像もよくなったのでまた適当なタイミングでリリースしよう。
帰りの電車+α
- クロスリンクの新実装
- 1回しか出現しないキーワードはリンクではなくイタリックにする これで安心して思いついたものを全部リンクにできる。 クロスリンクは、以前はMarkdownにしたものを変換して生成していたが、Scrapboxの構文木を作った後Markdownにする前に2回ツリーを舐める形にした。
分かれた複数のツリーをどうこうするのは面倒だから、大きな一つのツリーを作っておいて、それから分割して複数のMarkdownファイルにするのが良いかなぁ
2019-02-22
- 章ごとに分けて複数markdownファイルの出力 人間が読んでチェックするのは別フェーズだが、とりあえず「Scrapbox上での翻訳が終わった」→「即座にMarkdownを生成してLeanPubでリリース」ができるようになった。
Issues:
- section 1の図がこんな感じになっている
- これは画像のタグの下に空行がないことが原因
- リストの例がリンクと誤解されている
- こういうのはプログラムで対処するより、個数が少ないので個別に修正するのが良いと思う
- 脚注をどうするのか
- 一応LeanPubにも脚注のタグはあるが…
- PDFで読むときはそれでもいいのだが、ePubだと別ページにくくり出される
- それで良いのかなぁ、というモヤモヤはあるが、良い方法が思いつかないなら今のままで良いか
- 他のページへのリンク
- 子供のページへのリンクは有用
- 兄弟のNextへのリンクはいらない
- 親へのリンクがあっても良いのかもしれない、Scrapbox上ではよく使うが、ePubに変換すると無くなってしまう
- 今、クロスリンクは基本的に「ページの実体を持たない」という想定で、章末にまとめている。しかし、実体を持っているものもいくつもあるし、そのコンテンツを捨てるのはもったいない。どうあるべきか。
- 章のツリーに明確には位置しないコラムの存在
- すべてのページは自動生成された「そのページへのリンク」(バックリンク)を末尾に持つようにする
- そうすると親から子へのリンクだけ明示しておけば、親に戻るリンクは自動生成される
- コラムは、そのコラムへ言及しているところへのバックリンクを持つ
- 章のツリーに入らない個別ページも、同様にそのキーワードに言及しているページへのリンクを持つ
- 現状、脚注がEndnoteとして巻末にまとめられてしまい、そこへのリンクと、戻るリンクとのペアになっている
- これもたまたま1対1の関係になっている、タイトルのないページであるだけで、構図は同じ
- 「脚注」というのはScrapboxでいうならば「タイトルが番号だけになってるページ」なのではないか
- 「脚注が文章の流れの中で目に入って欲しいのか、そうでないのかは、ケースバイケース」と今まで悩んでいた。それを入れるかどうかは読む順番を示すツリー記述でコントロールされるべき
- 紙の書籍を作る際にストーリーのフローに入るかどうかで本文か脚注かが別れていたが、本質的にはそれと枝の付け方は独立にコントロールできる
- 例えば脚注1の解説が「Cybozu is a software maker developing groupware. 」なんてなっているのは、脚注番号「1」でリンクするのではなく、本来「Cybozu」がリンクになるべきであった
- 書籍の表現能力がプアであるがゆえに番号でのリンクになってしまっているだけ
- 試しに脚注を別ページにして見た
- 自然なタイトルの存在する例 /intellitech-en/MOOC
- 自然なタイトルの存在しない例 [/intellitech-en/1.2.2.2 *1](https://scrapbox.io/intellitech-en/1.2.2.2 *1)
- 存在しない=現時点ではまだ思いついていない
- 例えば脚注1の解説が「Cybozu is a software maker developing groupware. 」なんてなっているのは、脚注番号「1」でリンクするのではなく、本来「Cybozu」がリンクになるべきであった
- 「Scrapboxで脚注をどう表現するか」「Scrapboxは表現能力が低いから脚注をうまく表現できない」って思ってたけど、逆で、紙の書籍がリンクをうまく表現できないせいで「同じ数字だったらリンクだとみなせ」っていう運用での回避が行われてるだけだ。本来は注釈をつけたいところをブラケティングしてリンク先に書けば済む話なのだ
- 書籍の物理的なページの区切りがなくなるなら「脚注」の「脚」もなくなるのだ
- 表現の揺れについて
- “Learning methods of engineer”と”Learning method for the engineer”の両方があった
- 同じ概念を指しているなら表現は同一であるべき
- そしてリンクにする
3章までリリース(1~3は機械的変換のみ)
- 画像の上下に空行を足すようにした
- PDF版で日本語が化ける問題の対処
- →生成後に正規表現で拾って置換かな
- InnerLinkとVerbatimのto_markdownで、日本語の場合にラップするようにした
- →生成後に正規表現で拾って置換かな
- ページの末尾にインカミングリンクを表示するようにした 帰りの電車でできた、意外と簡単だった 歩いている間に思考が整理されるのが良いのか
- 日本語かどうかの判定を文字コードでやろうかと思ったが、ASCII以外の文字を含んでいたらNGって判断にした