version 1.10, 2003/03/09 15:16:45
|
version 1.15, 2006/12/17 16:18:09
|
Line 1
|
Line 1
|
\ report words used from the various wordsets |
\ report words used from the various wordsets |
|
|
\ Copyright (C) 1996,1998,1999,2003 Free Software Foundation, Inc. |
\ Copyright (C) 1996,1998,1999,2003,2005 Free Software Foundation, Inc. |
|
|
\ This file is part of Gforth. |
\ This file is part of Gforth. |
|
|
Line 42
|
Line 42
|
vocabulary ans-report-words ans-report-words definitions |
vocabulary ans-report-words ans-report-words definitions |
|
|
: wordset ( "name" -- ) |
: wordset ( "name" -- ) |
lastxt >body |
latestxt >body |
create |
create |
0 , \ link to next wordset |
0 , \ link to next wordset |
0 0 2, \ array of nfas |
0 0 2, \ array of nfas |
( lastlinkp ) last @ swap ! \ set link ptr of last wordset |
( lastlinkp ) latest swap ! \ set link ptr of last wordset |
; |
; |
|
|
wordlist constant wordsets wordsets set-current |
wordlist constant wordsets wordsets set-current |
create CORE 0 , 0 0 2, |
create CORE 0 , 0 0 2, |
wordset CORE-EXT |
wordset CORE-EXT |
|
wordset CORE-EXT-obsolescent |
wordset BLOCK |
wordset BLOCK |
wordset BLOCK-EXT |
wordset BLOCK-EXT |
wordset DOUBLE |
wordset DOUBLE |
Line 72 wordset SEARCH-EXT
|
Line 73 wordset SEARCH-EXT
|
wordset STRING |
wordset STRING |
wordset TOOLS |
wordset TOOLS |
wordset TOOLS-EXT |
wordset TOOLS-EXT |
|
wordset TOOLS-EXT-obsolescent |
|
|
|
\ www.forth200x.org CfV extension names |
|
wordset X:deferred |
|
wordset X:extension-query |
|
wordset X:parse-name |
|
wordset X:defined |
|
wordset X:required |
|
wordset X:ekeys |
|
wordset X:fp-stack |
|
|
wordset non-ANS |
wordset non-ANS |
|
|
ans-report-words definitions |
ans-report-words definitions |
|
|
: answord ( "name wordset pronounciation" -- ) |
: standardword { D: wordname D: wordset -- } |
\ check the documentaion of an ans word |
|
name { D: wordname } |
|
name { D: wordset } |
|
name { D: pronounciation } |
|
wordname find-name |
wordname find-name |
?dup-if |
?dup-if |
sp@ cell nextname create drop |
sp@ cell nextname create drop |
wordset wordsets search-wordlist 0= abort" wordlist unknown" , |
wordset wordsets search-wordlist 0= abort" wordset unknown" , |
endif ; |
endif ; |
|
|
|
: answord ( "name wordset pronounciation" -- ) |
|
\ check the documentation of an ans word |
|
parse-name parse-name parse-name 2drop standardword ; |
|
|
|
: xword ( "name wordset" ) |
|
parse-name parse-name standardword ; |
|
|
table constant answords answords set-current |
table constant answords answords set-current |
warnings @ warnings off |
warnings @ warnings off |
include ./answords.fs |
include ./answords.fs |
|
include ./xwords.fs |
warnings ! |
warnings ! |
ans-report-words definitions |
ans-report-words definitions |
|
|
Line 140 ans-report-words definitions
|
Line 157 ans-report-words definitions
|
>body ['] branch xt>threaded over ! |
>body ['] branch xt>threaded over ! |
cell+ >r >body r> ! ; |
cell+ >r >body r> ! ; |
|
|
|
: print-names ( endaddr startaddr -- ) |
|
space 1 -rot |
|
u+do ( pos ) |
|
i @ name>string nip 1+ { len } |
|
len + ( newpos ) |
|
dup cols 4 - >= if |
|
cr space drop len 1+ |
|
endif |
|
i @ .name |
|
cell +loop |
|
drop ; |
|
|
forth definitions |
forth definitions |
ans-report-words |
ans-report-words |
|
|
Line 153 ans-report-words
|
Line 182 ans-report-words
|
dup >r name>int >body dup @ swap cell+ 2@ dup |
dup >r name>int >body dup @ swap cell+ 2@ dup |
if |
if |
." from " r@ .name ." :" cr |
." from " r@ .name ." :" cr |
bounds |
bounds print-names cr |
u+do |
|
i @ .name |
|
cell |
|
+loop |
|
cr |
|
else |
else |
2drop |
2drop |
endif |
endif |