Annotation of freem/contrib/%ugdir.m, revision 1.1.1.1
1.1 snw 1: %ugdir ; Global Directory - version 0.5.0.1
2: ; A.Trocha - 01/29/1999 00:44/GMT+1
3: ; $Source: /cvsroot-fuse/gump/FreeM/mlib/%ugdir.m,v $
4: ; $Revision: 1.1 $ $Date: 2000/02/18 15:13:42 $
5: ;
6: ; this version is very, very beta
7: ;
8: ; todo: LOCKING!!
9: ;
10: N no,error
11: ;
12: s error=$$init^%uxxxx
13: s error=$$writen^%uxxxx($t(+1)_" "_$$^%uxdat)
14: s error=$$writen^%uxxxx("")
15: ;
16: s no=$$out(0)+$$out(1)
17: ;
18: s error=$$writep^%uxxxx("Number of globals - "_$J(no,8))
19: Q
20: ;
21: ;--- get and output %-globals
22: out(m) n %
23: ;--- path to %-globals
24: S $ZT="%error^%ugdir"
25: ;
26: X "!<"_$$dircmd_" "_$$convpath($v($s(m=0:6,1:3)))_"^* 2>/dev/null"
27: q $$show(m)
28: ;
29: ;
30: ;
31: show(m) ;--- show globals
32: ; m=0 show %global ; m=1 show non% globals
33: ; do not output ^$<xxxxxx>
34: N i,glb
35: s glb=0
36: F i=1:1:% D
37: . I $G(m)=0,'$F($G(%(i)),"%") Q
38: . I $G(m)=1,$F($G(%(i)),"%") Q
39: . I $F($G(%(i)),"$") Q
40: . W $$lb("^"_$P($G(%(i)),"^",2)) S glb=glb+1
41: Q glb
42: ;
43: convpath(dir) ;--- convert path
44: N sl
45: S sl=$$slash
46: I dir="" Q ""
47: I dir="."_sl Q ""
48: I $E(dir,$L(dir))'=sl Q dir_sl
49: Q dir
50: ;
51: lb(str) ;---
52: Q $E(str,1,9)_$J("",10-$L(str))
53: ;
54: slash() ;--- get the OS specific directory delimiter (slash)
55: Q "/"
56: ;
57: dircmd() ;--
58: ;--- get the OS specific directory command
59: ;--- hmm!? how do I know which OS?
60: Q "ls"
61: ;
62: %error ;--- error - trap
63: W !,$ZE,!!
64: Q
65: ;
66: list() q $$out(1)_",list^%ugdir"
67:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>