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

Re: Typing allergy



Carl Distefano wrote:

> John:
>
> You've rediscovered the PV operator. To understand why your routine
> works, read Robert Holmgren's CTRLCHAR.TXT. It was written with Xy3
> in mind but applies to Xy4+, with a few differences. (The
> DOCumentation for STACK.PM includes an update for Xy4+; see "Coffee
> Break: One-Byte, Three-Byte, and Five-Byte Characters", in
> STACK.DOC.)
>
> > Briefly, one needs a saveget (@ or &, but loaded automatically
> > by startup.int) containing code which:
> >
> > - copies the selected text into one of the savegets named  0-9
> > (useable by means of a pv5, that is, not a pv05)
>
> Why *not* PV05? In simplest form: BC .

IIRC,

1. When I tried saving defined text to 05, it didn't work
(this may have been with a version prior to 3.55, it was
certainly a long time ago).

2. Somewhere along the line I came across an advice from
XyQuest to use any variable from 0 - 9 (not 00 - 09).

> (For this
> to work, a block of text or XPL code must be *fully* DeFined, i.e.,
> the DF block must be "closed" with a second press of the DeFine
> key.) Stricly speaking, a stay-resident Save/Get isn't necessary --
> although it has to be a S/G that isn't used in the DeFined code,
> otherwise the operation bombs. So, yes, it does make sense to
> reserve a S/G in range 0-9|A-Z|100-999 for this purpose, but it
> should be zeroed out at the end (e.g., ) to conserve memory.
>
> But... rather than rely on a side effect of a routine to move
> DeFined text to the CMline, you'd be better off using one designed
> from the bottom up to run DeFined XPL code. U2 has such a routine,
> RUNCODE, for Xy4+; see below for the equivalent for Xy3 v3.54+
> (suitable for LDPMing). You'll need Xy4 and U2 to decode it
> (DECODE); command HELP RUNCODE for instructions
> (usage for the Xy3 version is identical). RUNCODE, by the way,
> saves the DeFined code as SUbroutine 754 which it then launches with
> .
>
> RUNCODE is time- and torture-tested; it'll run virtually anything.
>
> XPLeNCODE v2.0
> b-gin [UNTITLED]
> {<}GLa{>} RUNCODE3.PM - CLD 6/6/91 rev. 1/3/04 for XyIII+ v3.
> 54+[cr|lf]{<}LBa{>}{<}SX01,{<}VA$WS{>}{>}{<}IF{<}PV01{>}<1{>}
> {<}PRFile or DIRectory required{>}{<}EX{>}{<}EI{>}{<}SX01,{<}
> IS00{>}{>}{<}IF@siz({<}IS01{>})<1{>}{<}SU02,{<}SX01,{<}IS00{>
> }{>}[NO_]{>}{<}GT02{>}{<}EI{>}{<}SX02,{<}VA$WS{>}{>}{<}IF{<}P
> V02{>}>1{>}{<}SX02,{<}VA$DR{>}{>}{<}LBb{>}[BC_]run {<}PV02{>}
> {<}PV01{>}[XC_][BC_][GT_]{<}EX{>}{<}EI{>}{<}SX02,{<}VA$DF{>}
> {>}{<}IF{<}PV02{>}<1{>}{<}SX02,{<}VA$FP{>}{>}{<}GLb{>}[cr|lf]
> {<}EI{>}[DX_][BC_]es 1[XC_][DF_][BC_]es[XC_][BC_][GT_][DO_][F
> F_]{<}SV754{>}{<}SV02,{<}|{>}{>}{<}SV03,|{>}{<}XS02,03,04,05,
> 06{>}{<}SV02,SU754,{>}{<}SV03,SV00,{>}{<}SV05,{<}EX{>}[NO_]{>
> }{<}SX02,{<}IS04{>}+{<}IS02{>}+{<}IS04{>}+{<}IS03{>}+{<}IS01{
> >}+{<}IS06{>}+{<}IS754{>}+{<}IS05{>}+{<}IS06{>}+{<}IS05{>}{>}
> {<}PV02{>}{<}GT754{>}{<}SV754,{>}{<}EX{>}[cr|lf][cr|lf]
> -nd
> XPLeNCODE

Thanks Carl, but I don't run selected code very often ..

> > Of course you can't create the digrams in a file which hasn't
> > been opened with NEP or CAP....
>
> Not true. The PFUN command (PFUN BC, for example) embeds "digrams"
> -- better known as functions -- in any file. Works in Xy3+ too.

Nice to know.
John


> CAP and NEP are archaisms; there are better ways to record
> keystrokes, even in Xy3. (Anyone have a copy of Robert's
> NCAPTURE.PM? I don't anymore.) Xy4, of course, has built-in record
> and playback facilites. There are U2 routines (RK, RKOK) that
> harness these capabilities.
>
> --
> Carl Distefano
> cld@xxxxxxxx
> http://users.datarealm.com/xywwweb/

_____________________________________________________________________
Envie de discuter en "live" avec vos amis ? Télécharger MSN Messenger
http://www.ifrance.com/_reloc/m la 1ère messagerie instantanée de France