np@doc.ic.ac.uk (Nigel Perry) (02/25/89)
In various recent postings people have inquired about methods of capturing keystrokes. An XCMD which may be called to get a key event has been mentioned (InKey), but here is an XCMD which generates HyperCard messages on keystrokes! If you use this you can arrange for "controlKey <num>" messages to be sent on every keystroke, and its fast! I'm posting this after (a) the interest, (b) somebodys suggestion that as comp.sys.binaries.hypercard is dead, if items were small why not mail them here and (c) noting then Dan Allen says key messages may be introduced in a future HyperCard - good, but till then... XCMD is copyright, you may use freely provided you don't make money from it. Enjoy. Nigel. --- cut here --- (This file must be converted with BinHex 4.0) :#NYPH8ecCbjcDA3!8dP8)90*9#%!N!31iJ#3"'Nd8dP8)3!"!!!1iR*-BA8"!*! (!J)'5f9j6A0RC3!0Zd3!3*l8!!hTp!!+!!iP"J#3!`-!$LYk!!+G4!!0ZeS!"-a X!!iP"J-'!3X!)3!"!*!$$EYd8e4"5eG*6%3"!+!ThX@J+H+9!!!#0J!!(m!!!!( P!!!-GahGjQJ!N!BSY!!!"!JS%"p"J`&p!##La)JCJ3CH-(K"!"8X%&-JS!!3iB` $"J(pN3QS3k+$)@rJj!(aaJb)*@Ab0*PcCSi!JP1S"&Pb*3N6)J5K"FbjXqI2S!$ i%&c+Y#QS&0k+"I`!,+!!'cpi!&L!LK-U8DJm5Ac"ijrCIUK51DR6d)`%("XCB%) $!)%i*M!))#'#!m"D2(lVB0JB33U"-b#%R(Na!!PG"+KD+IP`4S,K-a"k+&8!`%, $-`5NZ1Qm9M-!Ik6C1R34aK8U5kLd)CJ'i!"'ah8T@Q5-DKZU5`JQ%D3(aN&!,%1 D!!A*0)LqIqkFa*%1aUS6+`&"M%E!!)V!K`"`DDm,JUi!%&"Jm!!"!K!8"N$HZ!' 2#!3H!CSBS',cCX`D!!DF%4!1cJ%Jaa$k!'"#*-Q!J-!,!*6L!3JAZ)#)#%J85!% S,S$`43MhD3+!!#%JJepe!#J""J*,mHII#`Rm!!!)H[`MMa13!-$`J3KIr!!%!)F &K!)-%F!(`!"Y"15"N3@-eKN-+3$J!)YeJDF!!P8a--12$U`&"JEfiDHILrmCB'8 )k)b)(bJI11'&Kdqm!k36d$344"*1X-GH3!2aL4!!IbU8J!Em$1"G3"`!)-0ab3% 9%'I-04A3!LLj3BFFEl$"4(pV!*!$1!!`K8U3!#Ar%[ic"faHKB!!%!6m!#cJ3)J B-3B)U1!-a)d!0Q!,L%"DaT-R#`5%J,+P4K'!!!5!+C2Qc*JZFqVFbE1Rcjp!J`S G5V5SdD0)NbTGbV5TdkG3SdSpL6-L4%3!4!$!UK84)K%L[)*&T%U%+V*QQDQDS8S Y@hHUGUQ#+pIGVPhZl1,pYqZI1ljq!5IXq`m3"!%J!L!!3N#KihpI)iF9%8%%%85 9,a-$a!$0%!%`6-5#-8!N-!D09!&3cAUVL#U6B51#A@Afkc[GF1[Z9K@MULUrJeF C3!J*$!B#!J334#3(%8(+!b#L)#))SL!L+!!#&-3(!J38aSNJ`)L1L!ZB)2J#K!M "1J5)!*9!*L-4'4*-*)RL&-5ALQ38V!-%+!%4S%"!J!!"!J!#%##4DM&K&90Kfe8 )#!)FL"!-)!%d5#%Jrhb(!$lQ(I()"5,%m3X![r`#biZ`r21(,ef)%N4-qY56)bK 3m$M9Md!'+H53!%3@DH545#ECdaYZJ$!''fr-8FB8G)3aaKS0M-%N(A+m`3B6Ee` *JJK[Q'''#!f8i3BC6N)T*C9@BJP!(Jfdd%+G,B"!"4TTc!(#(&@+UD8E9DEKKTp K0)Q&%8-i`B+HBE#aaU0hm$N''L!B5NFCFTKKC4Pqd[%'#%eBD5J9NDlK!TjkSP' 'Nfqdd8DLC2KT!JKQe1(''(5N`D5IBT3"j4fC%XUTTf1mHNFDG'$Dl+Z,0VUURDe #bkJ6)03K*D)JR!'P'*'#B%FBFU34KKKX[(S#UT*5qBBFBCa4aJQ20[Y'(@GJbQb QIPjDaT9PN!$"UKR[LKYT'Q3`Q`F)HGcl*aVhXX'Q'fr3!8+NQmU4+4eqMXY'(@9 -HbHe@6Jmkm*Qb&''X!YVqqUc)%5,,DdAcc&(Q1CZbLB5HF$"+EYVr$P'ZA"`c+U K$0qVm4Yh0!PSR(-mfR!G)*`-JK028&(XNh@3!2'bUfd8qfHJDrKCD4UAXMVeRm+ b!8+HKR+GX"YRM$N('Z5@F8IH)VJ!3XP8@`e('$D$`#3)cIEjCjPdl+dbUk)DrU` F852qKVb6Jl"XXaHlXA!BC#6Fkkp*"al'`V1Z8FDMF(4T"m)")iih(C!!ZfTiZ@F B'Zl0GFL4E1GXDJP((VLMB6(&[IkH0`LYJmUT(3',c#S5B8#2Ukl*0-!UR'*+58F GF'Krq"XqZm%pPYkq!DlE3,X,Vlb29L'P(&Ci@8FEC63!4ad@`e"Xj1d6eIYH4Dd NR#"XFqMGUj,`X)L4`3dRX"MHV"Fj-S`UFC86!rqbabH[98e0G4!#ZI6(2a$8lf2 iBd)CS-F'&-`J"ImEPI`iGF,lj5m0CT!!hDZJ4cPI0BN())L"#f5J3cFd)&&cZ!1 RaV3Ra6e06(Xc@lRSX+NQDFY3GH1Ccq3`"(+a5BJb%)(QQ)8TB64!"%G)JrA!*mD #LB!+FPMB[K+9KlhP!8dih"J)HM#Q0+i4$Q*m9T21-#U)i5p0DmU8'4$**[+TkAc LDp+6SM3PXM8JIHX$`3cTClp$hSeT(h4$#%Hi2i[9-)8V&"B+0RR+-X"38k0L9J2 -B+JqS3&SM'`6*5(*+K(1!@hr1pDRB#8V@YRUHVXDhD'dPkYNqT!!H4"c3aR`ClC he3S%f(aERJE&3ik"S!KdBi-Y%9F'2&J-PY"NdM4"e3#9I8m163)D#Q*!+@[1)3@ jK%-decN(CZU+9mpX(C2ZYDYAk91Gq"-RS,**,B&5l*qJ5UFdUGR1-V`cRUP#J3a BYmq%pSN1-'4SRYcCZd1"i!42@--*EJF#6R9*Bp5F3lcbTbBf1C5J[mZQ6RI+8fe HM(P4BTBDAqA5JSQb$F(5Q1,+C!E[XDT-KM066E(S*,c"LeG,4*UK5KR*2rNX$%' 6%U%5P91IcZ'V331RYmDj+A-qbS)444i)5!T2LI+6K"D6j``H*GBU&I59K)SPl@V Ue6+!YDZdG)-YJDC6DNe55U3bP4XBL`*(5T00BH"IV-+3!,a)X5%2q#`PT#5&!KS !0R+b*'aL&jXUIcVcF(H`*V`fT6NiK%fNE,2B(@cl+,UDG,F)Y'K&,cVD0D#J"T5 b,6i*'eXjN!"KY[QEj6q9+DihS+d-F'$@T8$J+MR333mLcC2hURYGjQNA$EfeD%R pP&dkE0HT[LdZ#Qc`U1jqGlQ*Y)0eNpAHY$AJF&d53mA3TYrbBT0Di`h`J-G!hYq *5TTiPHm06L[BA#SiH3919PIG`0RH45V$Vm,YH$RmcR#"f()3&UdmF8$KMH@5a"j Q!iJEJ"3"!+!*35L)BiS##*-!J"!j#!Ja2*)4CX""56QCaNL3!-cN*M[jb9#1-T! !!-'%*"5%*$k@#8Nd!J!L-!J!,"R!JJ+!JSrN*!&""SQ8Jb)4+!6K#%8)#*Ua(*! !!HcK*#)"!`85m3jZF))1`F"',cV`&3cF)3P#3))G!(%)D2M$$Ij`4$kUi3GHM#) 2ShM!0QK3Q%UN!"BVL%3jUT%#AS"J"eH3!-B@E('23q'K$BEiKbZ-S3ChV2R@Z-k eVRI0kellqYI!$VD`KdhXBK[lf-K1YV+AcHaQ1r[Cd!lf4S5`K#0i'3!G#3J$MR` 5N!"N'pXH)3!!$!!4@k"%+ahDL!F!3!B!e#!!MJ#!Z,Nm!)'!4!)C+E-!NJ1!6`# J!`"J4`#qSH@6L$X"%'&!1F23"MLN#b0D'3#rVI"[!%!L!-dSH%EUID#!d"JM5KJ h5$!JE`$-!!!M5%a!U%!-M6-!)K"`JYj!)!6q26JJKf[$[D48KI!4NVZaSQNLGHk bRY1i#1EN&)IGPJ3h%#`Si"!#MU'JE@kE15-"X)+00D,eJ"a")2d'`"Gm`SN3$!! F3`J!)!b!(,2$S!)''%"-"S!"H-!M([Yia#-i`!-qc$d$Q3Km-"KK$!DB`3k+S!% '-!!%#N"J"''!``&'J!Gd(%!)+-J!)$"JJ,Q$`qla#-3M"X%)(TJK%4GJ!!%+mBY !Y*i8J6!l2#L!!`*%B!!9`!!"&#'(!F4J(1l`!3$`-)!a#!!D9D!a,3BJ"(&)!aL )-)!-`L%#B%b!0#))!!JS`)-"L1$i&'$!!13!$`&842N$5)3&B&#!3S`E!!H`bJ, qm)q!&!!)3`L#&+iYNU$-'G`!8'rcPR8!S")"5!F"J'r+%4#aS(B!F!`"3!k!8'p FTQd`4`66p!Bieb4%ah2KNdF`mdRH"3)FKMp4p8&l0#BBU(0S)NJ0-&i`8i+[!P8 Q'$NLi#j`!!)Vq!CS)PT[e$1[3NH*3cHP!`,LT$UXSbfBFJ)iU)-CZ&+4XeThJbD $`L9H!LCL3LCZJ#E#)L8[D&%k4))-0i-j9)1MBKNC5)9EdL9I%LC"3bCQJLBGp#T Y-!GRN!",1*4,(9J'4KF3%FG[rK!!Da!!84!!p["Pp)CY%2&a%+%9"-"[r5"b9+F 1L'KQ(,H)@)F&3p!%4!!#3l#'9qL'GGC%IU+*R!J#++!V+3!P9a)UYL-#9FL')+! kGq3hHr)UXHJPXeJ'FZ3R62*CZ%*3MG3NdU4%'P-U$%D,!ZC&'94#'"3c66!%R3K AIL*A+K-(GC!!"LUM3pXB1F(b8bS6,ZUd1(V8A'@$+iBbJdf#M#!!"4qc,5%!!PI J+Nh#LUU$@CkcLhN!+&fL1Q2%16#M*F@85,5S59!`4QcJ0Q13!&Q3!"8'Bj+,E,! %[%L#pb0'-696Mb+3!,0#N!#m##K[S$U)XSeBSc9K)&9B43BZ%"!#m)Q%`SCBq)C -)NDiCBpK#*(kL)TjT#[f'$$ia**@f)CCb&3bk9-kkBBe#BTZ8j!!+*!!4cY*"[M dAj+%P"+j-%I9!!H@*e1M-A-`0'P30)pb92`5KZai+H4L*4Q6@`Ec-Dp#-"S$-l5 B5a!jP3$`$rhJ"'NJ,fi$"5k9"bc3!"Ji10k&2i4bJTrBF2b$4AfC"!h(+HEL0Tq BN!"P)#m0!#CVFMK6F!8hd!"Ua3DdNLDcNJCXS!-N#!G!8!HUBL8ZJ$BZB%&M-*I mm)RC&6XT%bY-P#UF)NC2&$3PHCE5C$%*XjADmN[M)dQFG5P84B[mq*'JiMHTF$9 h+5cYZ*HXmbl+j#I0139jX*'E`Q"00`Cq!cK9FcVC!PR2D)UGL$4d0$Ca`MbZ!cY XXMB@4))9`cB*q5J&8c(GY5b3!#8iA8*,&M1EBF-XIT-%1E3f4rJUqb*@E'+#$JN (8H*HAK3#'`JV,HNP8dQ4E4"K)J#HG!#%E&+3!%H99'*N!VG5PB39Plb)%AS5"%R !")ia!A[#@5H!+!NCM*)b"bk3!+0"`3!!!: --- Nigel Perry Department of Computing Imperial College Janet: np@uk.ac.ic.doc London DARPA: np%uk.ac.ic.doc@ucl-cs SW7 Uucp: np@icdoc.UUCP, ukc!icdoc!np England