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

xyW3 crossfile ci[a] pgm (big UUE)



This seemed like a good time to gut and rewrite
a pgm I posted here a long time ago. One thing
that !EN--the standalone, expandable pgm zipped
in _EN.UUE below--does is crossfile ci[a]s that
handle the jobs mentioned as reasons to use Minitrue
(which at a glance seems to be a lite shadow of the
industrial-strength if elusive SNR powerhouse that
Peter Evans rightly extolls). To do a crossfile
ci[a], clear the CMline and type and execute
something like:
	run !EN c:\tmp\*.* ci _micrometers_microns_
or
	run !EN c:\tmp\*.* cia USA U.S.A.
(Your path of course in all examples.) Two dedicated
!EN modules convert carriage returns/linefeeds/newlines.
To change all stray CRs and LFs in a group of files
to standard dos newlines (mistakenly called carriage
returns in xyW docs), the command would be:
	run !EN c:\dl\*.dl cln
To convert newlines to linefeeds in a group of files:
	run !EN c:\2unix\*.htm n2l
And all in the colors you chose for xyW! !EN does
any other func EN task you can think up, not just
ci[a]s: Just add an appropriate procedure using
the existing ones as models. E.g., to time-stamp
all files in this subdir with the time now:
	run !EN *.* t_s
sad the long xpl instructions in !EN to a .DOC file.

To the very limited extent v3 xpl needs help, libraries
supplement it far more memory-conservatively than that
darling of '80s xyW3 programming, .HL3. To do what was
said then couldn't be done in v3, the !xyWise overlay at
the url in my sig consists minimally of a few tiny >99
procedures, one ldpm, one .HL3 frame, and one required
runtime library of procedures a pgm can use or overwrite,
in memory only while the pgm runs.

I transplanted several !xyWise library procedures
to !EN. !O.LIB proc {is35} detects common binary file
extensions. When !EN invokes it, if proc {is35} suspects
that the newly opened file may be binary, !EN pauses
for confirmation. !EN CR/LF<>newline conversions
rely on proc {is34}, borrowed from the basic !.LIB.
Proc {is34} incorporates Robert Holmgren's long-ago
breakthrough work on xyW nulls. (Thanks again, Robert.)
At !EN's heart is the !L.LIB proc {is38} EN loop, which
owes its soul to The Herb.

The !xyWiz pgm !^v, which requires !xyWise, also uses
proc {is38} for crossfile ci[a]s, but !^v enhances all
local se[a]/seb[a]/ci[a]/cv[a] and crossfile se[a]/ci[a]
options. To resolve the crossfile problems cited here
earlier, !^v turns to the !xyWise command buffer. To
start you type your path and se $ on the CMline and tap
the same key you tap for a local search. When you open a
file you rotate the command buffer to a local se command
!^v has prepared from the crossfile command. When ready
to resume the crossfile search, reverse the command buffer
to the crossfile command and tap the same key. !^v asks
if you want to save the file before it aborts and resumes
the crossfile search. The downside is that !^v re-proposes
files you've processed if instances of the se target are
still present. Oh well.

!^v was one of 10 essential xpl pgms I put on an FDISK
floppy when I repartitioned my #1 hdd the other day. In
event of a disaster that didn't happen, I had everything
I needed for my normal use of xyW. A trim .HL3 needn't
imply file clutter. Typically, at startup !xyWise
!config.lib writes a tmp file that it saves, ldpms,
and overwrites for each, then deletes. !xyWise expands
v3 possibilities in a way that makes a few more tiny
ldpms and three small .HL3 frames more than justify the
memory they consume, e.g., to manipulate the command
archive and backspaced/deleted char cache. Lots of
documentation at the site on usage and, for anyone so
inclined, on applying the overlay to your own v3 xpl,
plus several !xyWise pgms packaged as !xyWiz. !xyWise
celebrates the discipline xyW3 imposes. ... Ciao. 		--a

_EN.UUE =======================================================

section 1 of 1 of file _en.zip < uuencode 95 (v40) by R.E.M. >

begin 644 _en.zip
M4$L#!!0````(`)J:4R6&F'D-&`T``&<>```#````(45.G5E+;QQ'DL;.CF?'
M!'CS:2X3M#TRZ:EN]8L/R9(HB2+'`EJ40&KTL"PTLJNRNQ.LERNS^C'``*1O
M]+WSHC8BLJJYFMPW8#8)=E9GQ^B(R(C/Z6H^;
M;>?ELQ=P]/01O.R=PU'W%$Y;73@[/H6?_4!IW=%N;Q!UEJ'&[[>#,G[)K-7BHU5^V
MKY5NMK*=>\TM^_2_^-5N9P\.#G#UM-ERKA,WRZZ'/I)(Q6-MYV$:)P4E$33;
M&7_S"_?SK_]S_G5/[+YU7'L"5#>!<+,_KZ_>?0=D<]
MX1H5A3TW\B0*FA;"6KM.X0/VC@6*?-;[LG=^ZZS1Z&6;&YL;]W_N![:.3R'5
M8BCA%DQC'\+(2'V7>)%NL4P&41)HB$();A)I/5"^A#B)7.FEB:0%D*0A>-+(
M)%"A]*`_`S/"&;0*1.A!Q22812FHT%.N,!(?X.B9CS2@)\JX(ZGK\&=2A<4#
M/#YBUJ2'#'O:C6*YQ.S-T>:&K`_K#I@(C`ID31L1Q.#*Q`AD3JIJDB)0/:V&
M(0KU0*=]3R5W;PA([GX];7^]]7G]C@)I1BH<@O2U[&UN
M1,GJ>O'3!+#M1B'.&7!%DBAR7B)-FH0:G4B`#J3T-*$2R@F]ZYV[*T+\<)E5
ML93(2AZK=&'+W]RHU?JIX2&E09LD=5$Z81NQAUV!F'L>L5P7--H!@60JB'$4
M54#D\&E*@T0]47K$+E5&@TCA&0%&6E,.8^-+*
M)])?D]!OKG3`4UKTT:Y!2I#`1"0AJJ")Q?H/(D(Z$@?$F=:)<`81OB=P(6?E
MNO,+%5>-B@:E5+O-^A%Z41E"JMS(`-L()+HF=27YZS,-@0PBQ,M+A`H=T,*S
M;"+?CR;$5X1(R0B1G_,/RA?H-KO;9+A5]R+78;$)LAM+E`N#)`KLSA\&.Z3%
MZY',-U<:(G&9%*+!0%*TJ!#FCXXIU\\?G:#;W"A`C≪B48P@SS7;-)>&1OGD
M/9T&2$ARB5LU&8A^/Y%CQ8J#'$?^F/<^6K](5LRQM4L<8YD$(I2A\6=UUG$H
MC75C'&G%3'*`JT)08QKBG/5)LZIAJ?6VG6S!2/JQ#6BI#4XI/5KBOV/Q2[6\
M(1=5UM*7KN%A-TH2>B8KJ@:4:+NC2+F4.AGNGR)1&MVLV$@9T.AQ:S@4YXFR34AV>#D!'S@I#H2_0RH%-=R(TI)4;A4:%
MZ5+B8@&Q2(QR4U\DS)Z9$J$6,P@CV*9Z.XOMUIUQRI!35\8&OU:3VXZSI"`7HBC4,M5U640^]%L">0V@RP`_:J%(<[N2"3"-80O0F/-
M*"J46+_%;VX]7)-/MZQO85MP9.2;;Z>R@A@P+#>)-*EK9DM6L+18<"Q2/5=A
MG!JN2).1+>UK@TH95!0ZJEIP[/;3"-A9_*-08$Z*V^!'0%'Y)4B.B$
MPO=GA5W6+0G!A9CMY/N9'$TGCYL&5#37:1PC&Y2GJP(IN53PY1)!`R_.(L3$
M9EPNE&PAA<\-&450%)7\1CK13EXT\OJ1!&2UG"IMB%DUUR*A/5+ZHB]]J-?K
M-!V/FQV<[G&(;%=]?R/EKJ;;PYV"B1ZW=IUW=%A:;":/#JLF`BG<$3OG_?SJ
M.Z3"Y4/_^!2?2)>GRTG&5;:LE,=("HF:J@:Z-1LU9&AH,5U!\U.;7CT!DA5KSX!$VNU52->N@FU7^+[T5AGW9S"=O48-7A;T([]6FU]]IP94'>PYDD(T1F-B]*BQA^D.)QB>K58A
M+<;,C(.7(*&Z384OKX&4QCR)SQX@F(N[":^-7#=-*(\N%U'KX;P:Z3H\&E!E
MN#F?2/35-ZG2(\D'=?20OZ9R4L&R#O*4CGTQ0Z5L`GZ+9C`<;(.7YY7"W6R\_P+8H\;2S*]^
MOYC=?>^`ZTM17B3R:W6>X/D@9]%GU^\6YOZ8BYRU%9IVS-DHSBL>
M'8P4HU?F70=&T81RG+.(TS#?"P-?\!VF03?`6I,Q:JSZFP]#>8JRNW)JF#?#
M46NN4O03*2YLA!R?@A]%,?N!E./1$+VFC10>5QH.13[3TY;BL*=H[Y,'Z;Y!
M9]_\?+17AUNL(NWY;F]I;>#ZMO^/K\]
MRBL7'2`<&Y@L.S)\6N!*]P,?73EQ^OVEE^_S$]7*+EC,RA`Q)TMFJTF0X&21
M8K:0QE240.B:FCL+F=1_85=JS>7`'B&N_?ZBY76MQRUN=OZKZ#6VBN[A?6KV
MV09ARVGN\?]]ZI[A""WD=
MG=WJGG`?$M?:-N?\\AW]7?UQ?NER)[#AS$].?LL,K:R&%=+)J$GJ*G3EU0/CI[>\@*[CKSRZ#L
M`8_%IX,XVR%4D,FNPP.*6XCU;-%BI1XU@LK=VQ*KW8RZEJUVL29?4B]'F6'>
MM/7[];RC6B<'X`P^$OIM[M#R#!R_.8:CY\_@JZY?Z
MX`OJH?]#P4)J=L:TO5>:@E)W%S"T][),:FCB,NIU%\K5?.3BV>OO[/1ZV!J#L<%(87*B\9.S"
MU-S&PN(.[YJ7SU[\LI;[(LMQ5JNDUB+!$6MK*9K,7AWZ1T][&5TW[N9P\,7G
MNON8[AM1*&MZ%!E[W;AK?XS1@G[605.(^O@TRWD3GPKO#IO2.\_`5;==)9;8
M4Y@CVDWVFQH\#".S?8T>V['\:;38?E41Q*XBXH#5[YZB^BJ0YW2W6C:"75`_
M?G-OJBFMIMTGI@?UMIWQSH5`96=T(Q4.A^`Q=4L*(TI:JA
M?]KJ9L`IOW7:758:*2-(^(=*6\6(5R)#L#CD7U2`^>]Y
M]\E")BE6.H0&:PM7+&E#RJ!U!Y2DHPO^[0UJ->'%)W0C2>#>3&JM'TKMBEC6
MW2AX`/=&QL1W;]^>3";UQ?CM/^P?\]K;O>D,>=5')O`?0#ASH=D!38VYYIT[
M^_02N?Q\\+O_!U!+`0(4`!0````(`)J:4R6&F'D-&`T``&<>```#````````
D``$`(``````````A14Y02P4&``````$``0`Q````.0T`````
`
end
sum -r/size 45475/4786 section (from "begin" to "end")
sum -r/size 16174/3456 entire input file

======================================= adpFisher  nyc
http://www.escape.com/%7Eyesss/_xypro.html ===========================