1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
(define p-brief-ren
(let ((self (rdp-call p-brief-ren)))
(rdp-cond*
`((#(ENDTAG))
(#(STARTTAG DISP) ,(rdpp-rename 'QUOTE self))
(#(STARTTAG LISTE) ,(rdpp-rename 'LIST self))
(#(STARTTAG PKT) ,(rdpp-rename 'O self))
(#(STARTTAG) ,(rdpp-keep self))
,(pass-otherwise)
))))
(define p-adr
(let ((tatv (lambda (t sym)
(lout-tr-string (xatv t sym)))))
(rdp-repll
(lambda (t)
`(("
@ADDR
titel{" ,(tatv t 'TITEL) "}
vorname{" ,(tatv t 'VORNAME) "}
name{" ,(tatv t 'NAME) "}
firma{" ,(tatv t 'FIRMA) "}
strasse{" ,(tatv t 'STRASSE) "}
ort{" ,(tatv t 'ORT) "}
plz{ " ,(xatv t 'PLZ) "}
telefon{" ,(tatv t 'TELEFON) "}
telefax{" ,(tatv t 'TELEFAX) "}
")
#f))
rdp-leave)))
(define p-adresse (rdp-repll '(#f #f) p-adr))
(define p-brief
(rdp-repll
`(
(#(STARTTAG BRIEF)
#"@SysInclude{\"brief.lout\"}
@Text @Begin
@Marke fenster{" ,(lambda (t) (xatv t 'FENSTER)) "}
")
(#"
@End @Text
" #(ENDTAG BRIEF)))
(rdp-process p-brief-ren)
(rdp-cond
`((#(STARTTAG VON) ,(rdp-repll `(#\newline #"{Absender}\n") p-adresse))))
(rdp-map
(lambda (logo an inserted)
(stream-append an inserted logo))
(rdp-cond
`((#(STARTTAG LOGO) ,(rdp-repll `(#\newline #"{Absender}\n") p-text))))
(rdp-cond
`((#(STARTTAG AN) ,(rdp-repll `(#\newline #"{Adresse}\n") p-adresse))))
(rdp-insert #"\n@JFWBrief @Abs @Adr\n"))
(rdp-cond
`((#(STARTTAG DATUM) ,(rdp-repll `(#"\n@Datum{" #"}") p-text))))
(rdp-cond
`((#(STARTTAG BETR) ,(rdp-repll `(#"\n@Betreff{" #"}") p-text))))
(rdp-cond
`((#(STARTTAG ANREDE) ,(rdp-repll `(#"\n&0c " #"\n@LP\n") p-text))))
(rdp-cond
`((#(STARTTAG TEXT) ,(rdp-repll `(#f #f) p-body*))))
(rdp-cond
`((#(STARTTAG GRUSS) ,(rdp-repll `(#"\n// @Gruss{" "}") p-text))))
(rdp-cond
`((#(STARTTAG ANLAGE) ,(rdp-repll `(#"\n@Anlage{" #"}\n" ) p-body*))))
))
|