2023-12-11 13:42:14 +01:00
|
|
|
~~~
|
2024-01-10 23:26:59 +01:00
|
|
|
:HOME here #4096 + ;
|
2023-12-11 13:42:14 +01:00
|
|
|
|
|
|
|
'%s/.config/retroforth/library/%s.retro 'library:.CONFIG s:const
|
|
|
|
'./library/%s.retro 'library:CWD s:const
|
|
|
|
|
|
|
|
:library:cwd library:CWD s:format ;
|
|
|
|
|
|
|
|
:library:.config
|
2024-01-10 23:26:59 +01:00
|
|
|
'HOME HOME unix:getenv
|
|
|
|
HOME library:.CONFIG s:format ;
|
2023-12-11 13:42:14 +01:00
|
|
|
|
|
|
|
:library:filename (s-s)
|
|
|
|
dup library:cwd
|
|
|
|
dup file:exists? [ nip ] if; drop
|
|
|
|
library:.config dup file:exists? [ ] if; drop s:empty ;
|
|
|
|
|
|
|
|
:library:contains? (s-f)
|
|
|
|
&library:cwd &library:.config bi &file:exists? bi@ or ;
|
|
|
|
|
|
|
|
:library:load
|
|
|
|
dup library:contains? [ library:filename include ]
|
2024-01-06 23:57:29 +01:00
|
|
|
[ 'ERROR:_Library_`%s`_was_not_found s:format s:put nl ] choose ;
|
2024-01-08 19:24:08 +01:00
|
|
|
|
|
|
|
'interface/library.retro s:dedup
|
|
|
|
dup 'library:load d:set-source
|
|
|
|
dup 'library:contains? d:set-source
|
|
|
|
dup 'library:filename d:set-source
|
|
|
|
dup 'library:.config d:set-source
|
|
|
|
dup 'library:cwd d:set-source
|
|
|
|
dup 'library:CWD d:set-source
|
|
|
|
dup 'library:.CONFIG d:set-source
|
|
|
|
dup 'HOME d:set-source
|
|
|
|
drop
|
2023-12-11 13:42:14 +01:00
|
|
|
~~~
|