$Id: protocol.doc,v 1.1 1991/09/27 10:14:10 ishisone Rel $

** kinput2 $B%W%m%H%3%k(J **


*$B$O$8$a$K(J

  kinput2 $B%W%m%H%3%k$O%*%j%8%J%k$N(J kinput $B$,;HMQ$7$F$$$?%W%m%H%3%k(J (kinput 
$B%W%m%H%3%k$H8F$V(J) $B$KBP$7$F>e0L8_49@-$r;}$D!#(J

  kinput $B%W%m%H%3%k$G$OJQ493+;O$N%j%/%(%9%H;~$K%*%W%7%g%s$H$7$F%W%m%Q%F%#(J
$BL>$r;XDj$G$-$k$h$&$K$J$C$F$$$?!#$3$l$O>-Mh$N3HD%$N$?$a$KMQ0U$5$l$?$b$N$G$"(J
$B$j!"%W%m%H%3%k%9%Z%C%/$G$O$3$3$K(J None $B$r;XDj$9$k$h$&$K=q$+$l$F$$$?$,!">-Mh(J
$B$O$3$3$K$"$k%G!<%?$,F~$C$?%W%m%Q%F%#L>$r;XDj$7!"%/%i%$%"%s%H$+$iJQ49%5!<%P(J
$B$KBP$7$FJQ49$NB0@-$J$I$r;XDj$9$k$3$H$rA@$C$?$b$N$G$"$C$?!#(J

  kinput2 $B%W%m%H%3%k$G$O$3$N3HD%%G!<%?$N7A<0$rDj5A$7!"$+$D(J kinput $B%W%m%H%3(J
$B%k$r<BAu$7$?$b$N$H6hJL$,$D$/$h$&!"%W%m%H%3%k%P!<%8%g%s$rDI2C$7$?!#(J

  $B3HD%%G!<%?$K;XDj$9$kJQ49B0@-$O!"$3$3$KDj5A$7$?%9%?%s%@!<%I$J$b$N$K2C$($F!"(J
$B%W%i%$%Y!<%H$J3HD%$,2DG=$J$h$&$K@_7W$5$l$F$$$k!#(J

  $B$5$i$KJQ49ESCf$G$bB0@-$NJQ99$rEA$($i$l$k$h$&$K%W%m%H%3%k$N3HD%$r9T$J$C$?!#(J


* $B35MW(J

  $B$^$:!"4JC1$K%W%m%H%3%k$NFbMF$r@bL@$7$F$*$/$3$H$K$9$k!#(J

  $BJQ49%5!<%P$ON)$A>e$,$k$H!"JQ49%5!<%P$HF1$8%G%#%9%W%l%$$r6&M-$9$kB>$N%/%i(J
$B%$%"%s%H$KBP$7$F!"JQ49%5!<%S%9$rDs6!$9$k$3$H$r@k8@$9$k!#$3$l$K$O%;%l%/%7%g(J
$B%s$N%a%+%K%:%`$r;HMQ$9$k!#$D$^$j!"JQ49%5!<%P$OF~NO8@8lKh$K7h$a$i$l$?$"$k%;(J
$B%l%/%7%g%s$N%*!<%J!<$H$J$k!#0l$D$N%G%#%9%W%l%$$GF1$8%;%l%/%7%g%sL>$KBP$7$F(J
$BJ#?t$N%*!<%J!<$OB8:_$G$-$J$$$?$a!"JQ49%5!<%P$O3F8@8l$K$D$$$F0l$D$:$D$7$+B8(J
$B:_$G$-$J$$!#(J

  $BJQ49%5!<%P$O%;%l%/%7%g%s$N%*!<%J!<$H$J$k$HF1;~$K!"%5%]!<%H$9$kF~NO%9%?%$(J
$B%k$J$I$N>pJs$r%*!<%J!<%&%#%s%I%&$N%W%m%Q%F%#$K3JG<$9$k!#(J

  $B$"$k8@8l$NJQ49%5!<%S%9$r<u$1$?$$%/%i%$%"%s%H$O!"$^$:$=$N8@8l$KBP1~$9$k%;(J
$B%l%/%7%g%s$N%*!<%J!<$rC5$9!#$b$7%*!<%J!<$,8+$D$+$l$P!"$^$:%W%m%Q%F%#$r%A%'%C(J
$B%/$7!"<+J,$N%j%/%(%9%H$7$h$&$H$7$F$$$kF~NO%9%?%$%k$J$I$rJQ49%5!<%P$,%5%]!<(J
$B%H$7$F$$$k$+$r%A%'%C%/$9$k$3$H$,$G$-$k!#$=$N8e!"%*!<%J!<$KBP$7$FJQ49F~NO$r(J
$B%j%/%(%9%H$9$k!#$3$l$O%*!<%J!<$N%&%#%s%I%&$KBP$7$F(J ClientMessage $B%$%Y%s%H(J
$B$rAw$k$3$H$G9T$J$o$l$k!#(J

  $B$3$N%j%/%(%9%H%$%Y%s%H$K$O!"%/%i%$%"%s%H$N4uK>$9$kF~NO%9%?%$%k$d!";HMQ$9(J
$B$k%U%)%s%H$J$I$5$^$6$^$JB0@-$,=q$+$l$?%W%m%Q%F%#L>$,4^$^$l$F$$$k!#JQ49%5!<(J
$B%P$O!"$3$N%$%Y%s%H$r<u$1$H$k$HF1;~$K$=$N%W%m%Q%F%#$NFbMF$rD4$Y$FJQ49$NB0@-(J
$B$r@_Dj$9$k!#JQ49B0@-$K$O<!$N$h$&$J$b$N$,$"$k!#(J

	* $BJQ49%F%-%9%H$NI=<(3+;O0LCV(J
	* $BI=<(%U%)%s%H(J
	* $BI=<(?'(J

  $B$=$N8eJQ49$r%9%?!<%H$5$;!"F1;~$K%/%i%$%"%s%H$KBP$7$FJQ49%5!<%S%9$r;O$a$?(J
$B$3$H$r(J ClientMessage $B%$%Y%s%H$GDLCN$9$k!#(J

  $BJQ49$O$9$Y$FJQ49%5!<%PB&$G9T$J$o$l!"%/%i%$%"%s%H$OJQ497k2L$,JV$C$F$/$k$N(J
$B$rBT$D$@$1$G$"$k!#$?$@$7JQ49Cf$K%U%)%s%H$,JQ$o$C$?$j$7$FJQ49$NB0@-$,JQ2=$7(J
$B$?>l9g$K$O(J ClientMessage $B%$%Y%s%H$rMxMQ$7$F$=$l$rJQ49%5!<%P$KEA$($k$3$H$,(J
$B$G$-$k!#(J

  $B0l$DLdBj$H$J$k$N$OJQ49%5!<%P$NF~NO%$%Y%s%H$N<hF@J}K!$G$"$k!#JQ49Cf$O%/%i(J
$B%$%"%s%H$K$$$/F~NO%$%Y%s%H$rJQ49%5!<%P$,2#<h$j$7$J$/$F$O$J$i$J$$!#$3$l$K$O(J 
3 $B<oN`$NJ}K!$,$"$j!"%/%i%$%"%s%H$OJQ49B0@-$H$7$F$I$l$r;HMQ$9$k$+;XDj$9$k$3(J
$B$H$,$G$-$k!#(J

  $B0l$D$O!"(Jkinput $B%W%m%H%3%k$G:NMQ$5$l$F$$$?!"JQ49%5!<%P$,%/%i%$%"%s%H$N%&%#(J
$B%s%I%&$N>e$K(J InputOnly $B%&%#%s%I%&$r:n$j!"$=$N%&%#%s%I%&$GF~NO%$%Y%s%H$r(J
$B!VEp$`!WJ}K!$G$"$k!#%/%i%$%"%s%H$K$H$C$F$O$3$l$,0lHV=hM}$,3Z(J ($B<+J,$G$O2?$b(J
$B$7$J$/$F$b$h$$(J) $B$,!"%U%)!<%+%9$N4X78$G!"JQ49%5!<%P$K%-!<%$%Y%s%H$,Mh$J$$$3(J
$B$H$,$"$k!#(J

  $B<!$OJQ49%5!<%P$,%/%i%$%"%s%H$N%&%#%s%I%&(J ($B@53N$K$O%U%)!<%+%9%&%#%s%I%&(J) 
$B$GF~NO%$%Y%s%H$r%;%l%/%H$9$k$H$$$&J}K!$G$"$k!#$3$N>l9g%$%Y%s%H$OJQ49%5!<%P(J
$B$H%/%i%$%"%s%H$NN>J}$KAw$i$l$k$N$G!"$3$NJ}<0$rA*Br$7$?%/%i%$%"%s%H$O!"JQ49(J
$BCf$OF~NO$5$l$?%$%Y%s%H$rL5;k$7$J$/$F$O$J$i$J$$!#(J

  3$BHVL\$O2?$b$7$J$$!"$H$$$&J}K!$G!"$D$^$j$3$l$OJQ49Cf$O%/%i%$%"%s%H$O%U%)!<(J
$B%+%9%&%#%s%I%&$KMh$?%-!<%$%Y%s%H$r$9$Y$FJQ49%5!<%P$K(J SendEvent $B$GAw$k!"$H(J
$B$$$&$3$H$G$"$k!#(J

  $BJQ49%5!<%P$OJQ49$5$l$?J8;zNs$rE,59%/%i%$%"%s%H$KAw$k$3$H$,$G$-$k!#$3$l$O(J
$B%/%i%$%"%s%H$N%&%#%s%I%&$N%W%m%Q%F%#$KJ8;zNs$r=q$-9~$`$3$H$G<B8=$9$k!#(J

  $BJQ49$,=*N;$9$k$H!"JQ49%5!<%P$O%/%i%$%"%s%H$K(J ClientMessage $B$rAw$j!"CN$i(J
$B$;$k!#%/%i%$%"%s%H$+$i$bJQ49%5!<%P$KBP$7$F(J ClientMessage $B%$%Y%s%H$rAw$C$F(J
$BJQ49$N=*N;$r%j%/%(%9%H$9$k$3$H$,$G$-$k!#$3$N>l9g$bJQ49%5!<%P$OJQ49$,=*N;$7(J
$B$?$3$H$r%/%i%$%"%s%H$KCN$i$;$k!#(J


* $B%W%m%H%3%k>\@b(J

  $B35MW$K0zB3$-$3$3$G$O(J kinput2 $B%W%m%H%3%k$K$D$$$F(J kinput $B%W%m%H%3%k$HHf$Y(J
$B$J$,$i2r@b$7$F$$$/!#(J

* $BJQ49%5!<%P%9%?!<%H%"%C%W(J

** $B%;%l%/%7%g%s(J

  $BJQ49%5!<%P$O!"%/%i%$%"%s%H$KBP$7$FJQ49%5!<%S%9$rDs6!$9$k$3$H$r<($9$?$a$K(J
$B%;%l%/%7%g%s%*!<%J!<$H$J$k!#$3$l$O(J kinput $B%W%m%H%3%k$HA4$/F1$8$@$,!"%;%l%/(J
$B%7%g%s%"%H%`$H$7$F$O(J "<language>_CONVERSION" $B$G$O$J$/!"@5<0$KEPO?$5$l$?%;(J
$B%l%/%7%g%sL>$G$"$k(J "_<language>_CONVERSION" ($BF|K\8l$G$"$l$P(J
"_JAPANESE_CONVERSION") $B$r;HMQ$9$k$3$H$K$9$k!#$?$@$7%P%C%/%o!<%I%3%s%Q%A%S(J
$B%j%F%#$N$?$a!"%*%j%8%J%k(J kinput $B$,;HMQ$7$F$$$?%;%l%/%7%g%sL>$r;H$&$3$H$bG'(J
$B$a$i$l$k!#(J

  $BJQ49%5!<%P$O(J SetSelectionOwner $B$rMxMQ$7$F%;%l%/%7%g%s%*!<%J!<$K$J$k!#(J

    SetSelectionOwner
	selection:  "_<language>_CONVERSION"
	owner:  $BJQ49%5!<%P$N%&%#%s%I%&(JID
	time:  timestamp $B$^$?$O(J CurrentTime

$B%/%i%$%"%s%H$O(J GetSelectionOwner $B$K$h$j!"JQ49%5!<%P$NB8:_$H%&%#%s%I%&(JID $B$r(J
$BCN$k$3$H$,$G$-$k!#(J

    GetSelectionOwner
	selection:  "_<language>_CONVERSION"
    =>
	owner:  $BJQ49%5!<%P$N%&%#%s%I%&(JID


*** SelectionClear $B%$%Y%s%H$N07$$$K$D$$$F(J

  $B$b$7JQ49%5!<%P$,%;%l%/%7%g%s%*!<%J!<$K$J$C$?8e(J SelectionClear $B%$%Y%s%H$r(J
$B<u$1$H$C$?;~$K$O!"8=:_JQ49Cf$N%/%i%$%"%s%H$,$"$l$P$=$l$i$9$Y$F$KBP$7$FJQ49(J
$B=*N;$N=hM}!"$D$^$j!"$b$7$^$@%/%i%$%"%s%H$KAw$C$F$$$J$$JQ49%F%-%9%H$,$"$l$P(J
$BAw$j!"$=$N8eJQ49=*N;$N(J ClientMessage $B%$%Y%s%H$rAw=P$9$k!"$H$$$&=hM}$r9T$J(J
$B$$!"$=$N8e$9$_$d$+$K(J exit $B$9$k!#(J

** $BJQ49%W%m%U%!%$%k(J

  $B$3$l$@$1$G$O%/%i%$%"%s%H$OJQ49%5!<%P$,(J kinput $B$N%W%m%H%3%k$r%$%s%W%j%a%s(J
$B%H$7$?$b$N$J$N$+!"$=$l$H$b(J kinput2 $B%W%m%H%3%k$r%$%s%W%j%a%s%H$7$?$b$N$J$N(J
$B$+$,$o$+$i$J$$!#$^$?!"JQ49%5!<%P$,$I$N$h$&$JF~NO%9%?%$%k$r%5%]!<%H$7$F$$$k(J
$B$+$b$o$+$i$J$$!#(J

  $B$=$3$G%;%l%/%7%g%s$N%*!<%J!<%&%#%s%I%&$K$=$l$i$N>pJs$,=q$+$l$?%W%m%Q%F%#(J
$B$rCV$/$3$H$K$9$k!#(J

    ChangeProperty
	window:  $B%;%l%/%7%g%s$N%*!<%J!<%&%#%s%I%&(J
	property:  Atom "_CONVERSION_PROFILE"
	type:  Atom "_CONVERSION_ATTRIBUTE_TYPE"
	format:  32
	mode:  Replace
	data:  $B8e=R(J

  $B$3$l$rJQ49%W%m%U%!%$%k$H8F$V$3$H$K$9$k!#JQ49%W%m%U%!%$%k$,B8:_$9$k$+$I$&(J
$B$+$G!"%/%i%$%"%s%H$OJQ49%5!<%P$,(J kinput2 $B%W%m%H%3%k$r%5%]!<%H$7$F$$$k$N$+!"(J
$B$=$l$H$b(J kinput $B$N%W%m%H%3%k$7$+%5%]!<%H$7$F$$$J$$$N$+$rCN$k$3$H$,$G$-$k!#(J

  $B%/%i%$%"%s%H$O(J GetProperty $B$r;HMQ$7$F$3$N%G!<%?$rFI$_=P$9$3$H$,$G$-$k!#(J

    GetProperty
	window:  $B%;%l%/%7%g%s$N%*!<%J!<%&%#%s%I%&(J
	property:  Atom "_CONVERSION_PROFILE"
	type:  Atom "_CONVERSION_ATTRIBUTE_TYPE"
	format:  32
	delete:  False

$BJQ49%W%m%U%!%$%k$N%U%)!<%^%C%H$,(J 32 $B$G$"$k$3$H$+$i$b$o$+$k$h$&$K!"$3$N%W%m(J
$B%Q%F%#$NFbMF$O(J 32bit $BCM$NG[Ns$G$"$k!#JQ49%W%m%U%!%$%k$K4^$^$l$k3F!9$N>pJs(J
$B$O!">pJs$N<oN`$H%G!<%?D9$rI=$9(J1$B%o!<%I$N%X%C%@$H$=$l$KB3$/%G!<%?(J ($B%G!<%?$O(J
$B$J$/$F$b$h$$(J) $B$+$i9=@.$5$l$k!#%X%C%@$N>e0L(J 16bit $B$,$=$N>pJs$N<oN`$rI=$7!"(J
$B2<0L(J 16 bit $B$OB3$/%G!<%?$N%o!<%I?t(J (32bit $BC10L(J) $B$rI=$9!#(J

	+----------------+----------------+
	|  Code (16bit)  | Length (16bit) |
	+----------------+----------------+
	|              Data1              |
	+---------------------------------+
	|              .....              |
	+---------------------------------+
	|              DataN              |
	+---------------------------------+

$BDj5A$5$l$F$$$k>pJs$O<!$N(J4$B$D$G$"$k!#(J

  + Protocol Version (code = 1, length = 1)
	$BJQ49%5!<%P$,;HMQ$7$F$$$k%W%m%H%3%k$N%P!<%8%g%sL>$r<($9!#%G!<%?$K$O(J
	$B%W%m%H%3%k$N%P!<%8%g%sL>$=$N$b$N$G$O$J$/!"$=$l$r%"%H%`2=$7$?CM$,F~(J
	$B$k!#$3$N%I%-%e%a%s%H$O(J "PROTOCOL-2.0" $B$H$$$&%P!<%8%g%s$K$D$$$F5-=R(J
	$B$7$F$$$k!#(J

  + Supported Styles (code = 2, length = 1)
	$BJQ49%5!<%P$,%5%]!<%H$7$F$$$kF~NO%9%?%$%k$r<($9!#Dj5A$5$l$F$$$kF~NO(J
	$B%9%?%$%k$O<!$NDL$j$G$"$k!#(J
		root window style:	1
		off-the-spot style:	2
		over-the-spot style:	4
	$B%G!<%?$K$OJQ49%5!<%P$,%5%]!<%H$9$k%9%?%$%k$N(J bitwise-or $BCM$,F~$k!#(J
	
  + Supported Extensions (code = 3, length = N)
	$BJQ49%5!<%P$,%5%]!<%H$7$F$$$k3HD%$r<($9!#%G!<%?$K$O%5%]!<%H$7$F$$$k(J
	$B3HD%L>$r%"%H%`2=$7$?CM$,F~$k!#J#?t$N3HD%$rF~$l$k$3$H$,$G$-$k!#(J

  + Extension Data (code = 4, length = N)
	$B3HD%FCM-$N%W%m%U%!%$%k%G!<%?$r<($9!#=>$C$F$3$3$G%G!<%?$NFbMF$K$D$$(J
	$B$F5-=R$9$k$3$H$O$G$-$J$$$,!"$?$@0l$D7h$^$C$F$$$k$3$H$O%G!<%?$N@hF,(J
	$B$O$=$N3HD%L>$r%"%H%`2=$7$?CM$G$J$1$l$P$J$i$J$$$H$$$&$3$H$@$1$G$"$k!#(J
	$B;D$j$N%G!<%?$NFbMF$O40A4$K3F3HD%$N<+M3$G$"$j!"$3$3$G$O5,Dj$7$J$$!#(J

  $B%/%i%$%"%s%HB&$NL5MQ$N:.Mp$rKI$0$?$a!"(JProtocol Version $B$H(J Supported
Styles$B$N9`L\$OI,$:$J$1$l$P$J$i$J$$!#$^$?!"(JExtension Data $B0J30$O%W%m%U%!%$(J
$B%k%G!<%?$NCf$KF1$8%3!<%I$N%G!<%?$,J#?t$"$C$F$O$J$i$J$$!#(J


* $BJQ49$N%j%/%(%9%H(J

  $BJQ49$N%j%/%(%9%H$NJ}K!$O%*%j%8%J%k$N%W%m%H%3%k$HF1$8$G$"$k!#$D$^$j!"%/%i(J
$B%$%"%s%H$O$^$:(J XGetSelectionOwner() $B$r;HMQ$7$FJQ49%5!<%P$rC5$9!#8+$D$+$l$P(J
$B%*!<%J!<%&%#%s%I%&$KBP$7$FJQ493+;O$r%j%/%(%9%H$9$k%$%Y%s%H$rAw$k!#(J

    SendEvent
	destination:  $B%;%l%/%7%g%s%*!<%J!<%&%#%s%I%&(J
	propergate:  False
	event-mask:  NoEventMask
	event:  ClientMessage
		window: $B%;%l%/%7%g%s%*!<%J!<(J
		type: Atom "CONVERSION_REQUEST"
		format: 32
		data:
			l[0]: $B%;%l%/%7%g%s%"%H%`(J
			l[1]: $B%/%i%$%"%s%H%&%#%s%I%&(JID
			l[2]: $BJQ49%F%-%9%H$N%(%s%3!<%G%#%s%0%"%H%`(J
			l[3]: $BJQ49%F%-%9%HMQ%W%m%Q%F%#(J or None
			l[4]: $B%W%m%Q%F%#L>$+(J None

  data.l[0] $B$O%;%l%/%7%g%s%"%H%`$rF~$l$k!#(Jdata.l[1] $B$O%/%i%$%"%s%H%&%#%s%I(J
$B%&(JID $B$G$"$k!#%/%i%$%"%s%H%&%#%s%I%&$OJQ49%5!<%P$,3FJQ49%;%C%7%g%s$r6hJL$9(J
$B$k$N$K;H$o$l$k!#$3$l$OF10l$N%/%i%$%"%s%H%&%#%s%I%&$GJ#?t$NJQ49$rF1;~$K9T$J(J
$B$&$3$H$,$G$-$J$$$3$H$r0UL#$9$k!#(J

  data.l[2] $B$K$O!"JQ497k2LJ8;zNs$N%(%s%3!<%G%#%s%0$H$7$F%/%i%$%"%s%H$N4uK>(J
$B$9$k%(%s%3!<%G%#%s%0$N%"%H%`$rF~$l$k!#Nc$($P(J COMPOUND_TEXT $B$G$"$k!#JQ49J8(J
$B;zNs$O%W%m%Q%F%#$G%/%i%$%"%s%H$KAw$i$l$k$N$G!"$3$N%(%s%3!<%G%#%s%0$H$$$&$N(J
$B$O<B$O$=$N%W%m%Q%F%#$N%?%$%W$G$"$k!#$?$@$7$3$l$O$"$/$^$G$bJQ49%5!<%P$KBP$9(J
$B$k%R%s%H$G$"$C$F!"JQ49%5!<%P$O$3$l$H0[$J$k%(%s%3!<%G%#%s%0$r;HMQ$9$k$+$b$7(J
$B$l$J$$!#$?$@$7!"JQ49%5!<%P$O(J COMPOUND_TEXT $B%(%s%3!<%G%#%s%0$@$1$O%5%]!<%H(J
$B$7$J$/$F$O$J$i$J$$!#$D$^$j!"$b$7%/%i%$%"%s%H$,(J COMPOUND_TEXT $B%(%s%3!<%G%#(J
$B%s%0$r4uK>$7$?>l9g$K$O!"$=$N%(%s%3!<%G%#%s%0$GJ8;zNs$,JV$5$l$k$3$H$,J]>Z$5(J
$B$l$k!#(J

  data.l[3] $B$K$OJQ497k2LJ8;zNs$rF~$l$k%W%m%Q%F%#L>$r;XDj$9$k!#JQ497k2L$O(J
data.l[1] $B$G;XDj$7$?%&%#%s%I%&$N!"(Jdata.l[3] $B$G;XDj$5$l$k%W%m%Q%F%#$KAw$i$l(J
$B$k!#$b$7%W%m%Q%F%#L>$H$7$F(J None $B$r;XDj$7$?>l9g!"%W%m%Q%F%#L>$OJQ49%5!<%P$K(J
$B$h$C$F7hDj$5$l$k!#(J

  kinput $B%W%m%H%3%k$H0[$J$kE@$O(J data.l[4] $B$G$"$k!#%*%j%8%J%k$G$O$3$3$K$O(J 
None $B$r;XDj$9$k$3$H$K$J$C$F$$$?!#JQ49%5!<%P$O!"$b$7$3$3$,(J None $B$G$"$l$P%/(J
$B%i%$%"%s%H$,(J kinput $B%W%m%H%3%k$r;HMQ$9$k$b$N$H$7$F07$&!#(JNone $B$G$J$1$l$P!"(J
$B$3$l$OJQ49B0@-$N$O$$$C$F$$$k%W%m%Q%F%#L>$G$"$k!#$3$l$O%/%i%$%"%s%H%&%#%s%I(J
$B%&(J (data.l[1] $B$K;XDj$7$?$b$N(J) $B$N%W%m%Q%F%#$G!"%?%$%W$OJQ49%W%m%U%!%$%k$HF1(J
$B$8$/(J "_CONVERSION_ATTRIBUTE_TYPE" $B$G$"$k!#=>$C$F$3$NJQ49B0@-%W%m%Q%F%#$N9=(J
$BB$$bJQ49%W%m%U%!%$%k%W%m%Q%F%#$HF1$8$G!"(J1 $B%o!<%I$N%X%C%@$H$=$l$KB3$/(J 0 $B%o!<(J
$B%I0J>e$N%G!<%?$H$+$i$J$k!#JQ49%5!<%P$O(J GetProperty $B$rMQ$$$F$3$NJQ49B0@-$r(J
$BFI$_=P$9!#(J

    GetProperty
	window: $B%/%i%$%"%s%H%&%#%s%I%&(J
	property:  "CONVERSION_REQUEST" $B$G;XDj$5$l$?%W%m%Q%F%#(J
	type:  Atom "_CONVERSION_ATTRIBUTE_TYPE"
	format:  32
	delete:  False


* $BJQ49B0@-(J

  $BJQ49%W%m%U%!%$%k$HF1$8$/!"JQ49B0@-%W%m%Q%F%#$b3F!9$N>pJs$O!">pJs$N<oN`$H(J
$B%G!<%?D9$rI=$9(J 32bit 1$B%o!<%I$N%X%C%@$H$=$l$KB3$/%G!<%?(J($B%G!<%?$O$J$/$F$b$h(J
$B$$(J) $B$+$i9=@.$5$l$k!#%X%C%@$N>e0L(J 16bit $B$,B0@-%3!<%I$rI=$7!"2<0L(J 16bit $B$OB3(J
$B$/%G!<%?$N%o!<%I?t(J (32bit $BC10L(J) $B$rI=$9!#(J

  $BB0@-%3!<%I$H$7$F(J 0 $B$+$i(J 65535 $B$^$G$NCM$,;HMQ$G$-$k$,!"$3$l$r<!$N$h$&$J(J 2
$B$D$NNN0h$KJ,$1$k!#(J

	0 - 255:	$BI8=`B0@-%3!<%I(J
	256 - 65535:	$B3HD%$G;HMQ$9$kB0@-%3!<%I(J

$B$5$i$KI8=`B0@-%3!<%I$O(J2$B$D$NNN0h$KJ,$1$i$l$k!#(J

	0 - 127:	$BJQ49$NESCf$GCM$rJQ$($F$b$h$$B0@-$N%3!<%I(J
	128 - 255:	$BJQ493+;O;~$K$7$+@_Dj$G$-$J$$B0@-$N%3!<%I(J

$BDj5A$5$l$F$$$kB0@-$r<($9!#(J

  + No Operation (code = 0, length = N)
	$B2?$b$7$J$$!#(Jlength $B$OG$0U$J$N$G%W%m%Q%F%#$N$"$kItJ,$r%9%-%C%W$5$;(J
	$B$k$N$KJXMx!#(J
	
  + Indirect Attribute (code = 1, length = 1)
	$BB0@-$N4V@\;XDj$G$"$k!#%G!<%?$K$O%W%m%Q%F%#L>$,F~$C$F$*$j!"$=$N%W%m(J
	$B%Q%F%#$K=>$C$FB0@-$r@_Dj$9$k!#;XDj$7$?%W%m%Q%F%#$O%/%i%$%"%s%H%&%#(J
	$B%s%I%&$N%W%m%Q%F%#$G$J$1$l$P$J$i$J$$!#(JCONVERSION_ATTRIBUTE$B%$%Y%s%H(J 
	($B8e=R(J) $B$GJ#?t$NB0@-%G!<%?$r@_Dj$7$?$$;~$d!"%$%Y%s%H$KB0@-%G!<%?$,(J
	$BF~$j@Z$i$J$$;~$K;HMQ$9$k!#(J

  + Focus Window (code = 2, length = 1)
	$B%U%)!<%+%9%&%#%s%I%&$r;XDj$9$k!#%G!<%?$K$O%U%)!<%+%9%&%#%s%I%&$N%&%#(J
	$B%s%I%&(JID $B$,F~$k!#$3$NB0@-$,;XDj$5$l$J$+$C$?;~$O%/%i%$%"%s%H%&%#%s(J
	$B%I%&$,%U%)!<%+%9%&%#%s%I%&$H$J$k!#(J

  + Spot Location (code = 3, length = 1)
	$B%9%]%C%H%m%1!<%7%g%s$r;XDj$9$k!#%Y!<%9%i%$%s$N3+;OE@$G;XDj$9$k!#%G!<(J
	$B%?$N>e0L(J 16bit $B$,(J x $B:BI8!"2<0L(J 16bit $B$,(J y $B:BI8$G$"$k!#$3$NB0@-$O(J 
	over-the-spot style $B$NJQ49$N;~$7$+0UL#$r;}$?$J$$!#(J

  + Client Area (code = 4, length = 2)
	$BJQ49%F%-%9%HI=<(NN0h$r;XDj$9$k!#%G!<%?$O(J 32bit 2$B%o!<%I$+$i$J$j!":G(J
	$B=i$N%o!<%I$N>e0L(J 16bit / $B2<0L(J 16bit $B$,NN0h$N:8>e$N(J x / y $B:BI8!"<!(J
	$B$N%o!<%I$N>e0L(J 16bit / $B2<0L(J 16bit $B$,NN0h$NI}$H9b$5$rI=$9!#%G%U%)%k(J
	$B%H$O%U%)!<%+%9%&%#%s%I%&A4BN$G$"$k!#(J

  + Status Area (code = 5, length = 2)
	$B%9%F!<%?%9I=<(NN0h$r;XDj$9$k!#%G!<%?$N%U%)!<%^%C%H$OA0$HF1$8!#(J

  + Colormap (code = 6, length = 1)
	$B%+%i!<%^%C%W$r;XDj$9$k!#%G!<%?$K$O%+%i!<%^%C%W(JID $B$,F~$k!#%G%U%)%k(J
	$B%H$O%9%/%j!<%s$N%G%U%)%k%H%+%i!<%^%C%W$G$"$k!#(J

  + Color (code = 7, length = 2)
	$B%U%)%"%0%i%&%s%I$H%P%C%/%0%i%&%s%I$N%T%/%;%kCM$r;XDj$9$k!#%G!<%?$O(J
	2$B%o!<%I$+$i$J$j!":G=i$N%o!<%I$,%U%)%"%0%i%&%s%I$N%T%/%;%kCM!"<!$N(J
	$B%o!<%I$,%P%C%/%0%i%&%s%I$N%T%/%;%kCM$G$"$k!#;XDj$5$l$J$+$C$?>l9g!"(J
	$BJQ49%5!<%P$OE,Ev$JCM$r;HMQ$9$k!#(J

  + Background Pixmap (code = 8, length = 1)
	$B%P%C%/%0%i%&%s%I$N(J Pixmap $B$r;XDj$9$k!#%G!<%?$K$O(J Pixmap ID $B$,F~$k!#(J

  + Line Spacing (code = 9, length = 1)
	$B9T4V$r;XDj$9$k!#%Y!<%9%i%$%s4V$N5wN%$G;XDj$9$k!#;XDj$5$l$J$+$C$?>l(J
	$B9g!"JQ49%5!<%P$O<!$N;HMQ$5$l$k%U%)%s%H$+$iE,Ev$JCM$r;;=P$7$F;HMQ$9(J
	$B$k!#(J

  + Font Atoms (code = 10, length = N)
	$B;HMQ$9$k%U%)%s%H$r;XDj$9$k!#%G!<%?$K$O3F%U%)%s%H$N(J "FONT" $B%W%m%Q%F%#(J
	($B$3$l$O$=$N%U%)%s%H$N@5<0L>$r%"%H%`2=$7$?$b$N$K$J$C$F$$$k(J) $B$N%j%9(J
	$B%H$r;XDj$9$k!#%j%9%HCf$N=gHV$OG$0U$G$"$k!#JQ49%5!<%P$OM?$($i$l$?%U%)(J
	$B%s%H$N%W%m%Q%F%#$+$i%-%c%i%/%?%;%C%H$rD4$Y!"I,MW$J$b$N$rMxMQ$9$k$+(J
	$B$i$G$"$k!#;XDj$5$l$J$+$C$?>l9g!"JQ49%5!<%P$OE,Ev$J%U%)%s%H$r;HMQ$9(J
	$B$k!#(J

  + Cursor (code = 11, length = 1)
	$B%+!<%=%k$r;XDj$9$k!#%G!<%?$K$O%+!<%=%k(J ID $B$,F~$k!#;XDj$5$l$J$+$C$?(J
	$B>l9g!"JQ49%5!<%P$OE,Ev$J%+!<%=%k$r;HMQ$9$k!#(J

$B0J9_$OJQ493+;O;~$K$7$+;XDj$G$-$J$$B0@-$G$"$k!#(J

  + Input Style (code = 128, length = 1)
	$BF~NOJ}K!$r;XDj$9$k!#CM$O(J
		root window style:	1
		off-the-spot style:	2
		over-the-spot style:	4
	$B$N$I$l$+$G$J$1$l$P$J$i$:!"JQ49%W%m%U%!%$%k$N(J Supported Styles $B$KF~$C(J
	$B$F$$$k%9%?%$%k$G$J$1$l$P$J$i$J$$!#$3$NB0@-$,;XDj$5$l$J$+$C$?;~$N%G(J
	$B%U%)%k%H$O(J Root Window Style $B$G$"$k!#(J

  + Event Capture Method (code = 129, length = 1)
	$B%/%i%$%"%s%H%&%#%s%I%&$+$i$N%$%Y%s%H$N<hF@J}K!$r;XDj$9$k!#%$%Y%s%H(J
	$B$N<hF@J}K!$O(J3$B<oN`$"$j!"$=$l$>$l%G!<%?$K;XDj$9$kCM$O(J
		$B$J$K$b$7$J$$(J:			0
		InputOnly $B%&%#%s%I%&$K$h$kJ}K!(J:	1
		$B%U%)!<%+%9%&%#%s%I%&$r%;%l%/%H(J:	2
	$B$G$"$k!#%G%U%)%k%H$O(J InputOnly $B%&%#%s%I%&$K$h$kJ}K!$G$"$k!#(J

  + Use Extension (code = 130, length = N)
	$B$3$NB0@-@_Dj$G;HMQ$5$l$k3HD%$r;XDj$9$k!#$3$3$G;XDj$9$k3HD%$O%5!<%P(J
	$B$,%5%]!<%H$7$F$$$k$b$N!"$D$^$j%W%m%U%!%$%k%G!<%?Cf$N(JSupported
	Extensions $B$K=q$+$l$?3HD%$G$J$1$l$P$J$i$J$$!#$^$?!"$3$N@_Dj$O;HMQ(J
	$B$9$k3HD%B0@-%3!<%I$,B0@-%G!<%?Cf$K8=$l$kA0$K$J$1$l$P$J$i$J$$!#(J


* $BJQ493+;O$NDLCN(J

  $BJQ49$N%j%/%(%9%H$r<u$1$?JQ49%5!<%P$OJQ49B0@-$NFI$_=P$7$J$II,MW$J=hM}$r9T(J
$B$J$C$?8e!"%/%i%$%"%s%H$KBP$7$FJQ493+;O$NDLCN$r$9$k$H$H$b$K<B:]$NJQ49:n6H$r(J
$B;O$a$k!#(J

  $BJQ493+;O$NDLCN$O(J ClientMessage $B%$%Y%s%H$K$h$j9T$J$&!#(J

    SendEvent
	destination:  $B%/%i%$%"%s%H%&%#%s%I%&(J
	propergate:  False
	event-mask:  NoEventMask
	event:  ClientMessage
		window: $B%/%i%$%"%s%H%&%#%s%I%&(J
		type: Atom "CONVERSION_NOTIFY"
		format: 32
		data:
			l[0]: $B%;%l%/%7%g%s%"%H%`(J
			l[1]: $BJQ49%F%-%9%H$N%(%s%3!<%G%#%s%0%"%H%`(J
			l[2]: $BJQ49%F%-%9%HMQ%W%m%Q%F%#(J or None
			l[3]: $BJQ49%&%#%s%I%&(JID 
			l[4]: unused

  data.l[1] $B$OJQ49J8;zNs$r%/%i%$%"%s%H$KAw$k;~$NJ8;zNs$N%(%s%3!<%G%#%s%0$G(J
$B$"$k!#(Jdata.l[2] $B$O$=$NJ8;zNs$,Aw$i$l$k%W%m%Q%F%#$G$"$j!"(J
"CONVERSION_REQUEST" $B$G%/%i%$%"%s%H$,;XDj$7$?>l9g$K$O$=$l$,$=$N$^$^F~$j!"(J
None $B$r;XDj$7$?>l9g$K$OJQ49%5!<%P$OE,Ev$J%W%m%Q%F%#$rA*$s$G$=$l$rF~$l$k!#(J

  $B$b$7!"$J$s$i$+$NM}M3$GJQ49%5!<%P$,$=$N%/%i%$%"%s%H$N$?$a$NJQ49%5!<%S%9$r(J
$BDs6!$G$-$J$$>l9g$K$O(J data.l[2] $B$K$O(J None $B$rF~$l$k!#(J

  data.l[3] $B$O<B:]$KJQ49=hM}$,9T$J$o$l$k%&%#%s%I%&(JID $B$r;XDj$9$k!#$3$l$O!"(J
$B%/%i%$%"%s%H$,<+J,$N$H$3$m$KMh$?%-!<%$%Y%s%H$rJQ49%5!<%P$KAw$k;~$K$=$NAw$j(J
$B@h$H$7$F;HMQ$9$k$?$a$N$b$N$G$"$k!#(J

  $B$3$N%$%Y%s%H$rAw$C$?;~$K$O$9$G$KJQ49%5!<%P$OB0@-%W%m%Q%F%#$NFbMF$rFI$s$G(J
$B$7$^$C$F$$$k$N$G!"$3$N%$%Y%s%H$r<u$1$H$C$?%/%i%$%"%s%H$OJQ49B0@-%W%m%Q%F%#(J
$B$r>C$7$?$jFbMF$rJQ99$7$?$j$7$F$h$$!#(J


* $BJQ49B0@-$NJQ99(J

  $BJQ493+;O$,DLCN$5$l$?8e!"JQ49$,=*N;$9$k$^$G$N4V$KJQ49B0@-$NJQ2=$,5/$3$C$?(J
$B>l9g!"%/%i%$%"%s%H$O$=$l$rJQ49%5!<%P$KEA$($k$3$H$,$G$-$k!#(J

  $B%/%i%$%"%s%H$OJQ49%5!<%P$K(J ClientMessage $B%$%Y%s%H$rAw$k$3$H$GJQ49B0@-$N(J
$BJQ2=$rDLCN$9$k!#(J

    SendEvent
	destination:  $B%;%l%/%7%g%s%*!<%J!<%&%#%s%I%&(J
	propergate:  False
	event-mask:  NoEventMask
	event:  ClientMessage
		window: $B%;%l%/%7%g%s%*!<%J!<%&%#%s%I%&(J
		type: Atom "CONVERSION_ATTRIBUTE_NOTIFY"
		format: 32
		data:
			l[0]: $B%;%l%/%7%g%s%"%H%`(J
			l[1]: $B%/%i%$%"%s%H%&%#%s%I%&(JID
			l[2]-l[4]: $BB0@-%G!<%?(J

  data.l[2] $B$+$i(J data.l[4] $B$KJQ99$5$l$?B0@-%G!<%?$rF~$l$k!#B0@-%G!<%?$N7A(J
$B<0$OJQ49B0@-$N%W%m%Q%F%#$N7A<0$HA4$/F1$8$G$"$k!#$?$@$78+$l$P$o$+$k$h$&$K%$(J
$B%Y%s%H$KF~$l$i$l$kB0@-%G!<%?$NBg$-$5$O:GBg(J3$B%o!<%I$G$"$k!#=>$C$FJQ99$5$l$?(J
$BB0@-%G!<%?$,$3$l$h$jBg$-$$$H$+!"JQ99$5$l$?B0@-%G!<%?$,J#?t$"$k$H$-(J ($B$3$N>l(J
$B9g$K$O$3$N%$%Y%s%H$rJ#?t2sAw$C$F$b$$$$$N$@$,(J) $B$K$OB0@-%G!<%?$O%W%m%Q%F%#$K(J
$BF~$l!"(JIndirect Attribute $B$N5!G=$r;H$C$F$=$N%W%m%Q%F%#$r;XDj$9$l$P$h$$!#(J


* $BJQ49J8;zNs$NAw?.(J

  $B3NDj$5$l$?JQ49J8;zNs$O!"?o;~JQ49%5!<%P$+$i%/%i%$%"%s%H$K%W%m%Q%F%#$r;HMQ(J
$B$7$FAw$i$l$k!#(J

    ChangeProperty
	window:  $B%/%i%$%"%s%H%&%#%s%I%&(J
	property:  "CONVERSION_NOTIFY" $B$G;XDj$7$?%W%m%Q%F%#(J
	type:  "CONVERSION_NOTIFY" $B$G;XDj$7$?%(%s%3!<%G%#%s%0(J
	format:  $B%(%s%3!<%G%#%s%0$K$h$k(J
	mode:  Append
	data:  $BJQ49J8;zNs(J

  $B%/%i%$%"%s%H$O$"$i$+$8$a%/%i%$%"%s%H%&%#%s%I%&$N(J PropertyNotify $B%$%Y%s%H(J
$B$r%;%l%/%H$7$F$*$-!"%W%m%Q%F%#$,JQ99$5$l$?$iJQ497k2L$r<h$j=P$9$h$&$K$9$k!#(J

    GetProperty
	window:  $B%/%i%$%"%s%H%&%#%s%I%&(J
	property:  "CONVERSION_NOTIFY" $B$G;XDj$5$l$?%W%m%Q%F%#(J
	type:  "CONVERSION_NOTIFY" $B$G;XDj$5$l$?%(%s%3!<%G%#%s%0(J
	format: $B%(%s%3!<%G%#%s%0$K$h$k(J
	delete: True


* $BJQ49=*N;$NDLCN(J

  $BJQ49%5!<%P$OJQ49$,=*N;$9$k$H%/%i%$%"%s%H$K(J ClientMessage $B$rAw$C$F$=$l$r(J
$BDLCN$9$k!#(J

    SendEvent
	destination:  $B%/%i%$%"%s%H%&%#%s%I%&(J
	propergate:  False
	event-mask:  NoEventMask
	event:  ClientMessage
		window: $B%/%i%$%"%s%H%&%#%s%I%&(J
		type: Atom "CONVERSION_END"
		format: 32
		data:
			l[0]: $B%;%l%/%7%g%s%"%H%`(J
			l[1]: $B%;%l%/%7%g%s%*!<%J!<%&%#%s%I%&(JID
			l[2]-l[4]: unused

* $BJQ49=*N;$N%j%/%(%9%H(J

  $B%/%i%$%"%s%HB&$+$iJQ49%5!<%P$KBP$7$FJQ49$N=*N;$r%j%/%(%9%H$9$k$3$H$b$G$-(J
$B$k!#%/%i%$%"%s%H$OJQ49%5!<%P$K<!$N$h$&$J(J ClientMessage $B$rAw$k!#(J

    SendEvent
	destination:  $B%;%l%/%7%g%s%*!<%J!<%&%#%s%I%&(J
	propergate:  False
	event-mask:  NoEventMask
	event:  ClientMessage
		window: $B%;%l%/%7%g%s%*!<%J!<(J
		type: Atom "CONVERSION_END_REQUEST"
		format: 32
		data:
			l[0]: $B%;%l%/%7%g%s%"%H%`(J
			l[1]: $B%/%i%$%"%s%H%&%#%s%I%&(JID
			l[2]-l[4]: unused

  $BJQ49%5!<%P$O$3$N%$%Y%s%H$r<u$1$H$k$H!"$^$@%/%i%$%"%s%H$KAw$C$F$$$J$$JQ49(J
$BJ8;zNs$,$"$l$P$=$l$rAw$j!"$=$N8e(J CONVERSION_END $B$N(J ClientMessage $B$rAw$k!#(J


* $B3HD%$K$D$$$F(J

  $B3HD%$K$OB0@-$N3HD%$H%W%m%H%3%k3HD%$H$,$"$k!#B0@-$N3HD%$OJQ49B0@-$NDI2C$G(J
$B$"$j!"%W%m%H%3%k3HD%$OJQ49%5!<%P$H%/%i%$%"%s%H$NDL?.$K?7$?$J%a%C%;!<%8$rDI(J
$B2C$9$k$3$H$G$"$k!#$b$A$m$s0l$D$N3HD%$,$3$NN>J}$r4^$s$G$$$F$b$h$$!#(J

  $B$I$A$i$N%?%$%W$N3HD%$r$9$k$K$7$F$b$^$:$=$N3HD%$KL>A0$r$D$1$J$/$F$O$J$i$J(J
$B$$!#$=$7$F$=$N3HD%$r<BAu$7$?JQ49%5!<%P$OJQ49%W%m%U%!%$%k$N(J Supported
Extensions$B$K$=$N3HD%L>$rF~$l!"%/%i%$%"%s%H$KBP$7$F$=$N3HD%$r<BAu$7$F$$$k$3(J
$B$H$r@k8@$7$J$/$F$O$J$i$J$$!#(J

  $B3HD%$r;H$*$&$H$9$k%/%i%$%"%s%H$O$^$:JQ49%5!<%P$NJQ49%W%m%U%!%$%k$rD4$Y!"(J
$B%5!<%P$,$=$N3HD%$r%5%]!<%H$7$F$$$k$+3N$+$a$kI,MW$,$"$k!#$b$7%5!<%P$,$=$N3H(J
$BD%$r%5%]!<%H$7$F$$$J$1$l$P!"$=$N%5!<%P$KBP$7$F$=$N3HD%$r;H$C$F$O$J$i$J$$!#(J

  $BB0@-$N3HD%$N>l9g!"?7$?$K3HD%B0@-%3!<%I$r7h$a$J$/$F$O$J$i$J$$!#$3$N%3!<%I(J
$B$K$D$$$F$O$=$N%3!<%I$NHO0O$,(J 256 $B$+$i(J 65535 $B$G$J$1$l$P$J$i$J$$$H$$$&$3$H$r(J
$B=|$-!"$3$N%W%m%H%3%k$G$O0l@Z5,Dj$7$J$$!#3HD%%3!<%I$O$3$NHO0O$G>!<j$K%3!<%I(J
$B$r7h$a$k$3$H$,$G$-$k!#$3$N>l9g!"J#?t$N3HD%$G;H$&%3!<%I$,=EJ#$9$k$3$H$,9M$((J
$B$i$l$k!#$7$+$7$3$N;vBV$rHr$1$k<jCJ$O0l@ZDs6!$5$l$J$$!#$b$7Fs$D$N3HD%$GDj5A(J
$B$5$l$?%3!<%I$,=E$J$C$F$7$^$C$?>l9g$K$O$=$NFs$D$N3HD%$OF1;~$K;H$($J$$$@$1$N(J
$B$3$H$G$"$k!#(J

  $B$3$N$h$&$JIT9,$J;vBV$rHr$1$k$?$a$K!"3HD%$r$7$?$i$=$N3HD%L>$H$=$N3HD%$N>\(J
$B:Y$rH/I=$9$k$N$,$h$$$@$m$&$H;W$o$l$k$,!"$I$3$K$I$&H/I=$9$k$+$J$I$N>\:Y$OL@(J
$B$i$+$K%W%m%H%3%k$G5,Dj$9$Y$-$b$N$G$O$J$$$N$G$3$3$K$O=q$+$J$$!#$@$$$?$$$3$N(J
$B%W%m%H%3%k$r3HD%$7$h$&$J$I$H$$$&$b$N$O$[$H$s$I$$$J$$$G$"$m$&$,!#(J
