XIP Messenger V0.8088

/*
 * Copyright (c) 1995, 1996, 1997, 2004
 *	Toshihiro Kanda.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY TOSHIHIRO KANDA AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL TOSHIHIRO KANDA OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 */

Original IP Messenger for Windows:
  Copyright (C) 1996 by H.Shirouzu <shirouzu at ntt-it.co.jp>

BSD Daemon Copyright 1988 by Marshall Kirk McKusick. All Rights Reserved.

AD2C - convert resource files to C decls
  by George Ferguson, ferguson at cs.rochester.edu

-------- ENGLISH -------------------------------------------------------

WHAT IS XIP Messenger?
    Xipmsg is an UDP based simple communication tool for X.  It can
    communicate directly with IP Messenger for Windows and Macintosh.

OS VERSION
    Xipmsg runs on:
	DEC DigitalUNIX3.2A
	EWS4800 Release9.1
	FreeBSD 2.X
	IRIX (?)
	Linux 2.0.29,30
	NetBSD 1.2
	SunOS 4.1.X
    with X11R6 or later (maybe with X11R5).

INSTALL
    (1) Edit Imakefile.
	- Enabe/Disable OS dependent variables (CC, EXTRA_DEFINES, ..)

    (2) In the source directory, run
	# xmkmf -a
	# make
	# make install

    (3) Run xipmsg.

E-MAIL
    <candy at kgc.co.jp>

SPECIAL SPASEBO TO
    NAOKI KATSURAGAWA
	for his great helps and advices.

SPASEBO TO
    (in alphabetical order)
    <etakahas at etl.go.jp>
    <issuizu at tokuyama.ac.jp> (valid till 1998.03.31)
    <masakazu-yanagisawa at isuzu.co.jp>
    <miyake at comp.toyama-u.ac.jp>
    <sakane at d4.bsd.nes.nec.co.jp>
    <senda at d1.bsd.nes.nec.co.jp>
    <shirouzu at ntt-it.co.jp>

-------- JAPANESE ------------------------- 日本語 ------------

WHAT IS XIP Messenger?
    xipmsg は X 用の UDP ベースの簡単なコミュニケーションツールで、
    Windows や Apple Macintosh 用の IP Messenger とメッセージのやりと
    りができます。

OS VERSION
    xipmsg は以下の OS と X11R6 (もしかすると X11R5 でも可) 環境で
    動作します。
	DEC DigitalUNIX3.2A
	EWS4800 Release9.1
	FreeBSD 2.X
	IRIX (?)
	Linux 2.0.29,30
	NetBSD 1.2
	SunOS 4.1.X

INSTALL
    (1) Imakefile を編集します。
	- OS 依存の定義部を修正して下さい。(CC, EXTRA_DEFINES 等)
	- 好みの XAWLIB を選んで下さい。

    (2) ソースディレクトリで、次のコマンドを実行します。
	# xmkmf -a
	# make
	# make install

    (3) xipmsg を起動します。

Q AND A

    Q.	[send]または[送信]ボタンを押すと、xipmsg がフリーズするのですが。
    A.	原因調査中です。とりあえず -bogus_fix オプションで回避して下さい。

    Q.	起動すると 
	Warning: locale not supported by C library, locale unchanged
	Warning: we can not open any input method
	というメッセージが出ます。日本語も表示されません。
    A.  Imakefile を編集して LDLIBS+=-lxpg4 の行を有効にして、再コンパ
	イルして下さい。

    Q.	日本語が表示されません。
    A1.	環境変数 LANG は ja_JP.eucJP に設定して下さい。
    A2. 環境変数 LC_CTYPE が設定されているならば、それを unset してく
	ださい。
    A3.	% xlsfonts | egrep -e '14-.*-jisx'
	を実行して、
	-misc-fixed-medium-r-normal--14-130-75-75-c-140-jisx0208.1983-0
	-misc-fixed-medium-r-normal--14-130-75-75-c-70-jisx0201.1976-0
	が出ないならば、対応するフォントをインストールして下さい。

    Q.	日本語を入力できません。
    A1.	kinput2 は起動していますか?
    A2.	$HOME/.Xdefaults または $HOME/.Xresources に
	Kinput2*ConversionStartKeys: \
		Ctrl<Key>o
	を追加してみてください。

    Q.	封書付きのメッセージを受け取ると化けます。
    A.	[open][開封]ボタンを押すと、読む事ができます。

E-MAIL
    <candy at kgc.co.jp>
    バグレポートは、
	xipmsg のバージョン(*.tar.gz のファイル名)
	OS のバージョン (uname -a  の出力)
	X11 のバージョン (R5, R6, R6.1, R6.3 等)
	X サーババージョン (XFree86-3.2 等)
	詳しい症状(コンパイルのログ、起動時のログ、何をどうするとどう
	なったか等)
   を明記してください。
   メーリングリストもあります。
   http://www.ipmsg.org/
   からたどって下さい。

SPECIAL SPASEBO
	Xipmsg の直接の前身である XBroadcast の製作に多大なる御協力と
	御助言を下さった桂川直己氏に、このプログラムを捧げます。

SPASEBO TO
    (in alphabetical order)
    高橋栄一 <etakahas at etl.go.jp>
    水津正道 <issuizu at tokuyama.ac.jp> (valid till 1998.03.31)
    柳沢正和 <masakazu-yanagisawa at isuzu.co.jp>
    三宅一永 <miyake at comp.toyama-u.ac.jp>
    坂根吉信 <sakane at d4.bsd.nes.nec.co.jp>
    仙田智也 <senda at d1.bsd.nes.nec.co.jp>
    白水啓章 <shirouzu at ntt-it.co.jp>

------------------------------------------------------------------------
日本語マニュアル

NAME
	xipmsg - XIP Messenger

SYNOPSIS
	xipmsg [-broadcast broadcast-address[,broadcast-address,...]]
	[-bogus_fix] [-debug n] [-disable] [-name entity-name]
	[-port portnumber] [-toolkitoption ...]

OPTIONS
	xipmsg は X Toolkit の標準オプションを受理します。

	-broadcast broadcast-address[,broadcast-address,...]
		ブロードキャストアドレスをカンマ ``,'' で区切って指定します。
		デフォルトは 255.255.255.255。
		xipmsg は起動時にこのアドレスにブロードキャストパケットを
		流します。

	-bogus_fix
		送信するとフリーズする場合、このオプションを指定して下
		さい。バグを回避します。
		ただしこのオプションを指定すると、送受信でどんどんメモ
		リを喰うので、たまに xipmsg を再起動してください。

	-debug n
		デバッグオプション。

	-disable
		名前を不可視にします。

	-name entity-name
		名前を指定します。指定が無い場合は $USER の値になります。

	-port portnumber
		使用する UDP ポートを指定します。デフォルトは 2425。

USAGE
	メッセージ送信
		ゾーン名をクリックし、名前をクリックします。
		メッセージを入力し、[send] ボタンを押します。
	返信
		受信ウィンドウの [answer] ボタンを押します。

	終了
		[quit] ボタンを押します。

REFERENCE
    (丸括弧の中はショートカットキーを表します)

    メインウィンドウ
	[quit]	xbro を終了します。(Meta-q)

	[update]	
		リストを更新します。(Meta-z)

	[send]	送信相手が選択されていれば、送信ウィンドウをポップアッ
		プします。(Return, KP_Enter)

	[#]
		名前を不可視にします。(Meta-d)

	名前リスト
		クリックすると、送信相手を選択します。頭文字でも選択で
		きます。(Home, End, PageUp, PageDown, Up, Down, C-p,
		C-n, C-v, M-v)

    送信ウィンドウ
	テキストエリアには、メッセージを入力します。

	アイコンボタンで、送信するアイコンを選択できます。

	[clear]	メッセージを消去します。(Meta-x)

	[cancel]
		送信ウィンドウを消去します。(Meta-w)

	[send]	メッセージを送信します。(Meta-Return, Enter)

    受信ウィンドウ
	[answer]
		送信ウィンドウをポップアップします。(Return, Enter)

	[done]	受信ウィンドウを消去します。(Meta-w)
	[select]
		受信メッセージをセレクトします。(Meta-c)

    どのウィンドウでも Ctrl-z でアイコン化できます。

FILES
	xbro*.xbm - アイコンの bitmap ファイル

ENVIRONMENT VARIABLES
	USER - 名前
	LANG - ja_JP.eucJP など。

BUGS

AUTHORS
    Original IP Messenger for Windows:
	Copyright (C) 1996, 1997 by H.Shirouzu <shirouzu at ntt-it.co.jp>
    X version
	Copyright (C) 1996, 1997, 2004 by Toshihiro Kanda

------------------------------------------------------------------------
おまけ -- udpmsg

コマンドラインから IP Messenger にメッセージを送信するプログラムです。
時報や、メール到着の通知に使ったりしてます。

インストール:
cd udpmsg && make


NAME
	udpmsg -- コマンドライン版 IP Messenger メッセージ送信

SYNOPSIS
	udpmsg {-f file | -m message} [-p port] [-u user] address address...

DESCRIPTION
	udpmsg はコマンドラインから address で指定されたアドレスの
	IP Messenger にメッセージを送信します。
	メッセージは標準入力から読みます。

OPTIONS
	-f file
		メッセージを標準入力からではなく、file から読みます。
	-m message
		message をメッセージとして送信します。
	-p port
		ポート番号を指定します。
	-u user
		送信元のユーザ名を指定します。

EXAMPLES
	3 分計
	$ sleep 180; udpmsg -m 'time has come.' localhost

	biff がわり
	$ sed -n '/^From: /{s///;p;q;}' ~/Mail/inbox/1 |
	  nkf -m -e | udpmsg -u biff localhost

------------------------------------------------------------------------
TODO:
	- グループのサポート
	- 各種コマンドのサポート
	- パケット届かなかったエラーで、再送選択可能にする。
	- 送信ウィンドウのテキスト入力のところを、まともにする。
	- 水津＠徳山高専専攻科氏の FreeBSD 用 ports をマージ(?)する。
	- 封書機能付ける。

Changes:
xipmsg V0.8088
	- fontSet の指定形式が古いのを fix。
	- ホスト名バッファ 14 -> 256 bytes。
	- 封書付きのメッセージで特定の文字が化けるのを fix。
	  <URL:http://www.fan.gr.jp/~azure/diary/dia199908.html#19990819>
	- send をクリック後、ユーザリストに増減があると宛先を間違えるのを fix。
	- vsprintf(3) を使わないようにした。
	- ライセンスから広告条項削除。
	- udpmsg つけた。

xipmsg V0.8087 (1997.05.08)
	- SunOS 4.1.X サポート bug fix

xipmsg V0.8086 (正式リリースぴょ)
	- SunOS 4.1.X マージ。
	- Digital UNIX 追加。
	- 同じ名前で違うポートの時、古いエントリを消す。
	- -bogus_fix オプションで、フリーズ回避するように。
	- 標準で日本語リソースインストールする。
	- README 整備

xipmsg V0.8086-alpha7
	- [update] でリストクリアされないバグ fix
	- アイコンアニメやめた。
	- アイコン化した時、ちっこくなるのを直す。
	- 名前リストの横スクロールバー無くす。

xipmsg V0.8086-alpha6
	- 水津＠徳山高専専攻科氏のパッチをマージする。これにより、
	  xbm ファイルはカレントディレクトリから読まれなくなりました。
		- resource の app-default ファイル化
		- xbro??.xbm ファイルの X11 ディレクトリへのインストール
		- リソースの日本語

xipmsg V0.8086-alpha5
	- 送信 256 バイトまでの制限を無くす。
	- 受信 512 バイト以上でもだいじょぶ〜
	- セレクトをコンパウンド化し、
	  他のクライアントにちゃんと日本語ペーストできる。

xipmsg V0.8086-alpha4
	- 坂根吉信氏 <sakane@d4.bsd.nes.nec.co.jp> および
	  仙田智也氏 <senda@d1.bsd.nes.nec.co.jp> の
	  EWM4800 用のパッチをマージする。
	  (引用機能も含む)
	- SOCKS5 対応にする。
	- IP Messenger 標準アイコン添付

xipmsg V0.8086-alpha3
	- debug 表示無くした。
	- パケット届かなかった時エラーウィンドウ出す。
	- 名前リスト変更あった時、カレントを保存する。
	- 封書チェック付きメッセージの受信に対応。

xipmsg V0.8086-alpha2
	- 同一パケットをフィルタリングする。
	- パケット再送する。
	- 文を折り返す。

xipmsg V0.8086-alpha
	- とてもとてもアルファバージョン
	- メッセージの送受信ができる。
	- ほとんどのコマンド/オプションは未サポート
	- とりあえず動く。
	- xipmsg 同士ではアイコンが表示される。

意見等は <candy at kgc.co.jp> まで。

