2015-01

(2015-0101)

最長大回り

昨日よりJRの東京近郊区間における最長大回りの馬橋→北小金に挑戦し、無事生還しました。

2014-2015年 東京近郊区間大回り乗車の旅行記をアップしました。よろしければご笑覧ください。

(2015-0112)

不幸の手紙

思い出すなぁ。中学生の昔を。手紙を何人かに出さないと不幸になるって。男子は「あほくさ」という感じだったが、女子の中には面白がっている人もいたっけ。

あれから幾年月。来ましたねぇ、不幸の手紙が。それも飛びきり不幸な奴。差し出したのは大田区。内容は

11月の国民健康保険として180,714円払え

高額療養費制度を利用できる金額を超える健康保険を払えっておかしいだろ。しかも、1月19日までに払え、だって。こんな事されるんだったら、私は何のために生きているんだろう、大田区に高額の健康保険を払わさせられるために生きているのか、と思い悩んだ。11月は、風邪で久しぶりに近所の医院で受診したのは事実だが、それだけの医療機関の利用に過ぎなかったし、保険があった所で3割は払わされたのに、さらに180,714円も払えっていうのか。これなら無保険で全額自費で医療費を払ったほうがマシ。チラシルというアプリで一生懸命に安売りの食材を探してスーパーをはしごしたり、Bisquick で簡単・格安な自作ピザのように工夫してコツコツ節約したり、年末年始の旅行も大回りにするなどキャッシュアウトを抑えた所で、桁が2つか3つ違う金額を、たったの1ヶ月で搾取されるのか…これからもこんな調子で強奪され続けるのかなと思うと腹が立つやら悲しいやら精神的に落ち込むやら。すぐに電話したい所だが、今日は祝日でそれもできない。ニュースでは成人式の映像が出てくるが、これでは大田区からの成人の日の呪いだな。どうしてくれよう。ネットで検索する。健康保険の不払いは2年経つと請求できないみたいだ。踏み倒した方がいいかな。
(2015-0113)

不幸の手紙(後編)

大田区役所に電話した。前回はこれ程の金額は払えないので交渉の末に分割払いにしてもらった筈なのだが、それはどうなったのかと思ったが、どうやら右の画像にある通りらしい。

それから、「納付書がなくなりましたらご連絡ください。」というのは、納付書がなくなったら支払いが完了、ではなく、区役所に連絡して納付書の続きを送付してもらわなければいけないという意味だそうで。

民間とは感覚が違うようだ。

(2015-0117)

pdftk を利用した非破壊自炊

手持ちの冊子形式の資料を裁断することなく、しかも低価格のフラットベッドスキャナだけで、あまり質は求めないがとにかく PDF にしてタブレットでも参照できるようにしたい、というありがちなケースに関して。

表紙は上向きに、次のページは上下逆に、その次のページは上向きに、、、という感じで、交互に最後までフラットベッドスキャナでスキャンします。なお PDF は、1ページ1ファイルで保存します。

File0001.PDF, File0002.PDF, File0003.PDF, File0004.PDF, File0005.PDF, という感じのファイルができたとします。スキャン忘れや重複スキャンが無いかチェックします。

チェックが済んだら、日頃お使いの UNIX 機で

  1. pdftk *.PDF cat output hoge.pdf
  2. pdftk A=hoge.pdf shuffle Aodd Aevensouth output out.pdf

とします。

1. の pdftk *.PDF cat output hoge.pdf は、見ればだいたい分かりますね。全部のファイルを結合して、ひとつの PDF (ここでは hoge.pdf) にします。

問題は、2. の pdftk A=hoge.pdf shuffle Aodd Aevensouth output out.pdf の方ですが、これは hoge.pdf の、各奇数ページを上下逆にしたものを out.pdf というファイルに出力せよ、という意味です。まあ、pdftk は高機能ですねというべきか書式が難解なツールですねというべきか。

1枚1ページの PDF ファイルを、上下逆さまにする場合は

などとすればできます。

pdfファイルの結合

なお、ミスせず着実に冊子をスキャンできる人は、本を上下逆さにしながら、まとめて1つの PDF を作成した上で、前述の 2. だけを実行する事も可能です。スキャンしおわったら途中でミスしていた事に気づいた、という場合は面倒ですが。

ミスを直した例
# UNIX なので大文字と小文字は区別されます。

ページの切り出し例

謝辞

以下のページを参考にさせていただきました。
(2015-0125)

拡張正規表現

HTML のデータを処理するちょっとしたツールプログラムを、何も資料を書かずに2時間ぐらい作成していたら、途中で何をやっているのかわけがわからなくなった。年齢的にプログラムは厳しいか…でもないか。かねてよりプログラムは書けた試しがないのでサンデープログラマーにもなれていなかったが、頑張って書くか? 言語は? でも正規表現で最短マッチが使えれば簡単に処理できるのに、と思いネットで検索。Wikipedia の正規表現には

Perl は POSIX の拡張正規表現さえも上回る豊富な文法を持っている。その例として、POSIX とは異なり、Perl の正規表現には「非欲張り量指定子」がある。

ふーん、と思う。いまどき sed と AWK で何とかするのも厳しい、いよいよ Perl ぐらい使えないとダメかと思ったが、鬼車が対応しているらしい。だったら、正規表現エンジンとして鬼車を組み込んだ sed の実装である Onigsed で何とかなるんじゃないかと思い直す。

それで onigsed でやってみたが全くダメ。なぜだと思ったが、Perl 風の正規表現を使う場合は -R オプションが要るんですと。いや、onigsed には (パッと見た範囲では) 書いてなくて、追記メモ(regex回数指定修飾子)*?+というページに書いてあった。これでハードルはひとつクリヤ。


s/<span.*?>//g
s/<sup class=.*?>/<sup>/g
s/<\/span>//g
s/<a href=.*?>//g
s/<\/a>//g
s/<p><\/p>//g

さて、AWK の文字列操作関数なんて忘れてる上に、『プログラミング言語AWK』の本もどこかにいってしまっている…しかし、ネットは便利である。検索してAWKで一番の得意ワザ! シェルで文字列を自在に扱うための文字列関数を見たら、なんとかなった。


{
    file=$2
    sub("html", "txt", file)
    printf("  <a href=\"./index.html\">[最初]</a>", $1) > file
    printf("  <a href=\"./%s%s\">[章へ]</a>", substr($2,1,5), substr($2,10,5)) > file
    printf("  <a href=\"./%s\">[前へ]</a>", $1) > file
    printf("  <a href=\"./%s\">[次へ]</a>\n", $3) >> file
    close(file)
}
これは、何とか.html に対し、追加するテキストを、何とか.txt という名前で生成するためのスクリプトです。

バッチの例

文字コードは UTF-8 に揃えます。UTF-8 のコンテンツは UTF-8 で処理をし、ヘッダなど旧来の内容を流用する箇所は、適宜書き換えた上で UTF-8 にコンバートします。改行コードは UNIX。onigsed は現状、Windows 版しかありませんが、改行コードが無条件で DOS になってしまう模様です。^M の余計な文字が行尾につくので、tr.exe を使って tr -d "\r" として取り除きます。

copy head new\%1.html
nkf -Lu --utf8 %1.txt >> new\%1.html
onigsed -Wctype=UTF8 -f script1.sed %1.html | onigsed -Wctype=UTF8 1,3d | onigsed -R -Wctype=UTF8 -f script2.sed | tr -d "\r" >> new\%1.html
nkf -Lu --utf8 %1.txt >> new\%1.html
type tail >> new\%1.html
あれ…UTF-8 から tr で無条件で CR を削除して大丈夫かな… nkf で改行コードを変える方が無難そう。まぁ、いいか。

UTF-8に美乳問題はあるのか

あると述べているページも幾つかありますが

手持ちの Win7 の IE11 では、meta で charset="utf-8" を指定しただけで表示されましたので良しとします。だいたいバグのあるブラウザごとに文字化け対策なんてやってられないです。まともな実装をしてください、としかいいようが。

CSS

私は長らく CSS は「複数のバージョンがあり、しかも互換性が無い」「ブラウザが対応していない」「内容は一緒なのにそこまでして見栄えのこだわることに価値を見出せない」という理由で忌み嫌っていたのだが、ページ数が膨大かつ表示を揃えたいとなると、最低限の CSS を使うのも仕方ない。それで、以下のページを参考に、初めて使ってみた。

簡単な事しかしていないので簡単でした。ブラウザによってデフォルトのフォントのサイズが異なるので調整が必要、というのは不毛な気がするけど。


(2015-0126)

DAISY

デイジーというとZ80のペリフェラルのデイジーチェーンを思い浮かべますが、最近では視覚障害者用の録音図書のための国際標準規格、Digital Audio-based Information System を指すほうが普通ですかね。EPUB3 は DAISY を扱えるのですが、簡単にできるか、というと、なにせ私自身、EPUB3 を使えていないので。

DAISY Translator日本語版というものもあるようです。奥が深いですねぇ。カセットの方が簡単そう。

拡張正規表現(続き)

日曜の夜に2時間程度で終わるサンデープログラムの筈が、月曜まで持ち越してしまった…とはいえメインになるコンテンツの変換は済んだので、インデックスのページを作ればいいので、昨日と同様の作業をして、CSS も別に書いて完成。

書評

「外食の裏側」を見抜くプロの全スキル、教えます。
興味深い。いや、この本を参考にどうやっておいしい店を見抜くか、ではなく、どうやって手抜きをして外食の安い定食屋や低価格ファミレスが出すような物を家で作れるか、という方。料理ができなくても定食屋は開けるという内容は驚き。自炊に応用するなら、冷凍のハンバーグや天ぷらなどの惣菜を利用し、手早くおかずが作れそう。余った食材が無駄になる事も無いので経済的。煮物だってレトルトや冷凍を暖めるだけだから簡単みたいですね。グルメの人はとんでもないと思うかもしれないが、美味しい物が食べたければ相応の金額を出すか、自分で手間と時間をたっぷりかけるか、ですね。
変わる家族 変わる食卓 - 真実に破壊されるマーケティング常識
これはアカンというか、これほど上から目線の「年配主婦による若い主婦叩き」は無いわー。何の参考にもならない。
結局、私の腕でも作れる簡単で安くて美味しい料理となると、大衆魚を家で捌いて、炊き立てご飯で海鮮丼、というのが良いかと。その点、市場魚貝類図鑑は大変に参考になりますね。