@kyanny's blog

My thoughts, my life. Views/opinions are my own.

2009-01-01から1年間の記事一覧

2009年を振り返る

2009年も残りわずか。今年を振り返る。今年の抱負はどんなだったろうな、と思ってはてダを読み返してみたら、2008年の総括も2009年の抱負も書いていなかった。この時点でもう2009年がどういう一年になるか知れそうなものだが、実際今年は仕事もプライベート…

「クラウド Amazon EC2/S3のすべて~実践者から学ぶ設計/構築/運用ノウハウ」を読んだ

SonicGarden の並河さん (id:rx7) が書いた Amazon EC2/S3 本。著者様より献本御礼(言ってみたかった!)。人生初です。ありがとうございます!*1クラウドコンピューティングの概念から Amazon EC2/S3 をはじめとした AWS の各種サービスの紹介、そして AWS…

Smiley Hackathon#7 に参加した

12/19 (土) に行われたSmiley Hackathon#7に参加しました。初参加でした(ハッカソンと名の付くものに参加するのも多分初めて?)。関係者の皆様、ありがとうございました。マイペースで好きなことをやれる雰囲気があり、居心地が良かったです。周りはみんな…

日本MySQLユーザ会(MyNA)会 2009冬 に参加した

12/18 (金) に開催された日本MySQLユーザ会(MyNA)会 2009冬に参加してきました。まずは感想を。とても楽しかったです!勉強会というほどかたい雰囲気ではなく、かといって単なるパーティーでもない、ちゃんと参加者の興味関心の対象が定まっていて、で…

ThinkPad X40 のキートップを外してキーボードを掃除した

Windows XP が稼働していた TninkPad X40 が先日めでたく退役したので、また Linux でも入れて遊ぼうかなと思ってよく見てみると、長年のホームユースでキーボードがかなり汚れていた。どうせ壊れてもいいロートル機なのだから、キーボードの掃除をしてみよ…

DBIC で生の SQL を実行したいときは $storage->dbh_do() と $storage->dbh() どちらが適切?

DBIC で生の SQL を実行したいときは $storage->dbh_do() を使えば良いということを知った。 my @stuff = $schema->storage->dbh_do( sub { my ($storage, $dbh, @args) = @_; $dbh->do("DROP TABLE authors"); }, @column_list ); http://search.cpan.org/~…

rake の使い方、 Rakefile の書き方

.emacs を github でバージョン管理することにしたので、 symlink はったりけしたりする作業を自動化しようと思って rake の使い方を勉強してみた。Rakeここ他 Ruby のリファレンスマニュアルの File, Dir, FileUtils とかいろいろ読みあさって、どうにか書…

MooseX::Getopt は --help オプションを自動認識する

POD によると、 If Getopt::Long::Descriptive is installed and any of the following command line params are passed, the program will exit with usage information. You can add descriptions for each option by including a documentation option fo…

俺に贈る、モダンな Emacs の環境設定の仕方

自分用のメモです。 先に結論 以下の手順を http://github.com/kyanny/emacs-config/blob/master/README にまとめたので、手順に沿ってやれば環境構築できる。 auto-install.el を手に入れる EmacsWiki: Auto Install の Installation of auto-install.el に…

Emacs Lisp のデバッガ edebug の使い方

pcomplete (programmable completion) の書き方 - 刺身☆ブーメランのはてなダイアリー で書いた pcmpl-lwp-request.el のデバッグをしているときに、便利な方法はないものかとおもってぐぐって見つけた edebug というのがとても便利だった。Emacs Lisp デバ…

pcomplete (programmable completion) の書き方

Emacs には pcomplete.el というものが付属しており、これはいわゆる bash-completion のようなものだが、 bash-completion ほど充実していなくて git などは補完できなかったので、自分でやってみた。まずいくつか読むべきファイルがある。俺の場合は /Appl…

MooseX::SimpleConfig の使い方を覚えた

MooseX::Getopt には慣れてきたので、次はコマンドラインオプションだけじゃなくて設定ファイルの読み込みもやりたくなった。何かないかとおもって、何をどう調べたか忘れたけど http://mt.endeworks.jp/d-6/2009/10/twitter-on-hamaki.html をみて --config…

grep -q が速いワケ

grep(1) のオプションを試していたら、 grep -q PATTERN が grep PATTERN や grep -s PATTERN に比べて劇的に速い場合があるのに気づいた。気になったので少し追ってみた。環境は Mac OSX Leopard (10.5.8) で grep --version は grep (GNU grep) 2.5.1 です…

anything.el で選択したものを別ウィンドウ(フレーム)で開かない設定

(setq anything-samewindow t)でいける!何度も忘れて困った・・・と思ったけどなんかうまくいかない。 GNU Emacs 23.0.60.1 (i386-apple-darwin9.7.0, NS apple-appkit-949.46, MacPorts の emacs-app-devel (@20091101), Cocoa を利用中。常に別フレームで…

install-info コマンドで MacPorts で入れた Gauche に付属する info を Emacs から読めるようにする

↓こんなやり取りがあったのですよ。 kyanny: macports で gauche 入れると /opt/local/share/info 以下に info ファイルがインストールされるのだけど dir ファイルがないので Emacs から参照できない ($INFOPATH にパスを追加してもエントリが出てこない) …

実行中のプロセスが終わるまで待つ SIGINT のトラップの仕方

追記 牧さんがhttp://mt.endeworks.jp/d-6/2009/11/perl-4.htmlで詳細に書いてくれてるのでそっちを見るといいです。 lestrrat++シグナルハンドラの中で SIGINT とかを無効にしたい - 刺身☆ブーメランのはてなダイアリー で「うまくいかない」と書いてたやつ…

バイト -> ギガバイトに変換する関数

ちょっと欲しくなったので書いてみた。 (defun gigabytes (n) (interactive "nBytes:") (message (number-to-string (/ n 1.0 1024 1024 1024))))1.0 で割らないと整数の割り算になって小数点以下が得られないのと、 message は文字列を受け取る関数なので割…

Emacs で編集中のバッファのタブをスペースに置き換える

M-x tabify, M-x untabify を使う。リージョンを指定するので C-x h とかで全部選択してしまうと楽。M-x tabify と M-x untabify - naoyaのはてなダイアリー 他、検索したらたくさん見つかった。素の Vi でてきとうにファイルを編集してタブでインデントされ…

M-x goto-line

今日やっと goto-line をみつけた。 Vim でいう 33G で 33 行目へカーソルをジャンプ、相当のもの。 http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/usr_03.html#03.5 いままで Emacs でこの単純でよく必要になる作業のやり方がわからなかったので、モー…

Amazon のカスタマーサポートが神対応だった件

長いので先に結論 入門Git」が「在庫あり」になってるのになかなか届かないからどーなってんねんと問い合わせたら超詳しい返事がきてギフト券もらったよ!はいはいクレーマー乙入門Git作者: 濱野純(Junio C Hamano)出版社/メーカー: 秀和システム発売日: 200…

anything.el 挑戦日記(一日目)(三回目)

今日からまた anything.el を使い始めました。過去に二回くらい挑戦して挫折した覚えがあるので、三回目のチャレンジです。とりあえず今やりたいことは、 local::lib でインストールした CPAN モジュールの pod がひっかからないので anything-c-source-man-…

HTML::Element と HTML::TreeBuilder で盆栽

HTML::Element とか HTML::TreeBuilder で HTML 構文木をいじることを盆栽と呼ぶらしいですが、最近よく盆栽してていろいろ覚えたことがあるのでメモ。 as_HTML() で HTML エンティティに変換させない HTML::Element#as_HTML を呼ぶと HTML 文字列が返るのだ…

Firefox でリファラを送る/送らないの制御

about:config からできた。頻繁に切り替えないならば拡張を入れる必要はなさそう。network.http.sendRefererHeader を 0 にするとリファラを送らなくなる。デフォルトは 2 。以下詳細。 network.http.sendRefererHeader(整数値)リファラの扱い。 0 - リファ…

Firefox でリンクやキーボードショートカットから新しいタブを開いたときのフォーカス

を変更するには、 about:config から browser.tabs.loadDivertedInBackgroundの値を変更すればいい。デフォルトは false で常に新しく開いたタブがアクティブになる。 true にすると新しく開いたタブがアクティブにならない(いまアクティブなタブがアクティ…

過去のはてなブックマークをサブアカウントにうつしました

http://b.hatena.ne.jp/a666666 の過去のブックマークを、サブアカウントの http://b.hatena.ne.jp/a_666666 にうつしました。メインアカウントのほうは古いのを全部消して改めて使い始める予定です。 古いブックマークコメントからたどり着いた方へ 「ブッ…

Sledge::* のメンテナになりました

Sledge は仕事でここ数年使ってきて、 CPAN の Sledge::* なモジュールにもお世話になってきたので、 http://d.hatena.ne.jp/tokuhirom/20091022/1256189097 をみて、消えてしまうのはもったいないし寂しいな、と思っていました。でも思っているだけでは何も…

HTML::TreeBuilder (など) で HTML をパースしたあと as_HTML() したときに タグがつかないようにしたい

具体的には以下のテストにパスするようにしたい。 $tree->implicit_tags(0); がそれっぽい気がするのだけど、うまくいかない・・・。実際にやりたいことまではあともうワンステップあり、 HTML 中の 'div.blah' 以下のノードツリーはのぞいた HTML 部分が欲…

「MySQLによるタフなサイトの作り方」を読んだ (Ameba の MySQL 本)

Ameba の中のひとが書いた MySQL 本。出るって噂は聞いてて、気になるなーと思っていたらかぜぶろさんのところでレビューされてたので買ってみた。某 4G 本よりお薦め(俺にとって某 4G 本の内容はさほど目新しくないので、目新しい内容の本のほうを薦めたく…

クラウド時代のサーバ/ネットワーク自動マネジメントツール Wakame の開発者を募集中

株式会社あくしゅさんが、 AmazonEC2 のクラウド環境下におけるサーバ/ネットワーク自動マネジメントツールである Wakame の開発者を募集しています。やむにやまれず : [Wakame]Wakameの開発にご協力くださる方を探しています http://blog.hansode.org/archi…

MT形式のエクスポート用に出力をエスケープする

MT 形式はブログデータのエクスポート/バックアップにおける業界標準といっていいが、フィールドの区切り文字(デリミタ)に "-----\n" と "--------\n" を使っている(五つまたは八つのハイフンの連続に改行文字がついたもの)。これは正規表現で表すと qr/…