[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

The value of $X



Oh you scoffers. Now that Carl has perfected the $X frame, and after using
it for just a couple of days, I can see that it represents a palpable
advance in XyWriting.
What it does is more seamlessly integrate U2 into XyWrite. No longer do you
even think "that's a U2 command"--it's simply: "a command," something you
execute by hitting ENTER.
Having to distinguish between what calls for  and what doesn't has
a subtle effect, giving an ever-so-faint priority to native commands. The
$X key routine erases that distinction.
Full disclosure: I have made my own modification of Carl's $X routine,
which I have re-named as $H. But the concept and essential logic is the same.
Further note: I have encountered difficulties in getting the output of the
<$Xkey> recognized as a  in some of my XPL programs that accept
ENTER as user input. The simple solution I've adopted (and automated) is to
begin each program with a loading of a version of the .KBD file which has
the original  assigned to the ENTER key (#28). Then when the program
exits, I re-load my regular .KBD. So now every program looks like:

BX ldkbd c:\xy\runpgm.kbdQ2

[however many lines of XPL go here]

BX ldkbd c:\xy\my.kbdQ2

The two .kbd files differ solely in what is assigned to the ENTER key.

It takes no perceivable time to change .kbds in this way.
Also, I write programs to always exit (even when the user aborts in the middle) by going to a fixed label. I designate as that. So I can be sure that the regular keyboard will always be re-instated on exit. Yes, there still is the issue of crashes, but there's really no problem here: if you find your ENTER key is not activating U2 calls, you know what to do (ldkbd your regular .kbd file).

Harry Binswanger
hb@xxxxxxxx