Entries from 2011-04-01 to 1 month

Graphviz練習

Qwerty(英語配列)でAに該当する位置を押すとDvorakではBになるという関係をA→BとしたときのグラフをGraphvizを使って出力してみた。ソース // q2d.dot digraph q2d { graph [rankdir = LR]; "a" -> "a"; "b" -> "x"; "c" -> "j"; "d" -> "e"; "e" -> "."; "f…

windowsのvimで編集しているファイル(HTMLなど)を手早く開く方法

vim

:!%

既に PHPUnit が入っている環境で WP-Unit を使うときは要注意?

とあるテストケースがどうしてもエラーになってしまい、ログにも残らないので大変嵌っていた。いろいろ調べた結果、$wpdb->dbh がどっかのタイミングでリソースではなく整数値 0 になってしまっていたというところまでは分かったが、それが何処かを特定する…

WP-Unit の testcase に覚えのないクラスが含まれている件

テストなしで WordPress のプラグインの開発をしていたが限界を感じたので、 WP-Unit なるプラグインを導入。 PHPUnit によるテスト体制を整えることを試みる。 が、おもむろにサンプルのテストを走らせてみると、いきなり出鼻を挫かれる。 testcase ディレ…

WordPress+Ktai Style でいわゆる「友達に教える」リンク

<a href="mailto:?subject=<?php echo eamh(get_bloginfo('name')); ?>&amp;body=<?php echo eamh(get_bloginfo('url')); ?>">友だちに教える</a> 関数 eamh() は別途 functions.php などで以下のように定義する。

CouchDB で _id に設定する文字列について

当然これは仕様なのだろうが(というかすべてのバグも仕様と言えるのだろうが)、CouchDBにドキュメントをPOSTした際のLocation ヘッダに含まれる _id 部分はURLエンコードされていない。従って、{_id: "http://example.com/|123"} のようにURLエンコードが必…

3.11のときの話

私は職場である古本屋で店番をしていた。ちょうどそのときは本を売りたいお客様がいらっしゃっている時で、「〜な本があるんですけど、持ってきていいですか?」といった話を聞いていた。すでにその時、窓や扉は大きな音を立ててガタガタ揺れていた。この建…

FizzBuzz

GHCiとかで putStrLn $ unlines $ map (\x->case (mod x 3,mod x 5) of (0,0)->"FizzBuzz";(0,_)->"Fizz";(_,0)->"Buzz";(_,_)->show x) [1..30]

ヤマトメール便のチェックディジットを求めるRubyコード

"求めたいコード(チェックディジット除く11桁)".each_char.with_index.inject(0){|b,(a,i)| b+a.to_i*("46231546231"[i,1].to_i)}%7 Ruby1.8.7で確認。参考:ヤマト急便のチェックデジットの計算方法 -クロネコヤマトのメール便で- その他(データベース) | …

Couch on PHP ではまったこと

Couch on PHP の REAEME のサンプルコードより抜粋 // document fetching by ID $doc = $client->getDoc('some_doc_id'); // updating document $doc->newproperty = array("hello !","world"); try { $client->storeDoc($doc); } catch (Exception $e) { ec…

postfixなどメール受信で駆動するPHPスクリプトがエラーログを記録しない!

php

この症状のおかげで、デバッグにさんざん苦労した。理由はわからないが、180MBを超えていたPHPのエラーログをまっさらにしたらちゃんとエラーログが記録されるようになった。WEB経由のエラーはちゃんと記録されていたので、余計思いつかなかった。

なぜ関数は増え続けるか

言語付属のライブラリとか、フレームワークのAPIとかって歴史の長いものほど膨大な数があるわけだけど、考えて見ればどれも必要に迫られて作られているはずで(他の言語にあるから、とかであってほしくない)、逆に言えば日頃プログラムを書いていてそれらの膨…

管理画面でカスタムページテンプレート一覧を取得する

>> get_page_templates(); => Array ( [Links] => links.php ) テンプレート名をキーとし、テンプレートファイル名を値とした配列が返る。

画像の挿入時など、メディアライブラリが表示されないときとか

typeという名のカスタムタクソノミーを作っていないだろうか。