THを進める水曜日

6:00

おはようございます。今日はやや早めに作業スタートです。とりあえず、原稿もろもろを書き、できればHonkureで書評を書きたいところです。

倉下アーカイブズ:

昨日、結城先生の「秘密ノート」と同じような課金サイトが作れるのではないかと思った。で、「秘密ノートは」過去のコンテンツをすべて閲覧できる体制になっている。

それと同じものを自分で作ったらどうなるか?

倉下がこれまでに書いてきたものがすべて読める、的な。

大半はR-styleの記事になるだろうが、それでも記事が整理されているだけでもそれなりに意味があるかもしれない。

* * *

あるいは、何か、特別な読み物をここだけで連載するか。たとえば、シゴタノ!連鎖のような。

Gitやらプログラミングやら、正規表現やらを理解するためのコンテンツを作ってみてもいい。

ふむ。

モーニング・ダイアリー:

昨日は、『哲学の門前』と漫画『転生したら第七王子だったので、気ままに魔術を極めます(3)』を読みました。あと、妻と映画『ノッティングヒルの恋人』を観ました。ジュリア・ロバーツが美しかったです。

7:00

TH:

chapter07を続けます。

* * *

1500文字ほど書きました。ややペースが上がってきた感じ。

とりあえず、この時点では、あまりアウトラインの整合性については考えずに原稿を進めます。

8:00

Textbox:

Textboxで原稿管理がややうまくいっている感じなので、味を占めて「メルマガの過去原稿」も移してみます。

* * *

txtをmdに変えて、ざっと並べてみました。

Image from Gyazo

これらを少しずつ触りながら、本ないしPDFにまとめられたらと思います。

メルマガ

mainの続きを書きます。

* * *

時間はかかりましたが、4200文字の原稿ができました。これでmainはOKです。

11:00

PT:

項目の文章化を続けましょう。

* * *

一つの項目を書いていたら、分裂して二つになりました。

13:00

PT:

今日は少し続けましょう。

* * *

20の文章化ができました。今週は、あと一つくらいクリアしておきたいところ。

GT:

chapter00の続きを書きます。

* * *

書き足して、全体が2700文字ほどになりました。とりあえず、このchapterはいったんこれでOKとします。

ここからの作業について考えましょう。

* * *

chapter01のファイルを作る、というのはナチュラルなことです。おそらくそれでよいでしょう。既存の原稿ファイルはそのままおいておき、参考にする程度の利用に留めましょう。

で、chapterが二個以上になると、読み方が問題となります。chapter01へのリンクをchapter01に貼っておけば、そのまま続きが読めます。

あるいは、chapter00とchapter01を統合して、PDFファイルを作る、という手もあります。もちろんそれも、Textboxに置いておき、そのまま読めるようにするわけです。

そうして統合ファイルを作るときは、次のchapterへのリンクは不要なので、消しておくのがよいでしょう。

* * *

コマンドラインからPDFを作る方法を考えます。

PandocでPDFを作る - 倉下忠憲の発想工房

PDFができました。PDFではなく、HTMLを生成すれば、そのままTextboxと親和的ですが、まあこのままでもいいでしょうか。最終的に作るのがepubなので、むしろHTMLの方が良いきもしますが。

とりあえず、このコマンドをターミナルから叩かずに、Textbox経由で実行できればOKです。CGIなので、Ptyhon経由か、あるいはshをそのままも可能?

単純にコマンドを走らせるだけならば、.shのファイルでもいける。

田村仁研究室 日本工業大学創造システム工学科

bashでCGIを実行する: 小粋空間

さて、どんな処理がしたいか。

生成されるPDFの名前が変わらなくていいならば、コマンドで変更すべきは、対象のファイル名か、実行されるディレクトリ。

あとは、ファイルの中の、次のchapterへのリンクを消すこと。となると、多少工夫が必要か。

テキストを処理して、その中身をパイプでpandocに渡す?

Pandocの簡単なお作法的な - ITカメラマン忘備録

ファイルを指定しないと標準入出力になるらしい。

* * *

ちょっと情報を整理しよう。

まず、このコマンドは、フォルダ単位で実行される。mm/とかgt/とか。で、chapter**のようにあらかじめ決まった名前のものをPDF化するか、json形式などであらかじめ指定していたものを対象に取るかが選べる。そちらの形式にすると、「はじめに」などをchapterとは違う形式で命名できるメリットがある。

後者の場合は、jsonなどのファイルを読み込み、それを変数に入れてコマンドを生成する必要があるだろう。

で、それ以外の処理について。できれば、「次のページ」へのリンク記法は消しておきたい。ダブルブラケットなので、ごく単純に置換で消せばいいだろう。もし面倒なことが起こりそうならば、リンク記法自体を→[[hoge]]などとすればいい。

このやり方をするならば、テキストファイルを読み込み、それを一旦連結した上で、置換処理を行うことになる。その後、テンポラリーなファイルを作り、それをpandocに渡す(処理が終わったら、そのファイルを消す)というやり方がまず考えられる。あるいは、そのテキストの置換を標準出力として、pandocに渡す。たぶん、長めのパイプを書くことになるだろう。

CGIの起動は/textbox/直下なので、Textboxでは、「対象のフォルダ」名をCGIに渡すか、「指示が書かれたファイル」を渡すことになるだろう。

うん、だいたい整理できた。

* * * テンプレートについて。

Pandocテンプレート:デフォルトのやつを使うべきか否か