Windows Media Player 11 (Beta)

Windows Vista に搭載される予定の Windows Media Player 11 のベータ版が、Windows XP用のみ、本日よりダウンロード可能に。一足先にVista体験をしてみようかと、早速インストールしてみた。

Windows Media Player 11

まだベータ版で、iTMSみたいな楽曲購入までの導線が張れていなかったり、いくつか機能が落ちている部分はあるけど、結構良い感じです。情報がまとまって、収まりがよくなった気がする。操作性は上がったんじゃないかと。

Vistaの登場は、お仕事的には備えなくちゃいけないことが多そうで厄介だけれども、一個人ユーザーとしては楽しみ。

Windows Media Player 11 Beta をダウンロード

NetBeansの影武者にしてやられるの巻

NetBeansで、本日2回目の大ハマリ。

NetBeans5.0にバンドルされているTomcat5.5.9をそのまま使用中。んで、tomcat-users.xmlとかを書き換えたりしていたんだけど、一向に反映される気配がない。なぜ。正しく設定しているはずだし、おかしい。

半ばあきらめかけていたら、ユーザーディレクトリの下に、さりげなくNetBeansの影武者を発見。同様の設定ファイルが、こっちにもできている。それを修正したら、ちゃんと動いた。…お、お前かあ!

C:\Documents and Settings\%USER_NAME%\.netbeans\5.0
(%USER_NAME% はユーザー名)

どの段階でこういう配置になるのか分からないし、もしかしたら自分だけかもしれないけど、設定まわりで困ったら、こっちも参照しましょう、と。

やっぱりマニュアルちゃんと読まないとダメかなあ。ふう。

NetBeansのコンパイル文字コード指定

引き続き、NetBeansにハマリ中。今度は、文字コードがおかしいようで、コンパイルが通らない。

javaソースファイルの文字コード設定も、どこでやるか分かりにくくて大変だった。[ツール]→[オプション]→[詳細オプション]→[編集]→[Javaソース]→[デフォルトエンコーディング]という、限りなく深いところで設定しなければならない。口で説明しようとしたら噛むくらい深い。

で、これで文字コードの設定はOKかと思ったら、コンパイル時のエンコード指定は、また別。そりゃプロジェクトごとに指定できないと使えないんだけど、モヤっとする。

コンパイル時のエンコーディング設定は、[プロジェクトプロパティ]→[構築]→[コンパイル]の「追加のコンパイラオプション」で指定する。

-encoding EUC-JP

IDEだから人に優しいインタフェースを持っているんだろうと思っていたら、コマンドラインでの方法と同じ。思い込みはいけないですな。結構ハマった。ううう。

NetBeansでCVSチェックアウトプロジェクトを作るには

久しぶりにNetBeansで遊ぼうと思ったら、CVSからのチェックアウトプロジェクトの作り方を忘れていて、スゴク焦る。

Eclipseと同じように、[新規プロジェクト] から作れる気になっていたのだけど、間違い。正しくは、上部メニューから、[CVS]→[チェックアウト] で、一度ソースをチェックアウトしなくちゃいけない。それから、そのソースを用いてプロジェクトを作成するという、めんどい手順を踏む必要がある。

ヘルプにそれっぽいことが書いてあったけど、分かりづらい。ヘルプが本当にヘルプになる場合って、まれだよなあ。ほとんどは、ヘルプの内容を検索して調べている気がする。もういっそ google がヘルプってことじゃダメだろうか。ダメだな。

bashプロンプトのカスタマイズ

bashのプロンプト表示をカスタマイズする場合は、シェル変数「PS1」をいじくる。

PS1="[\u@\h \W] \$"

これだけで、「街でよく見るbashプロンプト第1位」に輝くほど見慣れたプロンプトのできあがり。まあ、街でbashなんて見たことありませんが。

変数説明
\uカレントユーザー名
\hホスト名(最初のドットまで)
\Hホスト名(全部)
\w現在のディレクトリへのパス
\W現在のディレクトリ名
\d「Fri May 26」みたいな形式の日付
\thh:MM:ss 形式の時刻(24時間)
\Thh:MM:ss 形式の時刻(12時間)
\n改行
\!コマンドヒストリー番号
\#コマンド番号(ログイン後のコマンド実行回数)
\$UIDが 0 ならば「#」、そうでなければ「$」を表示

こんな感じで色々とプロンプトに埋め込むことができるみたい。あんまりやりすぎると使いにくくなりそうだけど、時刻関係は、実行時間の履歴に使えそうでちょっと便利かも。

ログイン時シェルの変更

FreeBSD は標準シェルが csh なのが気に入りません。

普段 Linux を触っているから、どうしても bash が恋しくなる。「今頃、bash のやつ、どうしてるかな…」なんて星空を見ながら思ったりしないけど、bash が恋しい。そんなわけで、シェルを bash に変更することにした。

あ、bash はインストール済みということで、話が進みます。

続きを読む "ログイン時シェルの変更"

カーネルのバージョンを調べるには

Linux OSのカーネル・バージョンを調べる方法が、いつまで経っても覚えられないので、もうあきらめることにした。

「半年に一度、使うか使わないかの知識なんて、覚えていてもムダだよ。さあ、僕と一緒に踊りませんか?」ということで、ここにメモしておく。とりあえず、左記のセリフの真意は、書いている本人も理解できないので、そっとしておいてください。僕は踊りません。

# cat /proc/version

さらに、もろもろのカーネル情報を知りたい場合は、次のコマンドで、ブート時のメッセージを参照することができる。

# dmesg 

しかし、こうしてエントリを書くと覚えてしまいそうな気がする。気のせいだと思うけど。

コレクションの各要素に特定の処理を行う

Jakarta Commons Collectionsライブラリを使えば、コレクションの要素に関するさまざまな処理を、サクっと実装することができる。便利な世の中になったもんで。

たとえば、コレクションの各要素に特定の処理を行うには、forAllDo メソッドが使える。

CollectionUtils.forAllDo(list, new Closure() {
	public void execute(Object input) {
		// 要素に対する処理
		Hoge hoge = (Hoge) input;
		hoge.doSomething();
	}
});

他にも、filter とか select といった、かゆいところに手が届くメソッドが数多く用意されている。覚えておくと、プログラミングの戦術が増やせるかもしれない。

ただ、この程度の処理ならば、自前で Iterator を使って書いても早いし、見通しも良くなると思う。そんなわけで、今まで一回も使ったことありません。結局、かゆいところは、自分でかく。寂くて弱い男です。ううう。

続きを読む "コレクションの各要素に特定の処理を行う"