2008-01-01から1年間の記事一覧
id が 「h3x」から「t4n4be」に変わりました。日記は以後こちらに書きますので宜しくお願いします。http://d.hatena.ne.jp/t4n4be/
これどうにか出来ないものか。私はApple StoreでUSキーボードタイプのMacbookを購入した。今までLinuxでは 「Shift + Space」で日本語⇄英語を切り替えていたのだが、macでは「command+space」で切り替える様である。 今までの慣れもあり変えれるものなら変…
ずっとこれ出来たらいいのになあと思っていたのが出来ました。 command + タッチパッドのクリック これでOKです。ふぅーやっと快適になったぞ。Macbookを使い始めて1週間。 やりたいことリストでもメモしておこう。 Shift+Spaceで入力メソッドの変換(日本…
これはびっくりした。弾さんのblog経由で知ったのだが。 前から指をくわえていいな〜と思っていたのが キター って感じ。ダウンロードは以下から。 http://hop.perl.plover.com/book/pdf/HigherOrderPerl.pdfHigher-Order Perl: Transforming Programs with …
Apple Store で US キーボードタイプの Macbook を注文していたのがつい先日届きました。ついでに AirMac Express も買っちゃった。ただいまシコシコと開発環境を移行中。
XSL(Extensible Stylesheet Language) XML文書の見栄え(スタイルシート)を記述する言語 XSLT(XSL Transformations) XMLによって記述された文書を他のXML文書に変換するための簡易言語 XHTML(Extensible HyperText Markup Language) HTMLを,XMLに適合するよ…
プログラマの意志(の有無)に関係なく、エラーを示すものは無視される運命にある。 呼び出し元が常に戻り値をチェックするだろうと思い込むべきではない。 人はそういうふうにできていない。 プログラマは決まって「ほとんど失敗しない」を「失敗しない」へ…
正規表現内で括弧を使用すると,$1などの捕捉変数が作られる。捕捉変数はいらないが,正規表現内でグループ化は行いたい場合,括弧ではなく「(?:....)」を使用する。 例 if ($cmd =~ m{\A (?: q | quit | bye | exit ) \n? \z}xms) { } See Also 正規表現
IO::Interactive - Utilities for interactive I/O プログラムが対話モードで実行されているか判定する is_interactive() サブルーチンを,正しく実装するのは大変難しいらしい。(詳細は PBP 「10.14 対話性」を参照)このモジュールは,その実装の難しい i…
以下がその方法。 my $code = do { local $/; <$in> }; 説明 グローバル変数「$/」は,入力レコードセパレータ。 これをローカル化すると,「$/」の値は undef となる。 「$/」の値が undef の場合,入力は分離されていない単一のレコードとして扱われる。 l…
ある日を境に, Bloglines のサイトをブラウザで見ると未読項目が沢山あるのに,なぜか Plagger で未読項目を Gmail に転送しようとすると, Plagger::Plugin::Subscription::Bloglines [info] You have 0 unread item(s) on Bloglines. と,未読項目は「0」…
プログラマがどちらのつもりで中括弧を使っているのか,コンパイラ(パーサ)に知らせる方法は以下の通り。 無名ハッシュコンストラクタを使うつもりだということをコンパイラに知らせるには { の前に + 記号を付けて,+{ ... } のように書く コードブロック…
"失敗状態を返すには、裸の return を使用する" Perlベストプラクティス作者: Damian Conway,クイープ出版社/メーカー: オライリー・ジャパン発売日: 2006/08/24メディア: 大型本購入: 11人 クリック: 153回この商品を含むブログ (155件) を見る
サブルーチン プロトタイプはチェックされる メソッド プロトタイプは無視される これは知らなかった。 でも言われてみればそうだよね。OOで書いた場合,継承関係を辿ってメソッドを探す為,実行時にならないと,実際にどのメソッドが呼び出されるかは分から…
Contextual::Return - Create context-senstive return values これはまた便利というか面白いモジュール。Perl には wantarray という組み込み関数がある。 これは,メソッドの呼出し側が戻り値としてリストコンテキストを要求しているのか判定する時に使用…
以下の問題は,2008/11/27現在解消されましたのでご注意下さい。(以下,古い記事) 昨日から新しくなった,はてなブックマークを早速利用しているのだが...はてなブックマークのお気に入りのフィードの内容が何故か空なのだが...http://b.hatena.ne.jp/h3x/fa…
ユーティリティ 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秒間スリー…
Memoize - Make functions faster by trading space for time このモジュールを使用すると,サブルーチンから返される値をすべて記憶し,次回サブルーチンが同じ引数で呼び出されたときに,同じ値を(再計算せずに)直ちに返してくれるようになる。 # SYNOPSI…
オプションのメモ 「x」オプション 空白文字が無視される コメントを挿入できる 空白を使いたいときは,\でエスケープする # を使いたいときは,\でエスケープする 「m」オプション ^ や $ のアンカーが複数行に対応する 「s」オプション . (ドット)が改行文…
まず,ソースを取ってくる。 svn checkout http://remedie.googlecode.com/svn/trunk/ remedie/HACKING を読む。必要な事は全て書かれている。 依存モジュールを以下のコマンドで調べてインストールする。 ack -h ^use lib | sort -u | perl -Ilib 以下のコ…
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…
Sub::Installer - A cleaner way to install (or reinstall) package subroutines これ何気に便利かも。 今までモジュールをインポートしたクラスにメソッドをインストールするには, import メソッドの中とかで以下の用に書くのが(自分の中では)常套手段…
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…
<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>
Path::Class - Cross-platform path specification manipulation Digest::MD5 - Perl interface to the MD5 Algorithm 参考 クロスプラットフォームなファイル・ディレクトリパスの操作
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)',>…
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 で書かれているなら,こ…
受信したものはデコードし、出力するものはエンコードする。 ただし、それがテキストデータである場合に限る。あぁ〜なんてシンプルなんだ KISS バイト文字列 ----> Unicode 文字列 : decode() バイト文字列 <---- Unicode 文字列 : encode() Unicode 文字…
いつも Data::Dumper モジュールにはソースを Read/Write する時にお世話になっているんだけど,色々不満があったので Debug::Dumper というモジュールを書きました。Data::Dumper モジュールで不満だったのは特に以下の 2 点。 出力内容の encode 指定が出…