version 1.18, 2002/01/05 20:16:18
|
version 1.19, 2002/09/14 08:20:21
|
Line 140
|
Line 140
|
2dup 2 u> swap 1+ c@ ': = and >r \ dos absoulte: c:/.... |
2dup 2 u> swap 1+ c@ ': = and >r \ dos absoulte: c:/.... |
over c@ '/ = >r |
over c@ '/ = >r |
over c@ '~ = >r |
over c@ '~ = >r |
\ 2dup 3 min S" ../" compare 0= r> or >r \ not catered for in expandtopic |
\ 2dup S" ../" string-prefix? r> or >r \ not catered for in expandtopic |
2 min S" ./" compare 0= |
S" ./" string-prefix? |
r> r> r> or or or ; |
r> r> r> or or or ; |
|
|
Create ofile 0 c, 255 chars allot |
Create ofile 0 c, 255 chars allot |
Line 157 Create tfile 0 c, 255 chars allot
|
Line 157 Create tfile 0 c, 255 chars allot
|
REPEAT ; |
REPEAT ; |
|
|
: remove~+ ( -- ) |
: remove~+ ( -- ) |
ofile count 3 min s" ~+/" compare 0= |
ofile count s" ~+/" string-prefix? |
IF |
IF |
ofile count 3 /string ofile place |
ofile count 3 /string ofile place |
THEN ; |
THEN ; |
|
|
: expandtopic ( -- ) \ stack effect correct? - anton |
: expandtopic ( -- ) \ stack effect correct? - anton |
\ expands "./" into an absolute name |
\ expands "./" into an absolute name |
ofile count 2 min s" ./" compare 0= |
ofile count s" ./" string-prefix? |
IF |
IF |
ofile count 1 /string tfile place |
ofile count 1 /string tfile place |
0 ofile c! sourcefilename extractpath ofile place |
0 ofile c! sourcefilename extractpath ofile place |
Line 178 Create tfile 0 c, 255 chars allot
|
Line 178 Create tfile 0 c, 255 chars allot
|
\ deletes phrases like "xy/.." out of our directory name 2dec97jaw |
\ deletes phrases like "xy/.." out of our directory name 2dec97jaw |
over swap |
over swap |
BEGIN dup WHILE |
BEGIN dup WHILE |
dup >r '/ scan 2dup 4 min s" /../" compare 0= |
dup >r '/ scan 2dup s" /../" string-prefix? |
IF |
IF |
dup r> - >r 4 /string over r> + 4 - |
dup r> - >r 4 /string over r> + 4 - |
swap 2dup + >r move dup r> over - |
swap 2dup + >r move dup r> over - |