dak ブログ

プログラミング、サーバーの設定などに関しての備忘録。読んだ本の感想など。

zaurusをネットに接続(P2403編)

2007-05-03 15:29:12 | zaurus
外出先でzaurusをネットにつなげるのに、今まではUSBのBluetoothアダプタ経由でP902iを使っていました。
でもそうすると、USBキーボードがつなげられなくなるので、FOMAカードが魅力的です。

早速P2403を入手してみました。
設定方法は以下の通りです。

1. 「ネットワーク設定」を開く
2. 「ダイヤルアップ接続」で「追加」
3. まず「接続先」の項目を編集
  ・名前、ユーザ名、パスワードはご自由に
  ・電話番号は *99***1#
4. 次に「モデム」の項目を編集
  デフォルトでは初期化コマンドが「AT&F&C1&D2&K3&S0E0」となっていると思いますが、「AT&F&C1&D2&S0E0」に変更

この設定を保存して、「接続」ボタンを押せばOK。
コメント (14) | トラックバック (5) | goo

EUC文字列のチェック

2007-03-31 13:31:42 | ruby
テキストをDBに登録する際に、EUCとUTF-8のテキストを混在させてしまいました。 EUCではない文字列を判定するのにrubyで以下のようにチェックしました。

str =~ /^(?:[x20-x7E]|[xA1-xFE][xA1-xFE])*$/ ? true : false


1バイト目 2バイト目 3バイト目
ASCII 0x20-0x7E
漢字 0xA1-0xFE 0xA1-0xFE
半角カナ 0x8E 0xA1-0xDF
補助漢字 0x8F 0xA1-0xFE 0xA1-0xFE
コメント (0) | トラックバック (0) | goo

javascript でオブジェクトのプロパティを調べる

2007-03-15 22:23:53 | javascript
javascript でオブジェクトのプロパティにどんなものがあるのかを調べるには for (... in ...) を使えばOK。

var dbg = document.getElementById("dbg");
var obj = document.getElementById("...");
for (var k in obj) {
dbg.innerHTML += k + " : " + obj[k] + "
";
}
コメント (0) | トラックバック (0) | goo

GD::Graph で日本語表示

2007-02-12 02:02:28 | perl
グラフを描くのに便利な perl の GD::Graph ですが、gd-2.0.33 で日本語を表示させようとしてうまくいきませんでした。

いろいろ調べていたら、教えて!gooで、gd-2.0.28 で日本語表示ができたという情報をみつけたので、早速 gd-2.0.28 をインストール。

ソースは以下の URL で取得して、普通に configure、make、make install でインストール。
http://www.boutell.com/gd/http/gd-2.0.28.tar.gz

gd-2.0.33 では日本語が表示できませんでしたが、gd-2.0.28 では問題なく表示できました。

ちなみに折れ線グラフで各線のタイトルを日本語で表示するのに以下のようにしました。

GD::Text->font_path("/usr/share/fonts/ja/TrueType/");
$graph->set_legend_font("kochi-gothic.ttf", 10);
for (my $i = 0; $i < @akw; $i++) {
$akw[$i] = Encode::encode('utf-8', $akw[$i]);
}
$graph->set_legend(@akw);
コメント (0) | トラックバック (0) | goo

script タグで json

2007-02-10 23:24:25 | emacs
サーバと通信すると、同一のドメインのサーバに限定されてしまいますが、script タグなら他ドメインのサーバの JavaScript を読み込むことができます。
動的に script タグを生成して JSON 形式のデータを読み込めば、ドメインを意識せずに ajax を実現できます。

script タグで script オブジェクトを生成しておいて、
<script id="..."></script>
動的に script タグを生成して、この script オブジェクトを新しい script オブジェクトに置換します。

var new_script = document.createElement("script");
new_script.id = script_id;
var script.parentNode.insertBefore(new_script, script);
script.parentNode.removeChild(script);
script = news_script;
script.src = url;

サーバが返すデータは以下のような JavaScript の代入文です。
data = ...;

データに日本語などマルチバイトの文字が含まれる場合には、これらの文字列を uXXXX のように Unicode の文字コードにエンコードしておくと文字化けしません。

それから、script.src = url を実行してから実際にサーバのデータを読み込むには少し時間がかかります。
Firefox の場合には script に onload イベントを指定することができますが、IE の場合には onload イベントが使えないようです。
そのため IE ならデータがダウンロードされたかをチェックする関数を作成して、データがダウンロードされたら次の処理を実行するようにする必要があります。
それにはサーバから返される json オブジェクトが、リクエストしたデータと一致しているかをチェックできるようにしとくとよいでしょう。

setTimeout("wait_json()", interval);

function wait_json() {
if (json データがダウンロードされていたら) {
{次の処理};
}
else {
setTimeout('wait_json()', interval);
}
}
コメント (0) | トラックバック (1) | goo

iffame で読み込まれた html を参照する方法

2007-02-03 23:46:29 | emacs
iframe で読み込まれた html を親ページの JavaScript で参照するには、contentWindow を使います。


<iframe id="iframe_id" src="child.html"></ifrmae>

上記のタグで child.html を読み込んでいる場合、親ページから child.html のソースは以下のようにして参照します。

document.getElementById("iframe_id").contentWindow.document.body.innerHTML

コメント (0) | トラックバック (0) | goo

Folding Keyboard Papillon 買いました

2007-01-30 23:44:57 | zaurus
買うか買わないか迷っていましたが、Folding Keyboard Papillonを買ってしまいました。
今持っているモバイル用のキーボードは、キーを保護するためにソフトケースに入れて持ち運びしているため、結構かさばってしまいます。

そういう点では、折りたたみ式のキーボードは魅力的です。
折りたためるため、キーの保護用のソフトケースは不要だし、幅が半分になるので持ち運びには便利です。

とはいえ、不便な点もあります。
キーボードの中央部分のスペースに空きがあるため違和感があるのと、USBケーブルがキーボードの中央部分で斜め上方向にのびているので、zaurus につなげたときにディスプレイの邪魔になりやすいことです。

とはいえ、コンパクトなのは大きな魅力です。
コメント (0) | トラックバック (0) | goo

emacs 21 で UTF-8

2007-01-21 20:21:29 | emacs
ruby で UTF-8 のデータを処理する必要があって、プログラム自体を UTF-8 で書きたかったので、emacs 21 で UTF-8 を読み書きする方法を調べてみました。

emacs 21 で UTF-8 を扱うには、Mule-UCS をインストールします。
でも Mule-UCS を単体でインストールしただけでは、emacs の起動が遅くなるとのことですので、patch をあててからインストールします。

・Mule-UCS-0.84.tar.gz
http://unit.aist.go.jp/itri/itri-gist/ftp.m17n.org/
・mule-ucs-emacs-21.2.patch
http://pop-club.hp.infoseek.co.jp/unix/mule-ucs-emacs-21.2.patch

インストールは以下のように行います。

まず Mule-UCS を解凍。
% gtar zxvf Mule-UCS-0.84.tar.gz

Mule-UCS-0.84/lisp ディレクトリに patch をコピー。
% cd Mule-UCS-0.84/lisp
% cp {patch のディレクトリ}/mule-ucs-emacs-21.2.patch .

patch をあてる。
% patch <mule-ucs-emacs-21.2.patch コンパイル。
% cd ..
% emacs -batch -l mule-comp.el

.emacs に Mule-UCS を読み込むように以下を記述。
(setq load-path (cons ".../Mule-UCS-0.84/lisp" load-path))
(require 'un-define)


Mule-UCS が正しくインストールされたかを確認するために、UTF-8 のファイルを作成してみます。
UTF-8 でファイルを保存するには、C-x C-m c で

Coding system for following command (default, euc-jp-unix):

と表示されたところで、utf-8 と入力すると、

Command to execute with utf-8:

コマンドの入力を求められるので、C-x C-w でファイル名を入力して保存します。

同様にファイルのエンコーディングを指定してファイルを読み込みたいときには、コマンドを入力するところで、C-x C-f でファイル名を入力します。
コメント (0) | トラックバック (0) | goo

テクノラティミニ

2006-12-20 00:36:39 | zaurus
テクノラティがテクノラティミニというサービスを開始しました。

気になるキーワードかURLを入力すれば、1分毎にブログの検索結果を自動更新してくれるテクノラティミニ。 小さい画面なので、常時パソコン画面の片隅に表示しておけて、常にチェックしたい情報を調べるのに便利。

実際に何種類かのキーワードを入力してはみたのですが、いずれも検索結果がでてこなかったので、以下は使用した感想ではありません。

これはミニRSSリーダーともいえるでしょうか。RSSリーダーの設定で1分毎にブログ検索結果のRSSを取得することができれば、同じことができそうです。ただ、RSSリーダーとの違いは、記事を保存しないというところでしょうか。

サービスの紹介文にあるように、常に画面上に表示させておくのに向いたアプリケーションですね。


コメント (0) | トラックバック (0) | goo

コンパクトなキーボード

2006-12-17 23:23:07 | zaurus
ダイヤテックから折りたためるコンパクトなキーボードFolding Keyboard Papillon「パピヨン」が発売されました。

USB接続なので、zaurus に USB ホストケーブルをつなげば使うことができますね。

NTT-X storeで4,431円。今 zaurus 用に使っているTK-U89H2MSVは少し大きめなので、もう少し安ければ買い換えたいところです。
コメント (0) | トラックバック (0) | goo