Hatena id 変わりました

id が 「h3x」から「t4n4be」に変わりました。日記は以後こちらに書きますので宜しくお願いします。http://d.hatena.ne.jp/t4n4be/

Macbookでの日本語入力で不満を感じる2つのこと

mac

これどうにか出来ないものか。私はApple StoreでUSキーボードタイプのMacbookを購入した。今までLinuxでは 「Shift + Space」で日本語⇄英語を切り替えていたのだが、macでは「command+space」で切り替える様である。 今までの慣れもあり変えれるものなら変…

Macbook+Firefox: マウスを使わずにリンクを新規タブで開く方法

mac

ずっとこれ出来たらいいのになあと思っていたのが出来ました。 command + タッチパッドのクリック これでOKです。ふぅーやっと快適になったぞ。Macbookを使い始めて1週間。 やりたいことリストでもメモしておこう。 Shift+Spaceで入力メソッドの変換(日本…

Higher Order Perl のフルテキストPDF版が無料ダウンロードできるよ

これはびっくりした。弾さんのblog経由で知ったのだが。 前から指をくわえていいな〜と思っていたのが キター って感じ。ダウンロードは以下から。 http://hop.perl.plover.com/book/pdf/HigherOrderPerl.pdfHigher-Order Perl: Transforming Programs with …

Macbook届いたよ

mac

Apple Store で US キーボードタイプの Macbook を注文していたのがつい先日届きました。ついでに AirMac Express も買っちゃった。ただいまシコシコと開発環境を移行中。

XML関連の用語を整理

XSL(Extensible Stylesheet Language) XML文書の見栄え(スタイルシート)を記述する言語 XSLT(XSL Transformations) XMLによって記述された文書を他のXML文書に変換するための簡易言語 XHTML(Extensible HyperText Markup Language) HTMLを,XMLに適合するよ…

今日の名言 from PBP

プログラマの意志(の有無)に関係なく、エラーを示すものは無視される運命にある。 呼び出し元が常に戻り値をチェックするだろうと思い込むべきではない。 人はそういうふうにできていない。 プログラマは決まって「ほとんど失敗しない」を「失敗しない」へ…

Perl: 正規表現 捕捉しない括弧

正規表現内で括弧を使用すると,$1などの捕捉変数が作られる。捕捉変数はいらないが,正規表現内でグループ化は行いたい場合,括弧ではなく「(?:....)」を使用する。 例 if ($cmd =~ m{\A (?: q | quit | bye | exit ) \n? \z}xms) { } See Also 正規表現

今日出会ったCPANモジュール

IO::Interactive - Utilities for interactive I/O プログラムが対話モードで実行されているか判定する is_interactive() サブルーチンを,正しく実装するのは大変難しいらしい。(詳細は PBP 「10.14 対話性」を参照)このモジュールは,その実装の難しい i…

Perl: ファイル全体を一度に読む込む

以下がその方法。 my $code = do { local $/; <$in> }; 説明 グローバル変数「$/」は,入力レコードセパレータ。 これをローカル化すると,「$/」の値は undef となる。 「$/」の値が undef の場合,入力は分離されていない単一のレコードとして扱われる。 l…

Plagger: Bloglinesの未読項目をGmailに転送する事がある日を境に出来なくなっていたが...

ある日を境に, Bloglines のサイトをブラウザで見ると未読項目が沢山あるのに,なぜか Plagger で未読項目を Gmail に転送しようとすると, Plagger::Plugin::Subscription::Bloglines [info] You have 0 unread item(s) on Bloglines. と,未読項目は「0」…

「ブロック」と「無名ハッシュコンストラクタ」の曖昧さを解決する方法

プログラマがどちらのつもりで中括弧を使っているのか,コンパイラ(パーサ)に知らせる方法は以下の通り。 無名ハッシュコンストラクタを使うつもりだということをコンパイラに知らせるには { の前に + 記号を付けて,+{ ... } のように書く コードブロック…

Perl: サブルーチンからの失敗のリターン

"失敗状態を返すには、裸の return を使用する" Perlベストプラクティス作者: Damian Conway,クイープ出版社/メーカー: オライリー・ジャパン発売日: 2006/08/24メディア: 大型本購入: 11人 クリック: 153回この商品を含むブログ (155件) を見る

Perl における 「サブルーチン」と「メソッド」のプロトタイプの取扱い

サブルーチン プロトタイプはチェックされる メソッド プロトタイプは無視される これは知らなかった。 でも言われてみればそうだよね。OOで書いた場合,継承関係を辿ってメソッドを探す為,実行時にならないと,実際にどのメソッドが呼び出されるかは分から…

今日出会ったCPANモジュール

Contextual::Return - Create context-senstive return values これはまた便利というか面白いモジュール。Perl には wantarray という組み込み関数がある。 これは,メソッドの呼出し側が戻り値としてリストコンテキストを要求しているのか判定する時に使用…

http://b.hatena.ne.jp/{はてなID}/favorite.rss 空!空!空!空〜

以下の問題は,2008/11/27現在解消されましたのでご注意下さい。(以下,古い記事) 昨日から新しくなった,はてなブックマークを早速利用しているのだが...はてなブックマークのお気に入りのフィードの内容が何故か空なのだが...http://b.hatena.ne.jp/h3x/fa…

今日出会ったCPANモジュール

ユーティリティ Scalar::Util - A selection of general-utility scalar subroutines List::Util - A selection of general-utility list subroutines List::MoreUtils - Provide the stuff missing in List::Util

スリープ処理

Perlの組み込み sleep 関数は,スリープ時間を浮動小数点で指定した場合であっても,整数単位の秒数でのみ,プログラムを一時停止するらしい。 sleep 1.5; # sleep(int(1.5))と同じで,1秒間スリープする sleep 0.5; # sleep(int(0.5))と同じで,0秒間スリー…

今日出会ったCPANモジュール

Memoize - Make functions faster by trading space for time このモジュールを使用すると,サブルーチンから返される値をすべて記憶し,次回サブルーチンが同じ引数で呼び出されたときに,同じ値を(再計算せずに)直ちに返してくれるようになる。 # SYNOPSI…

正規表現

オプションのメモ 「x」オプション 空白文字が無視される コメントを挿入できる 空白を使いたいときは,\でエスケープする # を使いたいときは,\でエスケープする 「m」オプション ^ や $ のアンカーが複数行に対応する 「s」オプション . (ドット)が改行文…

miyagawa さん products の remedie を使ってみた

まず,ソースを取ってくる。 svn checkout http://remedie.googlecode.com/svn/trunk/ remedie/HACKING を読む。必要な事は全て書かれている。 依存モジュールを以下のコマンドで調べてインストールする。 ack -h ^use lib | sort -u | perl -Ilib 以下のコ…

Twitter/Wassr まとめて投稿

Twitter と Wassr に同じ内容の投稿をする為だけのスクリプト。 #!/usr/bin/perl use strict; use warnings; use utf8; use Encode; use Perl6::Say; use Net::Twitter; use Net::Wassr; use Term::Encoding; my $conf = { twit => { user => 'username', pa…

今日出会ったCPANモジュール

Sub::Installer - A cleaner way to install (or reinstall) package subroutines これ何気に便利かも。 今までモジュールをインポートしたクラスにメソッドをインストールするには, import メソッドの中とかで以下の用に書くのが(自分の中では)常套手段…

今日出会ったCPANモジュール

HTML::TokeParser::Simple - Easy to use HTML::TokeParser interface # SYNOPSIS use HTML::TokeParser::Simple; my $p = HTML::TokeParser::Simple->new( $somefile ); while ( my $token = $p->get_token ) { # This prints all text in an HTML doc (i.e…

JavaScript Include

<html> <body> <script src="/path/to/foo.js"></script> </body> </html> // foo.js document.writeln('<div class="rssChannel">'); document.writeln(' <h3 class="rssTitle">'); document.writeln(' <a href="http://blog.excite.co.jp/shokotan">しょこたん☆ぶろぐ</a>'); document.writeln(' </h3>'); do…</div>

今日出会ったCPANモジュール

Path::Class - Cross-platform path specification manipulation Digest::MD5 - Perl interface to the MD5 Algorithm 参考 クロスプラットフォームなファイル・ディレクトリパスの操作

Perl 日本語処理 もう文字化けなんて見たくない

script は UTF-8 で書く use utf8; を使用し,perl に script が UTF-8 で書かれているという事を教える use strict; use warnings; use utf8; ファイルオープン時に文字コードを指定する open my $in, '<:encoding(euc-jp)', $infile or die "$!"; open my $out, '>:encoding(utf8)', $outfile or die "$!"; 外部から取</:encoding(euc-jp)',>…

今日出会ったCPANモジュール

Devel::Peek - A data debugging tool for the XS programmer スカラ変数が内部的にどのような値として表現されるかを表示する。 utf8 - Perl pragma to enable/disable UTF-8 (or UTF-EBCDIC) in source code ソースコードが UTF-8 で書かれているなら,こ…

Aha! Encode

受信したものはデコードし、出力するものはエンコードする。 ただし、それがテキストデータである場合に限る。あぁ〜なんてシンプルなんだ KISS バイト文字列 ----> Unicode 文字列 : decode() バイト文字列 <---- Unicode 文字列 : encode() Unicode 文字…

さよなら? Data::Dumper。初めまして Debug::Dumper

いつも Data::Dumper モジュールにはソースを Read/Write する時にお世話になっているんだけど,色々不満があったので Debug::Dumper というモジュールを書きました。Data::Dumper モジュールで不満だったのは特に以下の 2 点。 出力内容の encode 指定が出…