Just another Ruby porter,

〜2011年12月上旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2011-12-01 (Thu)

tmux attach

~/.tmux.confの最後にnew-sessionと書いておけばtmux attach || tmuxみたいなことをしなくても、
常にtmux attachと実行するだけでよくなる。
なければちゃんと新しいセッションを作ってくれるし、あればそいつにattachしてくれる。
毎回新たなセッションが作られるわけでもない。完璧だ。


2011-12-02 (Fri)

ディスクカッターとスキャナ

自炊してみた。カッターはDC-210N。
ちょっと大目に切っておかないと内部に接着剤が染み込んでることがある。
くっついたままだとジャムる。裁断は大胆に。これはしかし切れ味が気持ちいい。くせになる。

スキャナはScanSnap S1500。Ubuntuだとつなぐだけでok。
あとはxsaneで両面もちゃんとスキャンできる。すばらしい。
まずは要らない本でやってみたが、Sony Readerで見てもまずまずのでき。
246ページの新書が17MBのepubになった。
でももうちょっとdpiとか位置とかパラメータをいじる必要あるな。
それとちょっと斜めになってるような?
windows版のソフトも試してみるか。
まあ、冬休みになれば時間も取れるだろう。


2011-12-03 (Sat)

本をばらばらに

ディスクカッターに入れるには本を40枚ぐらいに分割してやらないといけない。
で、この作業をしてると接着剤から結構簡単にはがれることに気づく。
でもはがれても圧がかかってるのと接着剤の残りとかで、軽くくっついている。
これがくせもので手では簡単にばらせるが、さすがにフィーダーでは無理。
1枚1枚ばらす作業が入ってしまい時間がかかる。
結局カッターで裁断したほうが速いことになる。

とはいいつつもテレビ見ながらだと手元を見なくてもばらばらにできるので、
地道な作業をしてたりする。

xsaneの使い方

手でXYのサイズとか入力してたけど、そんなことしなくてもプレビューウィンドウで
プレビューすればいいことに今日になって気づいた。
ちゃんと自動でスキャンエリアを認識してるし、微調整で広げればいいだけになってる。
あとは裏の字が透けなくらいのコントラストを設定すればok。
結構ななめになるので、それを補正したいができないかな。


2011-12-04 (Sun)

RD-H1からの完了通知メールが来ない

SMTPサーバーがYahooのSMTPサーバーのままだったので、
RD-H1から録画予約完了通知メールが来ていなかった。
そりゃ、回線変えたんだからブロックされるよな。
じゃあどこにするかと考えたが、考えるまでもなくこのマシンでPostfix動かしてるんだった。
最近は最初から厳しめに第三者中継は許さない設定になってるので、そのあたりゆるめたり。
inet_interfacesがloopback-onlyじゃだめってことに気づくのに時間がかかった。


2011-12-05 (Mon)

ディレクトリにあるjpgファイル群をCalibreで追加

Calibreの「本を追加」ボタンではディレクトリ自体を指定できないが、

% ls *.jpg|xargs printf '<img src="%s">\n<span style="page-break-before: always"> </span>\n' >index.html

のようになんちゃってindex.htmlを作ってこれを指定すれば取り込める。

Calibreの書誌情報

「書誌を編集」ボタンで書名を検索すればamazonから情報を取ってきてくれるが、
その前に「設定」「書誌情報のダウンロード」で日本のamazonを使うようにしておく。
そのままだと日本の本はやっぱ見つからない。
カバーもスキャンしてもいいけど、どうせここでamazonから取ってくるのでその必要ないかもしれない。
カバーは切らないので大きさが違うから、ちょっとやっかい。


2011-12-06 (Tue)

Rubyの-lオプションがなぜchompではないのか?

実に単純な理由で、chompは-lオプションよりも後に追加されたメソッドだから。
その時に-lオプションもchompにすべきだったと思うが、みんな忘れてたと思うよ。
一方Perlはちゃんとchompになっている。

でもこれが問題になるのはEOFに改行がない場合で ゴルフぐらいかな。
いや、これのおかげでどんだけ泣かされているか。
ゴルファーならこの違いに敏感なはずである。

参考: /var/log/messages - Rubyオプションあれこれ


2011-12-07 (Wed)

でかいWEB+DB PRESS総集編PDFをなんとかする

そうそう。総集編買ってたよなと改めてDVD見てみると90MBのPDFとかが並んでいてがっくりきた。
T1に入れてみたがやはり無理。2ページ目まではなんとか出たが3ページ目はお待ちくださいのまま返ってこない。
戻るボタンでキャンセルした。というわけで見れるようになんとかする。

考えつくのはPDFを画像データに変換してしまえばあとはスキャナでスキャンしたものと同じ。
convertで変換可能だ。たとえばVol.50の「はじめてのGit」を抜き出したければ

% convert -density 150x150 -resize 512x webdb_vol50.pdf'[52-96]' git.jpg

と実行すればok。53ページから97ページまでgit-52.jpg .. git-96.jpgというファイルになる。
ページは[]で指定できるが、0から始まるので注意。サイズはデバイスに合わせる。

これでまあなんとか辛うじて読めないこともないが、元がA4サイズなのでやはり字が小さすぎる。
回りのページ番号や表題のような情報を削除してなるべく記事だけを残したいところ。
あまりなんとかなってない。pdftoppmのほうがいいかな。

% pdftoppm -W 844 -H 1234 -x 118 -y 170 -f 53 -l 97 -jpeg -gray webdb_vol50.pdf git

でよさげだ。オフセットを-x,-yで指定してcropするサイズを-W,-Hで指定する。
-f 53 -f 97がページ指定でgit-053.jpgからgit-097.jpgまでできあがる。あとはcalibreでepubに変換。
これだとT1でもほぼ問題なく読める。

WEB+DB PRESSの目次は Google Docsで管理されてるらしい。検索はここからCSVを取ってきてgrepしたほうがいい。


2011-12-08 (Thu)

16階調Grayscale PNG

T1も当然のことながら16階調なのであった。というわけで昨日のはこうなった。

% mkdir ppm jpg4 png4
% pdftoppm -W 844 -H 1234 -x 118 -y 170 -f 53 -l 97 webdb_vol50.pdf ppm/git
% for i in {053..097};do convert ppm/git-$i.ppm -type GrayScale -resize 514x751 -level 30,100% -depth 4 jpg4/git-$i.jpg;done
% for i in {053..097};do convert ppm/git-$i.ppm -type GrayScale -resize 514x751 -level 30,100% -depth 4 png4/git-$i.png;done
% du -sh jpg4 png4
6.8M	jpg4
2.5M	png4

最終的にはjpegよりpngのほうがサイズが小さくなる。あと字がうすいのでレベル補正。
T1はpngのepubでも読めた。

でもまだ字が小さい。2段組になってるのでさらに4分割するという手もあるか。


2011-12-09 (Fri)

{0..50..10}

{0..50..10}と見慣れぬ形式を見かけた。
マニュアルを見るとブレース展開で3つ目にステップ数を指定できるらしい。
知らなかった。

% zsh -c 'echo {0..50..10}' 
0 10 20 30 40 50
% bash -c 'echo {0..50..10}'
0 10 20 30 40 50

zshやbashで使える。面白いのはzshで、負のときの挙動。

% zsh -c 'echo {0..50..-10}'
50 40 30 20 10 0

のように前の2つを入れ替えなくていい。というか入れ替えると

% zsh -c 'echo {50..0..-10}' 
0 10 20 30 40 50

と逆の逆で元に戻る。一方bashは-の有無は関係ない。

% bash -c 'echo {0..50..-10}'
0 10 20 30 40 50

それもどうかと思うが。


2011-12-10 (Sat)

Cygwinのうっとうしい警告

最近なぜかCygwinのzshで補完するとたまにこんな警告が出るようになった。

cygwin warning:
  MS-DOS style path detected: ./foo.txt\~ 
  Preferred POSIX equivalent is: ./foo.txt/~ 
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames

どこにもMS-DOSスタイルがあるようには見えないが、
まあお勧めにしたがってexport CYGWIN=nodosfilewarningしておこう。
環境変数CYGWINなんて設定するの久し振りだな。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!