-- README for XCruise (version 0.24)

    XCruise - A directory browser
    Copyright (C) 1999  Yusuke Shinyama <euske@cl.cs.titech.ac.jp>

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


(in Japanese)
--
CHANGES
	2000/1/24
		Version 0.24
		バグフィックス。0.23 はひどく遅くなるらしいので、
		やっぱり XQueryPointer を使うことにした (thanks, Synap)。
		GNOME/Enlightenment, Sawmill およびいつもの twm でテスト。

	2000/1/23
		Version 0.23、主にバグフィックス。
		おそらく Gnome や Enlightenment 上でも正常に動く。

		- 新機能:
		'-titlemode' オプションを追加する。これを指定すると
		情報がウインドウのタイトルバーに表示される。また、
		フリーズさせる 'f' キーを追加 (thanks, Bernard)。
		'-viewall' オプションを追加する。これで . で始まるファイル
		が見えるようににある (thanks, Nix)。
		
		- バグフィックス:
		fprintf で欠けている引数の修正 (thanks, Gabriel)。
		EnterWindow, LeaveWindow のかわりに FocusIn, FocusOut を
		使う (thanks, Roger)。
		マウス情報の取得をまともなやり方にする (thanks, Alan,
		David and Ryan)。

	1999/12/2
		Version 0.22
		バグフィックス。draw.c (Oshiro Naoki さん) と task.c。

	1999/11/25
		Version 0.2
		GPL にする。いくつかバグ直し。xcrvar.c を main.c に
		統合し、ソースコードをすこし見やすくする。

	1999/11/22
		Version 0.1
		fj.sources に投稿する。

XCRUISE とは?
	XCruise は、ファイルシステムを宇宙空間に見たてて、
	その中を航海するソフトです。UNIX のディレクトリツリーを
	3次元的に構成し、その中をマウスで移動できます。

	  1. アナロジー:
		ディレクトリ	: 銀河 (水色または白の環)
		ファイル	: 惑星 (暖色系の塗られた円)
		シンボリックリンク : ワームホール (緑の曲線)
	  2. 惑星の質量 (= 半径の3乗)、および銀河の半径は
	     そのファイルサイズによって決まる。
	  3. 惑星や銀河の位置、色、向きなどはファイル名から一意に
	     決定される:
		a) 近い名前の星は銀河内で近い位置に配置される。
		b) 短い名前の星ほど銀河の中心に近い位置に配置される。
		c) read permission がないファイルまたはディレクトリは、
		   紫色で表示される。
	  4. ある銀河に一定以上近づくと、その銀河の中に「入った」
	     ことになり、「カレント銀河」が変更され、スピードが落ちる。
	     カレント銀河にある星はその外にある星より明るく表示される。
	  5. 宇宙 (ルートディレクトリ) はひとつの大きな銀河 (青い環)
	     として扱われる。

	カーソル (白い十字) をマウスで動かして、左ボタンで
	前向きに加速します。カーソルは画面中央が静止位置です。
	中央ボタンで後向きに加速します。このとき同時に
	右ボタンを押すとさらに早く加速します。ボタンを離すと停止します。
	終了するには Q キーを押してください。F キーで一時停止です。
	星の色の変更は付属のファイル XCruise.ad を参考にしてください。
	ではよい航海を。ずっとやってると酔うので気をつけて。

技術説明
	内部で readdir と lstat を使ってディレクトリ構成を
	読んでいます。銀河までの距離によって、その銀河の
	中が見えるかどうかを決定しています。ある一定以上近づくと
	"expand" が起こり、内部を再帰的に探索します。逆に離れると
	"collapse" が起こり、その銀河の占めていたメモリは解放されます。
	カレント銀河の変更が起こると宇宙全体のスケールを変更します。
	3D の計算は z-buffer もどきを使っていますが、
	とくに目新しいことはやっていません。ワームホールは 3次の
	bezier 曲線で、これだけ別扱いで表示しています。

これまで
	学部生のころ、ある授業で「人間は空間的な『あれがどこにあったか』
	という手がかりをもとに物体の位置を覚えているため、
	ツリー状ファイルシステムは必ずしも人間の直観にそぐわないかも」
	という話を聞き、それに触発されてこのアナロジーを思いつきました。
	最初は Mac SE/30 の上で開発したんですが、大学の計算機室に
	あった白黒 X 端末で動かすために UNIX に移植しました。
	-monochrome モードなんかがあるのはそのためです。
	このプログラムに触発されて、どなたかがもっと使いやすい
	ユーザインターフェイスを開発してくだされば幸いです。

動作確認した機種
	Linux 2.2
	Solaris 2.6 (use gcc)
	Digital UNIX 4.0
	NEWS-OS 4.1 (use gcc)
	IRIX 6.3
	FreeBSD-3.2R
	OpenBSD 2.6
	
	基本的に X のあるマシンならどれでも動くはずです。

インストール方法
	% xmkmf -a
	% make (or make CC=gcc)
	% ./xcruise

ライセンス条項
	このドキュメントを含め、GNU General Public License に従います。

作者
	新山 祐介 (しんやま ゆうすけ)
	Email: euske@cl.cs.titech.ac.jp
	http://tanaka-www.cs.titech.ac.jp/%7Eeuske/
-
