diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 222 |
1 files changed, 111 insertions, 111 deletions
diff --git a/README b/README index 9cf783a..c3da26c 100644 --- a/README +++ b/README @@ -7,188 +7,188 @@ Tatsuya Kato (kato@ntts.co.jp) -$@0JA0!"(Jfj.sources $@$K(J xneko $@$H$$$&(J X Window $@>e$GF0$/!VG-!W$,Ej9F$5$l$F$$(J -$@$^$7$?$,!";DG0$J$,$i$3$N!VG-!W$O0l$D$N%&%$%s%I%&$r:n$C$F$=$N%&%$%s%I%&(J -$@$NCf$G%^%&%9$rDI$$$+$1$FAv$j2s$k$b$N$G$7$?!#(J +以前、fj.sources に xneko という X Window 上で動く「猫」が投稿されてい +ましたが、残念ながらこの「猫」は一つのウインドウを作ってそのウインドウ +の中でマウスを追いかけて走り回るものでした。 -$@$=$3$G;d$,!VG-$r$*$j$KJD$89~$a$F$*$/$N$O2D0%A[$8$c$J$$$+!W$H;W$$!"2hLL(J -$@$N>e$r=D2#L5?T$KAv$j2s$k$h$&$K2~B$$7$F$"$2$^$7$?!#(J +そこで私が「猫をおりに閉じ込めておくのは可哀想じゃないか」と思い、画面 +の上を縦横無尽に走り回るように改造してあげました。 -$@$=$NL>$b(J "oneko"$@!#:G=i$O(J 'oclock' $@$N(J 'o' $@$r<h$C$?$D$b$j$@$C$?$N$G$9$,!"(J -oclock $@$C$F4]$$$+$i(J 'o' $@$J$s$8$c$J$/$F(J o'clock $@$N(J 'o' $@$G$9$h$M!#$G!"(J' -o' $@$N$3$8$D$1$K(J "Neko runs Over the windows" $@$N(J 'o' $@$r$D$1$^$7$?!#!J6l(J -$@$7$$!K(J +その名も "oneko"。最初は 'oclock' の 'o' を取ったつもりだったのですが、 +oclock って丸いから 'o' なんじゃなくて o'clock の 'o' ですよね。で、' +o' のこじつけに "Neko runs Over the windows" の 'o' をつけました。(苦 +しい) -$@!t(J $@#n$H#m$ONY9g$o$;$N%-!<$J$N$G$/$l$0$l$b4V0c$C$FF~NO$7$J$$$h$&$K$7$F(J -$@!t(J $@2<$5$$!#(J +# nとmは隣合わせのキーなのでくれぐれも間違って入力しないようにして +# 下さい。 -$@$3$N%W%m%0%i%`$r<B9T$9$k$K$O(J X Window System $@$,I,MW$G$9!#(JX $@$N%P!<%8%g(J -$@%s$O(J R3 $@$^$?$O(J R4 $@$G$9$,!"(JR4 $@$G:N$jF~$l$i$l$?(J Shape extention $@$r;H$C$F(J -$@$$$^$9$N$G(J R3 $@$G<B9T$9$k>l9g$O$D$^$i$J$$<B9T7k2L$K$J$C$F$7$^$$$^$9!#(J -$@!J(JShape extention $@$,$J$/$F$b%3%s%Q%$%k$O$G$-$k$h$&$K$7$F$"$j$^$9!#!K(J +このプログラムを実行するには X Window System が必要です。X のバージョ +ンは R3 または R4 ですが、R4 で採り入れられた Shape extention を使って +いますので R3 で実行する場合はつまらない実行結果になってしまいます。 +(Shape extention がなくてもコンパイルはできるようにしてあります。) -$@<B9T$9$k%^%7%s$O(J Sun4/330 $@$H!"(JNCD $@$N#XC<Kv$G$7$+;n$7$F$^$;$s$,!"#XC<Kv(J -$@$G$O$O$C$-$j$$$C$FCY$$$G$9!#(JSun $@$N%3%s%=!<%k$G$d$C$?;~$K$O%Q%i%a!<%?$N(J -$@@_Dj$G$+$J$j$NB.EY$^$G$"$2$i$l$k$N$G$9$,(J ......$@!#(J +実行するマシンは Sun4/330 と、NCD のX端末でしか試してませんが、X端末 +でははっきりいって遅いです。Sun のコンソールでやった時にはパラメータの +設定でかなりの速度まであげられるのですが ......。 -$@$*;n$7$/$@$5$$!#(J +お試しください。 -$@!c%P!<%8%g%s%"%C%W$K$h$k5!G=3HD%!d(J +<バージョンアップによる機能拡張> -$@!}(J $@%*%W%7%g%s$O$9$Y$F%j%=!<%9$+$i$b;XDj$G$-$k$h$&$K$J$j$^$7$?!#$?$@$7!"(J - Xrm $@%i%$%V%i%j4X?t$r;HMQ$;$:!"(JXGetDefault $@$G%j%=!<%9$N<hF@$r9T$J$C(J - $@$F$$$^$9!J(JX11R1 $@AjEv$N5!G=!K$N$G!"%"%W%j%1!<%7%g%s%G%U%)%k%H(J - (/usr/lib/X11/app-default $@$K$"$k%U%!%$%k!K$G$N%j%=!<%9;XDj$O$^$@$G(J - $@$-$^$;$s!#(J +◎ オプションはすべてリソースからも指定できるようになりました。ただし、 + Xrm ライブラリ関数を使用せず、XGetDefault でリソースの取得を行なっ + ています(X11R1 相当の機能)ので、アプリケーションデフォルト + (/usr/lib/X11/app-default にあるファイル)でのリソース指定はまだで + きません。 -$@!}(J NTTSOFT local $@$G9%I>$@$C$?!J!)!K$H$iG-$K$9$k5!G=$r:N$jF~$l$^$7$?!#(J - $@<B9T;~$K(J +◎ NTTSOFT local で好評だった(?)とら猫にする機能を採り入れました。 + 実行時に % oneko -tora - $@$H$9$k$HG-$NLOMM$,JQ$o$j$^$9!#(J + とすると猫の模様が変わります。 -$@!}(J $@?'$N;XDj$,$G$-$k$h$&$K$J$j$^$7$?!#5/F0;~$N%*%W%7%g%s$G(J -fg, -bg $@$r(J - $@;XDj$7$F2<$5$$!#(J +◎ 色の指定ができるようになりました。起動時のオプションで -fg, -bg を + 指定して下さい。 -$@!}(J $@$3$NG-$O!"?2$F$$$k;~$K$M$:$_$r$f$C$/$j0\F0$5$;$k$H5$$E$+$:$K?2$F(J - $@$$$^$9!#$3$l$O0lDj;~4VFb$K%^%&%9$NF0$$$?5wN%$,$"$kCM$r1[$($J$1$l$P(J - $@5$$,$D$+$J$$$h$&$K$J$C$F$$$k$N$G$9$,!"$3$N!V$"$kCM!W$r%*%W%7%g%s$G(J - $@JQ$($i$l$k$h$&$K$7$^$7$?!#%G%U%)%k%H$O#6$K$J$C$F$$$k$N$G$9$,!"(J +◎ この猫は、寝ている時にねずみをゆっくり移動させると気づかずに寝て + います。これは一定時間内にマウスの動いた距離がある値を越えなければ + 気がつかないようになっているのですが、この「ある値」をオプションで + 変えられるようにしました。デフォルトは6になっているのですが、 % oneko -idle 20 - $@$H$9$k$H!V$h$jF_$$!WG-$N=PMh>e$,$j$G$9!#(J + とすると「より鈍い」猫の出来上がりです。 -$@!}(J $@%3%s%Q%$%i$K(J gcc $@$r;H$&$HF0$+$J$$$=$&$G$9!#!J;d$b3NG'$7$?!K$3$N$?$a(J - $@:#EY$N(J Imakefile $@$G$O6/@)E*$K(J cc $@$G%3%s%Q%$%k$9$k$h$&$K;XDj$7$F$$$^(J - $@$9!#(J +◎ コンパイラに gcc を使うと動かないそうです。(私も確認した)このため + 今度の Imakefile では強制的に cc でコンパイルするように指定していま + す。 -$@!}(J Shape extention $@$N%i%$%V%i%j$,$J$/$F$b%3%s%Q%$%k$G$-$^$9!#$b$7$"$J(J - $@$?$N;HMQ$7$F$$$k#X$,(J R4 $@$G$O$J$/$F!"$+$D(J SONY NEWS $@$G$O$J$$>l9g$O(J - Imakefile $@$N(J +◎ Shape extention のライブラリがなくてもコンパイルできます。もしあな + たの使用しているXが R4 ではなくて、かつ SONY NEWS ではない場合は + Imakefile の DEFINES = -DSHAPE - $@$H$$$&9T$r>C$7$F2<$5$$!#!J(JNEWS $@$G;H$($k$+$I$&$+$O;n$7$F$^$;$s!#C/$+(J - $@3NG'$7$F2<$5$$!#!K(J + という行を消して下さい。(NEWS で使えるかどうかは試してません。誰か + 確認して下さい。) -$@!c%3%s%Q%$%k$N;EJ}!d(J +<コンパイルの仕方> -1. $@$^$:!"$3$N5-;v$r(J unshar $@$7$F%=!<%90l<0$r<h$j=P$7$F$/$@$5$$!#(J +1. まず、この記事を unshar してソース一式を取り出してください。 -2. Makefile $@$r:n$j$^$9!#(Joneko $@$N%G%#%l%/%H%j$K0\$C$F!"(J +2. Makefile を作ります。oneko のディレクトリに移って、 % xmkmf -$@$r<B9T$7$F$/$@$5$$!#$b$7!"$3$N%3%^%s%I$,$J$1$l$P!"(J +を実行してください。もし、このコマンドがなければ、 % imake -DUseInstalled -I/usr/lib/X11/config -$@$G$bF1$8$G$9!#(J +でも同じです。 -3. make $@$r<B9T$7$^$9!#(J +3. make を実行します。 % make -$@$3$l$G!"<B9T2DG=$J!VG-!W$,=PMh$^$9!#$b$7!"(J/usr/bin/X11 $@$K$$$l$F!"$_$s(J -$@$J$G;H$$$?$$$N$G$7$?$i(J +これで、実行可能な「猫」が出来ます。もし、/usr/bin/X11 にいれて、みん +なで使いたいのでしたら # make install -$@$r!J%9!<%Q%f!<%6$G!K<B9T$7$F$/$@$5$$!#(J +を(スーパユーザで)実行してください。 -$@$3$l$G%3%s%Q%$%k$O=*N;$G$9!#$"$H$O!"(J +これでコンパイルは終了です。あとは、 % oneko & -$@$r<B9T$7$F3Z$7$s$G$/$@$5$$(J :-) +を実行して楽しんでください :-) -$@!c;HMQJ}K!!d(J +<使用方法> -$@4pK\E*$K%*%W%7%g%s$O$$$j$^$;$s!#$,!"$3$s$J$*$W$7$g$s$b$"$j$^$9!#(J -help $@$r=|$/%*%W%7%g%s$O%j%=!<%9$+$i$bJQ99$G$-$^$9!#(J +基本的にオプションはいりません。が、こんなおぷしょんもあります。 +help を除くオプションはリソースからも変更できます。 --help $@%*%W%7%g%s$N(J help $@$rI=<($7$^$9!#(J +-help オプションの help を表示します。 --tora $@G-$,$H$iG-$KJQ$o$j$^$9!#(J +-tora 猫がとら猫に変わります。 --time <n> $@G-$,;H$&%$%s%?!<%P%k%?%$%^$NCM$rJQ$($^$9!#%G%U%)%k%H$O(J - micro second $@C10L$G(J 125000 $@$K$J$C$F$$$^$9$,!"$3$NCM$r(J - $@>.$5$/$9$k$[$IG-$,B.$/F0$-$^$9!#(J +-time <n> 猫が使うインターバルタイマの値を変えます。デフォルトは + micro second 単位で 125000 になっていますが、この値を + 小さくするほど猫が速く動きます。 --speed <n> $@G-$,0lEY$K0\F0$9$k5wN%$r%I%C%H$N?t$G;XDj$7$^$9!#%G%U%)(J - $@%k%H$O(J 16 $@$G$9$,!"$3$NCM$rBg$-$/$9$k$[$IG-$,B.$/0\F0$7(J - $@$^$9!#(J +-speed <n> 猫が一度に移動する距離をドットの数で指定します。デフォ + ルトは 16 ですが、この値を大きくするほど猫が速く移動し + ます。 --idle <n> $@G-$,?2$F$$$k;~!"$I$l$@$1$NB.EY$G$M$:$_$,F0$$$?$i5/$-$k(J - $@$N$+$r;XDj$G$-$^$9!#%G%U%)%k%H$O(J 6 $@$G$9!#(J +-idle <n> 猫が寝ている時、どれだけの速度でねずみが動いたら起きる + のかを指定できます。デフォルトは 6 です。 --rv $@?'$rH?E>$7$^$9!#!J%+%i!<$N%G%#%9%W%l%$$G$O(J fg, bg $@$G;X(J - $@Dj$G$-$k$N$G!"$"$s$^$j0UL#$,$"$j$^$;$s!#!K(J +-rv 色を反転します。(カラーのディスプレイでは fg, bg で指 + 定できるので、あんまり意味がありません。) --noshape X $@$N(J Shape Extension $@$r;H$o$:$K<B9T$7$^$9!#B.EY$O$+$J(J - $@$jB.$/$J$j$^$9$,!"I=<($,$D$^$i$J$/$J$j$^$9!#!J<B:]$K$d$C(J - $@$F$_$F$/$@$5$$!#!K(J +-noshape X の Shape Extension を使わずに実行します。速度はかな + り速くなりますが、表示がつまらなくなります。(実際にやっ + てみてください。) --fg <color> $@%U%)%"%0%i%&%s%I$N?'$r;XDj$7$^$9!#%b%N%/%m!<%`$N%G%#%9(J - $@%W%l%$$G$OL5;k$5$l$F$7$^$$$^$9!#(J +-fg <color> フォアグラウンドの色を指定します。モノクロームのディス + プレイでは無視されてしまいます。 --bg <color> $@%P%C%/%0%i%&%s%I$N?'$r;XDj$7$^$9!#%b%N%/%m!<%`$N%G%#%9(J - $@%W%l%$$G$OL5;k$5$l$F$7$^$$$^$9!#(J +-bg <color> バックグラウンドの色を指定します。モノクロームのディス + プレイでは無視されてしまいます。 -$@$^$?!"%$%s%9%H!<%k$9$k$H(J tora $@$K$b(J symbolic link $@$rD%$j$^$9!#(Jtora $@$H$$(J -$@$&%3%^%s%IL>$G5/F0$7$?;~$K$O%G%U%)%k%H$G(J -tora $@%*%W%7%g%s$r$D$1$?;~$H(J -$@F1$8$K$J$j$^$9!#(J +また、インストールすると tora にも symbolic link を張ります。tora とい +うコマンド名で起動した時にはデフォルトで -tora オプションをつけた時と +同じになります。 -$@%j%=!<%9$G;XDj$7$?>l9g$O$3$&$G$9!#(J +リソースで指定した場合はこうです。 oneko.foreground: black oneko.background: red oneko.time: 100000 oneko.reverse: true -$@%3%^%s%I$,(J oneko $@$G$O$J$/!"(Jtora $@$H$$$&L>A0$G5/F0$5$l$?>l9g%j%=!<%9L>$O(J -tora.* $@$K$J$j$^$9$+$i(J +コマンドが oneko ではなく、tora という名前で起動された場合リソース名は +tora.* になりますから tora.foreground: sienna tora.background: moccasin -$@$H$7$F$H$iG-$N@_Dj$HIaDL$NG-$N@_Dj$rJL$K$9$k$3$H$b2DG=$G$9!#$H$iG-$N?'(J -$@$O$=$N$^$^$G$OGr9u$K$J$C$F$7$^$&$N$G>e$N#29T$r(J resoerce $@$K$$$l$F2<$5$$!#(J +としてとら猫の設定と普通の猫の設定を別にすることも可能です。とら猫の色 +はそのままでは白黒になってしまうので上の2行を resoerce にいれて下さい。 -$@$^$?!"%3%^%s%IL>$G$J$/$F%/%i%9L>!J(J"Oneko"$@!K$G;O$^$k%j%=!<%9$bFI$`$h$&(J -$@$K$7$^$7$?!#$G$9$+$i(J speed, time $@$J$I!"A4$F$NG-$K6&DL$J%j%=!<%9$O%/%i(J -$@%9L>$G!"G-$N<oN`!JIaDL$NG-!"$H$iG-!K$K$h$C$FJQ$($?$$?'$J$I$N%j%=!<%9$O(J -$@%3%^%s%IL>!J%$%s%9%?%s%9L>!K$G;XDj$9$k$N$,$$$$$G$7$g$&!#(J +また、コマンド名でなくてクラス名("Oneko")で始まるリソースも読むよう +にしました。ですから speed, time など、全ての猫に共通なリソースはクラ +ス名で、猫の種類(普通の猫、とら猫)によって変えたい色などのリソースは +コマンド名(インスタンス名)で指定するのがいいでしょう。 -$@$3$NJU$N(J implement $@$O;O$a$+$i(J Xrm* $@$r;H$($P$h$+$C$?$N$G$9$,!"$3$N4X?t(J -$@$NB8:_$rCN$i$J$+$C$?$N$G(J XGetDefault $@$r;H$C$F!VL5M}LpM}!W=q$$$F$$$^$9!#(J +この辺の implement は始めから Xrm* を使えばよかったのですが、この関数 +の存在を知らなかったので XGetDefault を使って「無理矢理」書いています。 -$@!c$P$0!"$3$l$+$i%P!<%8%g%s%"%C%W$7$?$$$H$3$m!d(J +<ばぐ、これからバージョンアップしたいところ> -$@J#?t$NG-$rF1;~$KF0$+$;$k$h$&$K$7$?$$!#:#$N$^$^$G$O(J oneko $@$r#2$D<B9T$9(J -$@$k$HF1$8F0$-$r$9$k$N$G=E$J$C$F$7$^$$$^$9!#!J(J-speed $@$d(J -time $@$rJQ$($F<B(J -$@9T$9$k$H$=$l$J$j$KF0$$$F$/$l$^$9$,!#;n$7$F$_$F2<$5$$!#!K(J +複数の猫を同時に動かせるようにしたい。今のままでは oneko を2つ実行す +ると同じ動きをするので重なってしまいます。(-speed や -time を変えて実 +行するとそれなりに動いてくれますが。試してみて下さい。) -$@G-$,Av$C$?8e$NNN0h$K(J Expose $@$,5/$-$k$N$G!"(Jkterm $@Ey$@$H$A$i$A$i$7$^$9!#(J -Save Under $@$b;n$7$F$_$^$7$?$,!"CY$/$F$d$a$F$7$^$$$^$7$?!#2?$+$$$$J}K!(J -$@$,$J$$$G$7$g$&$+!)(J +猫が走った後の領域に Expose が起きるので、kterm 等だとちらちらします。 +Save Under も試してみましたが、遅くてやめてしまいました。何かいい方法 +がないでしょうか? -$@%+!<%=%k$,%k!<%H%&%#%s%I%&$N>e$HG-$N>e$K$"$k;~$K$O%M%:%_$KJQ$o$j$^$9$,!"(J -$@%M%:%_$N?'$OC1$KG-$N?'$rH?E>$7$?$b$N$K$J$C$F$$$^$9!#;~4V$,$"$l$PD>$9$N(J -$@$O$9$0$J$N$G$9$,!"5^$$$@$N$G$=$N$^$^$K$J$C$F$$$^$9!#%P!<%8%g%s%"%C%W$r(J -$@4|BT$7$F$$$F2<$5$$!#(J +カーソルがルートウィンドウの上と猫の上にある時にはネズミに変わりますが、 +ネズミの色は単に猫の色を反転したものになっています。時間があれば直すの +はすぐなのですが、急いだのでそのままになっています。バージョンアップを +期待していて下さい。 -$@B.EY$rAa$/$7$?$$(J ...... $@$1$I!"$3$l0J>e$OL5M}$+$J!)(J $@$I$J$?$+!V$3$&$7$?(J -$@$i$b$C$HB.$/$J$k!W$H$$$&J}K!$r65$($F2<$5$$!#!J6aF#!w$U8&(J $@$5$s$NDs0F$7(J -$@$F2<$5$C$?(J Map/Unmap $@$r;H$C$?J}K!$O$^$@;n$7$F$^$;$s!#2K$,$J$/$C$F!#!K(J +速度を早くしたい ...... けど、これ以上は無理かな? どなたか「こうした +らもっと速くなる」という方法を教えて下さい。(近藤@ふ研 さんの提案し +て下さった Map/Unmap を使った方法はまだ試してません。暇がなくって。) -$@;E;v$7$F$$$k;~!"G-$rF0$+$7$F$$$k$H;~!9G-$K%-!<F~NO$r<YKb$5$l$k$3$H$,$"(J -$@$j$^$9!#%-!<F~NO$rL5;k$7$F2<$N%&%$%s%I%&$KEO$9$3$H$,=PMh$k$N$G$7$g$&$+!)(J -$@!J$=$&$$$C$F$$$k3d$K$O:#$N%P!<%8%g%s$NG-$O%-!<%$%Y%s%H$r(J Select input -$@$7$F$$$^$9!#!K(J +仕事している時、猫を動かしていると時々猫にキー入力を邪魔されることがあ +ります。キー入力を無視して下のウインドウに渡すことが出来るのでしょうか? +(そういっている割には今のバージョンの猫はキーイベントを Select input +しています。) -$@!t(J $@4pK\E*$K#P#D#S$G$9$,!"%P%0=$@5$d5!G=3HD%$O!J$3$C$=$j$G$b$$$$$G$9$+(J -$@!t(J $@$i!K;d!J(Jkato@ntts.co.jp$@!K$K65$($F2<$5$$$M!#%P!<%8%g%s%"%C%W$b$9$k$D(J -$@!t(J $@$b$j$G$9!#(J +# 基本的にPDSですが、バグ修正や機能拡張は(こっそりでもいいですか +# ら)私(kato@ntts.co.jp)に教えて下さいね。バージョンアップもするつ +# もりです。 |