to top page
2012-12-24
『大菩薩峠/百』完全版
『大菩薩峠』を100分の1の長さに圧縮した。
「甲源一刀流の巻」で試したやり方を全41巻に適用した。

結果のフルバージョンはこちら。
- 大菩薩峠/百
今回は HTML 版のみ。EPUB 版は保留した(よくわからないので)。

以下は作業メモ。

テキストの抽出に使った Awk スクリプト3本。
そのうちの abst1。巻ごとに各行の文字数と総文字数を記録。
{ print NR, length($0); total += length($0) }
END { print "total", total }

abst2。上のスクリプトの出力を文字数でソートしたものを受け取って、抽出すべき行番号をピックアップ。
NR == 1 { limit = int($2/100); next }
{ print $1; total += $2; if (total > limit) exit }

abst3。ピックアップリストに記録されている行の文章を出力。
BEGIN { while (getline <"list" > 0) list[$0] }
NR == 2 { printf "== %s\n\n", $0 }
NR in list { printf "%s\n\n", $0 }

abst3 の出力に「==」の文字や2つ続きの改行が含まれているのは、ReVIEW での処理を想定しているため。
また、「NR == 2」でソーステキストの2行目にある巻名を取り出している。

抽出のコマンド。01.txt は原文テキスト(第一巻)。
$ awk -f abst1 01.txt | sort -k2nr | awk -f abst2 > list
$ awk -f abst3 01.txt > 01.re

抽出されたテキストの中には、途中で途切れているものがあった。
確かめてないが、Awk 処理系(Gawk)の文字数制限に引っかかったか。これについては手作業で修正した。

実際の作業では、01.re、02.re などに分けず、daibosatsu100.re として1ファイルにまとめた。
daibosatsu100.re を daibosatsu100.html に変換するコマンド。
$ review-compile --target=html --level=0 --stylesheet=100.css daibosatsu100.re > daibosatsu100.html