Index (May 2007)
XonWindows3付属のemacsでUTF-8を扱えるようにする(未解決)
Mule-UCSというパッケージがあり、これを使えば、emacsでUTF-8を 使えるようになる。
現在文字コードはすべてUTF-8に統一しているので、 XonWindows3のemacsでもUTF-8を扱えるようにしたい。
XonWindows3には、標準でMule-UCS 0.85のバージョンが収録されているのだが、 .emacs.el に以下の行を追加して、UTF-8を使おうとするとemacs起動時にエラーに なって使えない。
(require 'un-define)
(require 'jisx0213)
そこで、ネットで検索して、Mule-UCS 0.84のバージョンのソースを入手して、 インストールしてみたが、読み込みこそうまくいったのだが、 結局保存時に、以下のようなエラーが出てうまくいかなかった。
These default coding systems were tried:
utf-8-unix
However, none of them safely encodes the target text.
Select one of the following safe coding systems:
raw-text emacs-mule no-conversion
JavaからPDFファイルを扱う(PDFファイルのアクロバットリーダでの表示、印刷など)
Javaで書いたプログラムからPDFを扱う場合に便利なコードが iTextのソースアーカイブに入っていたのでメモ。 すぐ利用できるようにJavadocも用意。
- PDFファイルをアクロバットリーダで表示
- PDFファイルを印刷
Javaで印刷するには、Java2Dを使って描画して印刷、という普通の方法が あります。 しかし、場合によっては、iTextを使って、PDFを生成して、 このクラス(Executable.java)経由で印刷ダイアログを出して、印刷、 という方が便利な場合もあるかと思います。
lftpのmirror(ミラー)機能を使ってウェブサイトを更新するときにアップロード対象から特定ファイルを除外する方法
lftp はとても便利。
諸事情により、XonWindowsからCygwinに乗り換えたが、 最新のCygwinにはlftpのバイナリが含まれていてとても助かる。
諸事情
いままで、vimなどで日本語の扱いが楽、などの理由で、 CygwinのかわりにXonWindows3を使ってきたが、Python2.5が使いたかったので、 Cygwinを使うことにした。
Cygwin付属のvimは、そのままでは日本語が扱えないが、 そこはがんばって設定するとかいった努力はやめて、kaoriyaのvimを 素直に使うことにした。
Linux起動時に起動するデーモン(サービス)を指定する
Windowsにcolinuxをインストールして、Windowsサービスとして使用している。 そこに先日 samba を導入して、Windows上のcygwin上から y:ドライブとして扱えるようにした。
しかし、Windowsマシン自体を再起動すると、y: ドライブ経由でアクセスできなくなっている。 ログオン時に再接続にチェックしたのに。
調べてみると、colinux上でsmbが起動していなかった。
colinux+vine3.2の場合、起動時のデーモン設定は、以下のコマンドで行う。
$ su
GNOMEなどでは、ウインドウズサービスの設定と同じ操作イメージで 起動時デーモン指定がデスクトップ上のメニューからできるようになっているが、 colinuxをXなしで使う場合には、いまだにこのコマンドのお世話になる。
ContentLinkというキーワード連動型広告
colinux のサイトを見ていたら、Linuxというキーワードにマウスポインタを重ねたら 次のような広告が出てきたんです。

ContentLinkで調べてみると、 Konteraという会社のサービスのようなのですが、 なかなかすごいなぁ。
要するにGoogleAdsenseやアマゾンアソシエイトのようなものなのですが(たぶん)、 広告用スペースを占拠しないところが良い。
- サイトのレイアウトデザインを広告のために考えなくてよい
- 訪問者にしてみると、マウスポインタさえ注意すれば広告を見ないで済む
どうもアフィリエイトの類いの広告が、ページ上に散りばめられていると、 "あさまし"感が出てしまうと思うのですが、ContentLinkは、そういう印象を 訪問者に与えないのがいいと思いました。
実行時のOSを調べる(Java)
Javaでは、Write Once, Run anywhere ということになっているので、 書いたコードはWindows,MacOSX,Linuxなどいろんな環境で使われる可能性があります。
本当に Write Once...ならいいのですが、たとえばマウスの右ボタンのように 一般的なマックにはないような処理を含んだソフトウェアを書く場合、 実行中のOSを調べて、OS別の対処コードを書く必要が出てきます。
LookAndFeelを切替えるコード(Java)
たびたび使うことになるコードなので記録。
デスクトップ向けのJavaアプリケーションを書く場合、たいていは ウインドウズ上で使われることが想定されるので、 ルックアンドフィールをWindowsにしておくのがよい。
{strong:Windows}にしておくと、ファイル選択ダイアログがネイティブなウインドウズと 同じになるのがうれしいです。 Metalに設定されている(つまりデフォルトのLaF)ファイルチューザーは正直いって、 使いにくいです。
ランタイム時の画面サイズを取得する(Java Swing)
たびたび使うことになるコードなので記録。
GUIが複雑なアプリの場合、 実行環境にあわせて画面をいっぱいまで使いたい場合があります。 その場合に使うコード。
awstats を使って特定のページだけのアクセスログ統計レポートを作成する
awstatsは、メジャーなアクセスログ統計レポート作成ツールです。
一般的な使い方としては、自動的にウェブサーバのログを拾ってきて
日々のレポートを自動生成するのに使うと思いますが、
特定のページだけのレポートを生成するためのツールとしても、
使えます。
基本的にはごく単純な作業なのですが、思わぬ落とし穴があったので、 忘れないようにメモしておきます。
colinuxとウインドウズのファイル共有
ウインドウズ側からLinuxのファイルシステムにネットワークドライブを割り当てた状態で、
アクセスしたい場合、sambaを使うのが一番簡単なようだ。
Webdavを使う方法もあるが、両方やってみた結果、sambaの方がずっと簡単に設定できた。