Just another Ruby porter,

〜2012年11月中旬〜


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

2012-11-11 (Sun)

How to automatically source zshrc in all open terminals : commandline

これは素晴らしい。

trap "source ~/.zshrc" USR1

とすることで開いているすべての端末へ~/.zshrcを読ませることができるわけだ。
コメントにcronでinotifywaitについて書かれているが、
それよりはincronを使ったほうがよさげ。


2012-11-12 (Mon)

convertで1ドットずらして重ね合わせる

X方向に1ドットずらして重ねると太くなる。

% convert foo.png \( -clone 0 -roll +1+0 \) -compose multiply -composite x:

Y方向も重ねたほうがいいか。

% convert foo.png \( -clone 0 -roll +1+0 \) \( -clone 0 -roll +0+1 \) -compose multiply -composite x:

しかしこれをやるとちょっとぼけた感じになるので-sharpen 5ぐらいあったほうがいいか。

% convert foo.png \( -clone 0 -roll +1+0 \) \( -clone 0 -roll +0+1 \) -compose multiply -composite -sharpen 5 x:

なかなか難しい。


2012-11-13 (Tue)

Sony Readerでディレクトリをコレクションに

Sony Readerにはコレクションがあるが、これを設定するのは面倒。
そこで Sony Readerでフォルダを自動的にコレクション登録するを試してみた。
Linuxのsqlite3に食わせるには;が足りないようで、ENDの後ろにも必要。

CREATE TRIGGER auto_collection_trigger AFTER INSERT ON books
WHEN new.file_path LIKE 'Sony_Reader/media/books/_%'
BEGIN
    INSERT OR IGNORE INTO collection (_id, title, source_id)
    VALUES (
        (SELECT _id FROM collection WHERE title = substr(new.file_path, 25, length(new.file_path) - length(new.file_name) - 25)),
        substr(new.file_path, 25, length(new.file_path) - length(new.file_name) - 25),
        new.source_id
    );
    INSERT INTO collections (collection_id, content_id)
    VALUES (
        (SELECT _id FROM collection WHERE title = substr(new.file_path, 25, length(new.file_path) - length(new.file_name) - 25)),
        new._id
    );
END;

これをauto_collection_trigger.sqlで保存して以下のように実行すればok。

% sqlite3 books.db < auto_collection_trigger.sql

これでディレクトリ名がそのままコレクションになる。


2012-11-14 (Wed)

Sony Readerの「最近追加された書籍」をむりやり「最近読んだ書籍」に

ついでに Sony Readerでフォルダを自動的にコレクション登録するの後半部分もやってみた。

CREATE TRIGGER recently_opened_trigger AFTER UPDATE OF reading_time ON books
WHEN new.file_path NOT LIKE 'Sony_Reader/media/books/{exclude}/_%'
BEGIN
    UPDATE books SET added_date = 0 WHERE _id = new._id;
    UPDATE books SET added_date = reading_time WHERE reading_time NOT NULL AND _id <> new._id;
END;

CREATE TRIGGER recently_opened_exclude_trigger AFTER UPDATE OF reading_time ON books
WHEN new.file_path LIKE 'Sony_Reader/media/books/{exclude}/_%'
BEGIN
    UPDATE books SET reading_time = added_date WHERE _id = new._id;
END;

CREATE TRIGGER recently_added_exclude_trigger AFTER INSERT ON books
WHEN new.file_path LIKE 'Sony_Reader/media/books/{exclude}/_%'
BEGIN
    UPDATE books SET added_date = 0 WHERE _id = new._id;
END;

こうすると「最近追加された書籍」の3冊分が「最近読んだ書籍」になる。
追加されたのは「書籍」を見れば先頭に出てくるので、それほど困らない。
やっぱ4冊ぐらいは履歴が保持されていると結構便利。


2012-11-15 (Thu)

人間ドック

いつも申し込むのを忘れてしまう。久し振りの人間ドック。
下剤入りのバリウムの効きがすごく午後はやばかった。会社休んで正解だったよ。


2012-11-16 (Fri)

convertの-depth 4のバグが直っていた

以前convertで-depth 4としても4bitならないバグがあったが、Ubuntu 12.10では直っていた。

% convert 852.gif -type grayscale -depth 4 a.png
% file a.png
a.png: PNG image data, 240 x 320, 4-bit grayscale, non-interlaced

一方GraphicsMagickのほうはだめみたい。

% gm convert 852.gif -type grayscale -depth 4 b.png
% file b.png
b.png: PNG image data, 240 x 320, 8-bit grayscale, non-interlaced

2012-11-17 (Sat)

Search for emails by size and more in Gmail

Gmailの検索でsize:5mとかolder_than:1yとか指定できるようになったらしい。
直近1ヶ月だったらnewer_than:1mでいい。

詳しくは Using advanced search - Gmail Helpへ。


2012-11-18 (Sun)

スキャンした画像をVPSへ

すっかり忘れていたが、さくらのVPSはスキャンした画像のバックアップも兼ねてVPS 2Gにしたんだった。
というわけで、rsyncで転送しているが54GB分だとどのくらい時間がかかるのか。
たしかアップロード方向はそんなに速くなかったよなあ。2,3日ぐらいかかるかも。


2012-11-19 (Mon)

24時間で12GB

というわけで終わるのは勤労感謝の日あたり。
一度VPSに上げてしまえば他に転送するのは楽なはず。


2012-11-20 (Tue)

TBSしか映らないテレビ

なんか突然テレビがTBSしか映らなくなった。
リモコンで他に変えてもすぐにTBSへ戻ってしまう。
電源切って入れ直してもだめ。
何をしたか思い出してみるに書類を本棚に置いたとたんに起こったわけで、
そのあたりを探ってみるとなんとその下に別のリモコン発見。赤く光ってるよ!
偶然6が押され放しになったわけだな。電池抜いとこう。


<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!