/* blocksatz-macro */ options results address 'TextPlus' 'BMode' 'line' 'UnBlock' 'Top' 'First' hailstring = "Blocksatz-Makro: Neue Textbreite?" RequestInt hailstring if result ~= "" then do /* Neue Textbreite */ 'Width' result if rc = 1 then do 'Display' 'Ungueltige Textbreite eingegeben!' exit end DoNotQuitFirstLoop = 1 do while DoNotQuitFirstLoop /* BlockBeginn markieren */ 'Block' DoNotQuitSecondLoop = 1 do while DoNotQuitSecondLoop 'Down' /* Textende? */ if rc = 1 then do DoNotQuitFirstLoop = 0 DoNotQuitSecondLoop = 0 end 'GetString' /* Leere Zeile? == Absatzende */ if result = "" then do 'Up' DoNotQuitSecondLoop = 0 end end /* Blockende markieren */ 'Block' /* Blocksatz */ 'Justify' 'block' /* an das Ende des aktuellen Blocks springen */ 'BBottom' /* und danach an den Beginn des naechsten Absatzes */ 'Down' 'Down' end 'UnBlock' 'Display' 'Blocksatz-Makro -- Text neu formatiert!' end else 'Display' 'Blocksatz-Makro -- Abbruch!'