version 1.3, 2001/07/17 13:14:12
|
version 1.4, 2001/07/17 14:21:21
|
Line 20 s" " tag-option $!
|
Line 20 s" " tag-option $!
|
s' "' tag-option $+! ; |
s' "' tag-option $+! ; |
: href= ( addr u -- ) s" href" opt ; |
: href= ( addr u -- ) s" href" opt ; |
: src= ( addr u -- ) s" src" opt ; |
: src= ( addr u -- ) s" src" opt ; |
|
: alt= ( addr u -- ) s" alt" opt ; |
: align= ( addr u -- ) s" align" opt ; |
: align= ( addr u -- ) s" align" opt ; |
: mailto: ( addr u -- ) s' href="mailto:' tag-option $+! |
: mailto: ( addr u -- ) s' href="mailto:' tag-option $+! |
tag-option $+! s' "' tag-option $+! ; |
tag-option $+! s' "' tag-option $+! ; |
Line 75 Variable do-size
|
Line 76 Variable do-size
|
link-icon? link $@ href= s" a" tagged |
link-icon? link $@ href= s" a" tagged |
link-size? ; |
link-size? ; |
|
|
|
: .img ( -- ) '{ parse type '} parse '| $split |
|
dup IF 2swap alt= ELSE 2drop THEN src= s" img" tag ; |
|
|
\ line handling |
\ line handling |
|
|
|
: char? ( -- c ) >in @ char swap >in ! ; |
: parse-tag ( addr u char -- ) |
: parse-tag ( addr u char -- ) |
>r r@ parse type |
>r r@ parse type |
r> parse 2swap tagged ; |
r> parse 2swap tagged ; |
Line 84 Variable do-size
|
Line 89 Variable do-size
|
: .bold ( -- ) s" b" '* parse-tag ; |
: .bold ( -- ) s" b" '* parse-tag ; |
: .em ( -- ) s" em" '_ parse-tag ; |
: .em ( -- ) s" em" '_ parse-tag ; |
|
|
|
: do-word ( char -- ) |
|
CASE |
|
'* OF .bold ENDOF |
|
'_ OF .em ENDOF |
|
'[ OF .link ENDOF |
|
'{ OF .img ENDOF |
|
>in @ >r char drop |
|
source r@ /string >in @ r> - nip type |
|
ENDCASE ; |
|
|
: parse-line ( -- ) |
: parse-line ( -- ) |
BEGIN >in @ >r char r> >in ! |
BEGIN char? do-word source nip >in @ = UNTIL ; |
CASE |
|
'* OF .bold ENDOF |
: parse-to ( char -- ) >r |
'_ OF .em ENDOF |
BEGIN char? dup r@ <> WHILE |
'[ OF .link ENDOF |
do-word source nip >in @ = UNTIL ELSE drop THEN |
>in @ >r char drop |
r> parse type ; |
source r@ /string >in @ r> - nip type |
|
ENDCASE |
|
source nip >in @ = UNTIL ; |
|
|
|
\ paragraph handling |
\ paragraph handling |
|
|
Line 149 longtags set-current
|
Line 161 longtags set-current
|
: |> -env ; |
: |> -env ; |
: +| |line |
: +| |line |
BEGIN |
BEGIN |
|h '| parse type |
|h '| parse-to char? '+ = UNTIL line| ; |
>in @ >r char r> >in ! '+ = UNTIL line| ; |
|
: -| |line |
: -| |line |
BEGIN |
BEGIN |
|d '| parse type |
|d '| parse-to char? '- = UNTIL line| ; |
>in @ >r char r> >in ! '- = UNTIL line| ; |
|
|
|
definitions |
definitions |
|
|