--- gforth/wf.fs 2005/09/27 13:50:43 1.39 +++ gforth/wf.fs 2006/03/19 23:24:57 1.44 @@ -1,6 +1,6 @@ \ wiki forth -\ Copyright (C) 2003,2004 Free Software Foundation, Inc. +\ Copyright (C) 2003,2004,2005 Free Software Foundation, Inc. \ This file is part of Gforth. @@ -31,6 +31,7 @@ require string.fs : parse" ( -- addr u ) '" parse 2drop '" parse ; : .' '' parse postpone SLiteral postpone type ; immediate : s' '' parse postpone SLiteral ; immediate +: .upcase ( addr u -- ) bounds ?DO I c@ toupper emit LOOP ; \ character recoding @@ -654,18 +655,34 @@ definitions \ HTML head Variable css-file +Variable print-file +Variable ie-css-file Variable content -Variable lang +Variable _charset +Variable _lang +Variable _favicon : lang@ ( -- addr u ) - lang @ IF lang $@ ELSE s" en" THEN ; + _lang @ IF _lang $@ ELSE s" en" THEN ; : .css ( -- ) css-file @ IF css-file $@len IF s" StyleSheet" s" rel" opt - css-file $@ href= + css-file $@ href= s" screen" s" media" opt s" text/css" s" type" opt s" link" tag/ cr - THEN THEN ; + THEN THEN + ie-css-file @ IF + ." " cr + THEN ; +: .print ( -- ) + print-file @ IF print-file $@len IF + s" StyleSheet" s" rel" opt + print-file $@ href= s" print" s" media" opt + s" text/css" s" type" opt s" link" tag/ cr + THEN THEN ; : .title ( addr u -- ) 1 envs ! oldenv off + .' ' cr .' ' cr @@ -674,7 +691,12 @@ Variable lang s" html" >env cr s" head" >env cr s" Content-Type" s" http-equiv" opt content $@ s" content" opt - s" meta" tag/ cr .css + s" meta" tag/ cr .css .print + _favicon @ IF + s" shortcut icon" s" rel" opt + _favicon $@ href= + s" image/x-icon" s" type" opt + s" link" tag/ cr THEN s" title" tagged cr -env ; @@ -709,7 +731,7 @@ Variable orig-date : pgp-key ( -- ) bl sword -trailing public-key $! ; : charset ( -- ) s" text/xhtml; charset=" content $! - bl sword -trailing content $+! ; + bl sword -trailing 2dup content $+! _charset $! ; charset iso-8859-1 @@ -718,7 +740,9 @@ charset iso-8859-1 : icons bl sword icon-prefix $! ; : lang - bl sword lang $! ; + bl sword _lang $! ; +: favicon + bl sword _favicon $! ; : expands '# sword expand-prefix $! bl sword expand-postfix $! ; icons icons @@ -736,6 +760,8 @@ Variable style$ : vlink ( -- ) parse" s" vlink" style ; : marginheight ( -- ) parse" s" marginheight" style ; : css ( -- ) parse" css-file $! ; +: print-css ( -- ) parse" print-file $! ; +: ie-css ( -- ) parse" ie-css-file $! ; : wf ( -- ) outfile-id >r