WindowsのGrowlっぽいもの
Javaアプリケーションで通知したいなーと思った。
1.6なら java.awt.SystemTray, java.awt.TrayIconがあるわけだけれど、
http://sattontanabe.blog86.fc2.com/blog-entry-24.html
業務で使っているのは1.4系。
あとできればPythonからも使いたい。
以前から気になっていたGrowl for Windowsをあさる。
本家GrowlはアーカイブがdmgのためSDKが解凍できない…
先発クローンのSnarlをあさるも、
MelonとかいうVB用フレームワークをインストールさせられそうになったので保留にした。
日本語も通らないらしい。
日本発Growlクローンのwhineを試したところ、
コンパクト&シンプルで気に入った。日本語ばっちりだし。
同梱のwhinesend.exeを実行するだけで通知できる。
(Perlなんかはソケット経由でいけるみたい)
Haiku OSをVMWareで動かしてみる
■用意するもの
VMWare Player
http://www.vmware.com/download/player/
これは普通にインストール。
あとは
http://www.haiku-os.org/downloads
約34MBのVMWare向けNightly Buildを落とす。
解凍して実行。
■起動したら
フォントの設定を開いて日本語フォントを設定すること。
固定幅フォントはUIの問題か選べなかった。
とりあえずFirefox入れればどんなOSでも使える時代。
現時点でインストールしたいのは
Firefox version 2.0.0.18
http://www.bebits.com/app/3143
まずはダウンロード。
コンソールを立ち上げて
> wget http://www.bebits.com/bob/21982/firefox-2.0.0.18.en-US.BeOS-bone.zip
などする。
あとはエクスプローラ?からファイルを解凍する。
このままだと立ち上がらないらしく、
firefoxフォルダ下に
add-ons
lib
の二つのフォルダを作る必要がある。
libfreebl3.so
libnssckbi.so
libxpistub.so
この3つのファイルはadd-onsに入れ、
ほかの.soファイルは全てlibに入れる。
あとはfirefox-binをダブルクリックすれば動く。
jEditを使う
素の状態で起動が重い。
起動時間だけならNetbeansとそこまで違わない。
Javaのコード書くんなら補完がしがし利くNBのほうが便利。
今のところXML/HTMLエディタとして使ってる。
プラグインは、XMLサポート、Sidekick、文書タブあたりがあればいいかな。
文字コード関連。UTF-8Nとかだと正常に開けないので注意。
組み込みのBeanShellが微妙に便利。UTFのリテラルとか突っ込むとそのまま表示してくれる。
ただちょっと間違っただけで大量のスタックトレースが出力されて、ああjavaだなあと思ったり。
BeanShellはJavaのインタプリタで、
組み込みコンソールからエディタ自体を操作できたりして、よく出来てる。
マクロもBeanShellで実現されていて、Javaが使える人にはうれしい。
秀丸マクロはまったく覚える気にならないけど、これならいいかな。
あと、メモリ使用率が高くなると(Javaなら動的に拡張するはずだが)と、
やたら重くなるので、明示的にガベージコレクションを行うことが多い。
メモリ使用率メーターダブルクリックでガベージコレクタを動かせる。
置換にもBeanShellが使える。
_0がマッチした文字列が入っているので、
このようなコードを入れると、勝手に選択範囲の数字をインクリメントしたりする。
矩形編集(Ctrl+マウス範囲選択)もしっかりしていたので、
そのあたりの弱い秀丸の補助に使ってる。
Jakarta POIでExcelのシートを読む
public static void main(String[] args) { FileInputStream fis = null; HSSFWorkbook workbook = null; try { fis = new FileInputStream("okaimono.xls"); POIFSFileSystem fs = new POIFSFileSystem(fis); workbook = new HSSFWorkbook(fs); } catch (IOException ex) { ex.printStackTrace(); } FileOutputStream fos = null; HSSFSheet sheet = workbook.getSheetAt(0); int i = 1; Iterator iter = sheet.rowIterator(); //最初の行は読み飛ばす iter.next(); while (iter.hasNext()) { HSSFRow r = (HSSFRow)iter.next(); if (r == null) { System.out.println("終了"); break; } else { HSSFCell cell = r.getCell(0); HSSFRichTextString rich = cell.getRichStringCellValue(); String str = rich.getString(); System.out.println("" + str); HSSFCell numCell = r.getCell(1); double doubleCell = numCell.getNumericCellValue(); System.out.println("値段:" + (int)doubleCell + "円"); } i++; } }
jakarta POI
用があるのはHSSFパッケージ(Excelシートの読み書きができる)
RPGなんかのデータの管理はCSVでもいいわけだけど、
xlsだと色付けたり強調したり出来るのでまあ楽しく管理出来るんじゃないかと思った。
文字列を期待しているところに数字が入ってくると例外吐くとこに注意。
例には書いてないけど、cellの型をまず取ってから
内容を文字列に全部変換しちゃった方がいい。