\ Haeufig benutzte Textauszeichnungen: : Blue ; : ; : p4-1 !" Welche Funktionen sind moeglich?"

!" Natuerlich Text: " s\" !\" Irgend ein Text\"" !!
!" (Manchmal ist '" s\" s\" Etwa wenn man !\" erklaeren will\" !!" !! !" ' noetig)"

; : p4-2

!" Aber " !" immer" !" innerhalb eines Blockes:"

  • s\" !\" Eine Ueberschrift\" " !!
  • s\"

    !\" Einfacher Text\"

    " !!
  • s\"
  • !\" Listen, wie diese hier\"
  • " !!

    !" Eine neue Seite definieren: " !" " ; : p4-3

    !" Textauszeichnung:"

  • s\" !\" Fettdruck\" " !! !" : " !" Fettdruck"
  • s\" !\" Farbinvertierung\" " !! !" : " !" Farbinvertierung"
  • s\" !\" Unterstrichen\" " !! !" : " !" Unterstrichen"
  • ; : farbendemo'' !" ====" ; : farbendemo' 7 0 +do i postpone literal postpone 7 0 +do i postpone literal postpone farbendemo'' loop postpone
    loop ; immediate : farbendemo farbendemo'
    ; 256 Constant max-line Create line-buffer max-line 2 + allot 0 Value fd-in : open-input ( addr u -- ) r/o open-file throw to fd-in ; : printsource ( from to addr u -- ) open-input cr 0 begin 1+ line-buffer max-line fd-in read-line throw while swap 2over rot swap over >= if swap over <= if dup 0 U.R s" -> " ptype-type swap line-buffer swap ptype-type {br} else swap drop endif else swap drop swap drop endif repeat 2drop 2drop fd-in close-file throw ; : printCodeHeader ( end start namelen addr -- ) \ prints source code header containing line numbers swap 2dup type 2swap \ s" (" type 0 U.R s" -" type 0 U.R s" ): " type cr cr type ; swap 2swap cr printsource cr ; \ type emit emit ; : {source} ( -- ) ; : ( -- , xt-{source} ) ['] {source} , ; : {/source} ( -- ) dup dup dup dup @ swap cell + @ 2swap cell 2 * + @ swap cell 3 * + @ printCodeHeader 4 cells + ; : ( -- , xt-{/source} ) ['] {/source} , , , , , ; !" Dies ist eine Testpraesentation!"

    !" Eines Tages hatten wir [" ( ) !" Harald Steinlechner" !" und " ( ) !" Denis Knauf" !" ] die tolle Idee, eine Praesentationssoftware zu schreiben."

    \

    \ <||> !" Forth eignet sich gut für Domain specific languages." \ <||> !" Makros sind ein Heidenspass." \ <||> !" Execution tokens erzeugen unseren Code. text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text" \

    !" Ergebnis"

    !" Das hier"

    !" hallo"

    !" Sieht doch garnicht so schlecht aus"

    p4-1 p4-1 p4-2 p4-1 p4-2 p4-3 !" Und Farben"
  • !" Hintergrundfarbe: " s\" Yellow !\" text\" " !! !" : " Yellow !\" text"
  • !" Vordergrundfarbe: " s\" Brown !\" text\" " !! !" : " Brown !\" text"
  • !" 8 Farben sind moeglich:"

    farbendemo

    !" Und Source"
    s" presentation.fs" 10 20