犬ターネット

Archive : 2011年11月

うんこ

娘、1週間ほど下痢が続いたため医者に行って整腸剤+下痢止めを処方してもらったところ、薬が効きすぎたのか今度は便秘になってしまい、おなかぽっこり見るからにくるしそうだったんだけど、昨日の夕飯後居間でかがんで「プスー」「プー」「スー」とおならをし始め、これはもしや...と思いそのまま見守っていたところ「ンッ」という掛け声と共に尻のあたりがモリモリモリモリモリとふくらんで、うおお、これすげえ出たんじゃねえの?と即座にオムツめくって確認したところ、ソフトボール大のうんちのかたまりが見えて、俺と妻で「うおおお!でけええええ!すげーうんこでた!すげーうんこでた!」って狂喜乱舞した。うんこひとつでこんなに喜べることってそうそうないですよね。育児は楽しいですね。


Firefoxを使い続けてるとメモリ大量に確保しちゃって閉じるときにすんごい時間かかってたんだけどconfig.trim_on_minimizeをtrueにして適当なタイミングでブラウザ最小化→元に戻すするとメモリ瞬時に開放されるしFirefox閉じるの速くなった気がする

言いたいことはタイトルで言い切ったので設定の仕方を。

  • アドレスバーに about:config 入力 Enter
  • 右クリック → 新規作成 → 真偽値
  • 設定名:config.trim_on_minimize
    値:true
  • Firefox 再起動
  • たまにFirefox最小化してあげる

...最小化したときにほんとうにがっつりとメモリ開放されるんだよね... 逆に不安になる。


WebP 触ってみる

WebP ってのは、Google が開発してるWeb高速化を目的とした新しい画像フォーマット。手元の CentOS5.4 でちょっと試してみる。

事前準備

libjpeg と libpng が必要なので yum で入れておく...ん、もう入ってた。

# yum install libjpeg*
...
Nothing to do

# yum install libpng*
...
Nothing to do

webp インストール

ここ みながら手順どおりに。

# wget http://webp.googlecode.com/files/libwebp-0.1.3.tar.gz
# tar xzvf libwebp-0.1.3.tar.gz
# cd libwebp-0.1.3/
# ./autogen.sh
# aclocal
# ./configure
# make
# make install

./autogen.sh 実行時に「You should update your `aclocal.m4' by running aclocal.」って表示されたので実行。

これで cwebp と dwebp ってコマンドが使えるはず。

# cwebp -version
cwebp: error while loading shared libraries: libwebp.so.2: cannot open shared object file: No such file or directory
# dwebp -version
dwebp: error while loading shared libraries: libwebp.so.2: cannot open shared object file: No such file or directory

ぬ... libwebp.so.2 が見つからないとな。/usr/local/lib/libwebp.so.2 が見えるように LD_LIBRART_PATH にパス通す。

# export LD_LIBRARY_PATH=/usr/local/lib/

これでOK。

# cwebp -version
0.1.3
# dwebp -version
0.1.3

cwebp コマンド

cwebp は png/jpeg を webp に変換するコマンド。基本的な使い方は以下。

cwebp [options] -q quality input_file -o output_file.webp

ためしにサンプルpng画像を変換してみた。ぬ、結構な圧縮率ですな... -q 100 を指定しても半分以下のサイズになった。

# cwebp 1.png -o 1_default.webp
# cwebp -q 100 1.png -o 1_100.webp
# ls -l 1*
-rw-rw-r-- 1 mgng mgng 224811 11月 28 01:42 1.png
-rw-rw-r-- 1 mgng mgng  69226 11月 28 01:43 1_100.webp
-rw-rw-r-- 1 mgng mgng  14514 11月 28 01:43 1_default.webp

サンプルjpeg画像でも試してみた。さすがに -q 100 指定したら大きくなるね...

# cwebp 2.jpg -o 2_default.webp
# cwebp -q 100 2.jpg -o 2_100.webp
# ls -l 2*
-rw-rw-r-- 1 mgng mgng 25294 11月 28 01:42 2.jpg
-rw-rw-r-- 1 mgng mgng 69264 11月 28 01:43 2_100.webp
-rw-rw-r-- 1 mgng mgng 14680 11月 28 01:43 2_default.webp

dwebp コマンド

dwebp は webp を png/jpeg に変換するコマンド。基本的な使い方は以下。

dwebp input_file.webp [options] [-o output_file]

ためしにさっき作った webp ファイルを png/jpeg に戻してみる。jpeg → webp → jpeg したらサイズがものすごいことに....

# dwebp 1_default.webp -o 1_default.webp.png
# dwebp 2_default.webp -o 2_default.webp.jpg

# ls -l 1*
-rw-rw-r-- 1 mgng mgng 224811 11月 28 01:42 1.png
-rw-rw-r-- 1 mgng mgng  69226 11月 28 01:43 1_100.webp
-rw-rw-r-- 1 mgng mgng  14514 11月 28 01:43 1_default.webp
-rw-rw-r-- 1 mgng mgng 195049 11月 28 01:44 1_default.webp.png

# ls -l 2*
-rw-rw-r-- 1 mgng mgng  25294 11月 28 01:42 2.jpg
-rw-rw-r-- 1 mgng mgng  69264 11月 28 01:43 2_100.webp
-rw-rw-r-- 1 mgng mgng  14680 11月 28 01:43 2_default.webp
-rw-rw-r-- 1 mgng mgng 199209 11月 28 01:44 2_default.webp.jpg

以下にファイルupした。

1.png
1_100.webp
1_default.webp
1_default.webp.png

2.jpg
2_100.webp
2_default.webp
2_default.webp.jpg

webp の MIME type は何になるんだろ? image/webp かな?

--- 追記 ---

image/webp で良かったぽい(WebP - Wikipedia

ということで上記の .webp ファイル、Chrome と Opera だと閲覧できるかも。


家臭

実家にいたときはまったく気にならなかったんだけど、離れてみてわかった。実家から送られてくるもの全てから線香と防虫剤のにおいがする。

衣類なら洗えばいいんだけど、食材はダメ。特に生もの。桃や梨から強烈な線香&防虫剤臭。残念なことに食べられない。もったいないけど捨てるしかない。どうにもできない。

たまに市販の袋づめウインナーなんかも送ってくるんだけど、これにも臭いがついている... どんだけ強烈なんだ...

実家の両親は朝起きると神棚にお線香を焚き、頂き物は一旦神棚にお供えし、「防虫剤はあの臭いがないとねえ」とか言ってるし、そんな生活を40年近くも続けてればそりゃ家全体に臭いが染みつくよなあと。

家の臭い、あなどれない...


mgng2(森ボーイ)の神ポストまとめ3


メールの件名

返信し続けると件名が

RE:[job1-ml:100567]Re:(abc-567)【緊急】なんたらサイトの脆...
[job1-ml:100568]RE:[job1-ml:100567]Re:(abc-567)【緊急】な...
(abc-568)Re:[job1-ml:100568]RE:[job1-ml:100567]Re:(abc-56...
[job1-ml:100569]Re:(abc-568)Re:[job1-ml:100568]RE:[job1-m...
[job1-ml:100570]Re:(abc-568)Re:[job1-ml:100568]RE:[job1-m...
[job1-ml:100571]Re:(abc-568)Re:[job1-ml:100568]RE:[job1-m...

ってなってもうわけわかんないから、たまに自分でこういうメールはさんでわかりやすくしてるよ。

RE:[job1-ml:100567]Re:(abc-567)【緊急】なんたらサイトの脆...
[job1-ml:100568]RE:[job1-ml:100567]Re:(abc-567)【緊急】ケ...
(abc-568)Re:[job1-ml:100568]RE:[job1-ml:100567]Re:(abc-56...
[job1-ml:100569]Re:(abc-568)Re:[job1-ml:100568]RE:[job1-m...
なんたらサイトの件終わったぜ
[job1-ml:100570]Re:(abc-568)Re:[job1-ml:100568]RE:[job1-m...
[job1-ml:100571]Re:(abc-568)Re:[job1-ml:100568]RE:[job1-m...

スレッド表示にすれば見やすくなるんじゃないかと思っていた時期がおれにもありましたが、最終的に件名見えなくなるからね、ひどいもんですよ。

メールの8割はただの挨拶なんだし、IRCでもSkypeでもチャットでもいいからもっとライトな連絡手段でやりとりしたいですよねー


auto and get it

金:娘 嘔吐と下痢
土:〃
日:おれと妻 嘔吐と下痢
月:〃
火:なんとか復旧

金曜夜から土曜朝方にかけて娘が30分に1回くらい吐いてて、そのときに菌もらったような気がする。

ノロウイルス - Wikipedia

主な症状は突発的な激しい吐き気や嘔吐、下痢、腹痛、悪寒、38℃程度の発熱で、嘔吐の数時間前から胃に膨満感やもたれを感じる場合もある。これらの症状は通常、1、2日で治癒し、後遺症が残ることもない。
感染者の糞便や嘔吐物から手指を介して感染。

手洗い大事ですよ...


GeSHi でシンタックスハイライトする

サーバ側でシンタックスハイライトするものが欲しかったので、PHP で動く GeSHi っての使ってみることにした。

GeSHi - Generic Syntax Highlighter

とりあえず上記サイトから GeSHi-1.0.7.20.zip をダウンロードして解凍。こんなディレクトリ構成。

contrib/
docs/
geshi/
geshi.php

使うのは geshiディレクトリ、geshi.php、contrib/example.php。PHP動くサーバにこんな感じで配置する。

http://hostname/path/to/geshi/
http://hostname/path/to/geshi.php
http://hostname/path/to/example.php

そんで http://hostname/path/to/example.php にアクセスするとこういう画面が出る。

perlのコード書いてハイライトしてみた。うーんまあまあ。

あとは適当にカスタマイズして使えばいい。


gdippをインストールした環境でNetBeansのフォントにRictyを指定すると

なんかつぶれる...

調べたら「NetBeansインストールディレクトリ/etc/netbeans.conf」の「netbeans_default_options="..."」ていうオプションに

-J-Dawt.useSystemAAFontSettings=off|on|gasp|lcd
(参考)

を記述して起動するとよさげなので試した。

netbeans_default_options="... -J-Dawt.useSystemAAFontSettings=off"

うん...

netbeans_default_options="... -J-Dawt.useSystemAAFontSettings=on"

お、いい感じ!

netbeans_default_options="... -J-Dawt.useSystemAAFontSettings=gasp"

これもいい感じ、ていうか「on」と同じぽい。

netbeans_default_options="... -J-Dawt.useSystemAAFontSettings=lcd"

つぶれた。ディフォルトはこれが設定されてるっぽい。

ということで、自分の環境の場合

-J-Dawt.useSystemAAFontSettings=on
-J-Dawt.useSystemAAFontSettings=gasp

のどっちかを指定したらうまくいくことがわかった。


Rictyフォントコンパイール

Rictyフォントが好きでずっと使ってるんだけど、バイナリ配布しなくなっちゃったので、生成することにした。環境はCentOS5.4。

まず fontforge が必要だということなので、yum でいれとく。

$ yum install fontforge

次にRictyコンパイル用スクリプトを取得。

$ wget http://save.sys.t.u-tokyo.ac.jp/~yusa/fonts/ricty/Ricty-3.1.2.tar.gz
$ tar -xzvf Ricty-3.1.2.tar.gz
$ cd Ricty

以降、Rictyディレクトリ内で作業。

Inconsolata フォントを取得。

$ wget http://levien.com/type/myfonts/Inconsolata.otf

Migu 1M フォントを取得。

$ wget "http://sourceforge.jp/frs/redir.php?m=jaist&f=%2Fmix-mplus-ipa%2F53389%2Fmigu-1m-20111002.zip"
$ unzip migu-1m-20111002.zip

で、Rictyフォントの生成。

$ sh ricty_generator.sh Inconsolata.otf ./migu-1m-20111002/migu-1m-regular.ttf ./migu-1m-20111002/migu-1m-bold.ttf
…
ricty_generator.sh: line 493: 8088 セグメンテーション違反です $fontforge_cmd -script ${tmpdir}/${modified_migu1m_generator} 2> /dev/null

うーお....

調べたところ、fontforge の --enable-double オプションが悪さをしてるっぽい。

Ricty のビルド中に fontforge が segmentation fault でクラッシュする問題
http://d.hatena.ne.jp/eagletmt/20110602/1306964018

ただ、yum でインストールしてるからコンパイルオプションの変更できない(いや、できるのかもしれないけど...わからない)

ということで http://sourceforge.net/projects/fontforge/ から fontforge のソース持ってきて新たにインストールすることにした。

ただし、既に yum でインストールされてる fontforge に影響が出ないよう、ユーザディレクトリ/local 以下にぶっこむことに。

$ mkdir /home/mgng/local
$ wget http://downloads.sourceforge.net/project/fontforge/fontforge-source/fontforge_full-20110222.tar.bz2
$ bzip2 -dc fontforge_full-20110222.tar.bz2 | tar xvf -
$ cd fontforge-20110222/
$ ./configure --prefix=/home/mgng/local
$ make
$ make install

で、上記でぶっこんだ fontforge のパスを指定して Ricty再コンパイル。

$ sh ricty_generator.sh -f /home/mgng/local/bin/fontforge Inconsolata.otf ./migu-1m-20111002/migu-1m-regular.ttf ./migu-1m-20111002/migu-1m-bold.ttf
…
Succeeded to generate Ricty!
$ ls Ricty*
Ricty-Bold.ttf Ricty-Regular.ttf RictyDiscord-Bold.ttf RictyDiscord-Regular.ttf

オッケーできたー!...と思ったんだけど、css の font-family で Ricty 指定したらこんな感じで全角文字間隔広くなった...

これは既知の問題らしく、このスクリプト噛ませればなおるみたい。早速噛ませる。

$ wget https://raw.github.com/yascentur/Ricty/master/misc/os2version_reviser.sh
$ sh os2version_reviser.sh Ricty-*.ttf RictyDiscord-*.ttf

直ったー!


Eclipse を捨てよ NetBeans へ出よう

コード書くときはサクラエディタ、バージョン管理するときだけクソ重たいEclipse起動してsvnコミットするっつう、なんだか本末転倒な使い方が嫌になってきたので、軽いと評判の NetBeans + Git に移行することにした。

NetBeans インストール

http://netbeans.org/downloads/ からダウンロードして実行して終わり。

NetBeans に Git プラグインインストール

簡単すぎ...

  • NetBeans 起動
  • ツール(T) → プラグイン(G)
  • 「使用可能なプラグイン」タブクリックして右上の検索窓に「git」と入力
  • 「Git」が出てくるから、チェック入れて「インストール」ボタンクリック
  • NetBeans再起動してOK

細かい使い方はwebで

http://netbeans.org/kb/docs/ide/git_ja.html

雑感

動作軽快、これにつきる。差分チェックも簡単。

ただ、文字コードと改行コードの指定が出来ないのがちょっと残念(ディフォルトは UTF-8 + LF)


Windows XP に git いれる

msysgit っていうのが簡単らしいので入れることにした。

インストール

http://code.google.com/p/msysgit/downloads/list の Git-1.7.7.1-preview20111027.exe をダウンロードして実行。以下設定。

  • Select Destination Location
    C:Git
  • Select Components
  • Select Start Menu Folder
    そのまま
  • Adjusting your PATH ebvironment
    Run Git from the Windows Command Prompt を選択
  • Choosing the SSH executable
    Use OpenSSH を選択
  • Configuring the line ending conversions
    Checkout as-is, commit Unix-style line endings を選択

無事インストール完了。コマンドプロンプト立ち上げて確認。

> git --version
git version 1.7.7.1.msysgit.0

OK。


人間出汁

おしゃぶり昆布食べてお茶のみまくったあとでトイレにいったら尿の香りがお吸い物に酷似していた。すごい。人間すごい。人間でダシ取れる。


オカルト専用

暇なのでオカルト専用ブログ作った。本当はブログ乱立させたくないんだけど、こことは分けたかったのでしかたない。

mgng occult

ネット上でみつけた「オカルト」チックな話をPOSTしていきます。

ただ、長い話は読むほうもめんどくさいと思うから「山椒は小粒でもピリリと辛い」を意識して、厳選した話をPOSTしていこうと思います。