*** canonicaldir.com;9 Sun Feb 25 22:25:36 1996 --- canonicaldir.com;14 Wed Jul 10 04:52:14 1996 *************** *** 10,17 **** $! $! P1 = Original directory spec. $! P2 = symbol to put the result in. $ ! $ __debug = f$trnlnm("DEBUG_CANONICALDIR") $ $! There are five things that you should convert: $! < -> [, and > -> ] --- 10,51 ---- $! $! P1 = Original directory spec. $! P2 = symbol to put the result in. + $! P3 = comma-separated keywords: + $! COMPLETE if the directory spec. should be completed with missing parts + $! to form an absolute directory spec. $ ! $ p3 = ","+p3+"," ! $ __debug = f$trnlnm("DEBUG_CANONICALDIR") - ! .or. f$locate(",DEBUG,",p3) .ne. f$length(p3) ! $ __verify = f$locate(",VERIFY,",p3) .ne. f$length(p3) ! $ if __verify then set verify ! $ __complete_p = f$locate(",COMPLETE,",p3) .ne. f$length(p3) ! $ ! $ if __complete_p ! $ then ! $ __node = "" ! $ __dev = "" ! $ __dir = "" ! $ if p1 - "::" .nes. p1 ! $ then ! $ __node = f$extract(0, f$locate("::", p1) + 2, p1) ! $ p1 = p1 - __node) ! $ else ! $ __node := 'f$getsyi("NODENAME")':: ! $ endif ! $ if p1 - ":" .nes. p1 ! $ then ! $ __dev = f$extract(0, f$locate(":", p1) + 1, p1) ! $ p1 = p1 - __dev ! $ else ! $ __dev = f$trnlnm("SYS$DISK") ! $ endif ! $ if f$extract(0,2,p1) .eqs. "<." .or. f$extract(0,2,p1) .eqs. "[." ! $ then ! $ p1 = f$directory() + p1 ! $ endif ! $ p1 = __node + __dev + p1 ! $ endif $ $! There are five things that you should convert: $! < -> [, and > -> ]