REBOL [] list: charset "*#" non-list: complement list ;empty: charset "" ;non-empty: complement empty space: charset " ^(tab)" ;non-space: complement space ;non-chars: charset " ^(tab)^/" ;chars: complement non-chars header1?: ["111" some space copy text to newline (header text 1)] header2?: ["222" some space copy text to newline (header text 2)] header3?: ["333" some space copy text to newline (header text 3)] header4?: ["444" some space copy text to newline (header text 4)] header5?: ["555" some space copy text to newline (header text 5)] header6?: ["666" some space copy text to newline (header text 6)] ;bullet?: ["*" some space copy text to "^/*" (bullet text 'begin)] ;bullet2?: ["*" some space copy text to "^/^/" (bullet text 'end)] enum?: ["#" some space copy text to "^/#" (enum text 'begin)] enum2?: ["#" some space copy text to "^/^/" (enum text 'end)] code?: [space copy text to "^/^/" (code text)] text?: [copy text to newline (textline text)] text2?: [copy text to "^/^/" (textline2 text)] image?: ["%<" some space copy text to newline (image text 'left)] image2?: ["%|" some space copy text to newline (image text 'center)] image3?: ["%>" some space copy text to newline (image text 'right)] title?: ["%RAPIDOC%" some space copy text to newline (title: text)] title2?: ["%RAPIDOC%" to newline] pagebreak?: ["---" any space to newline (pagebreak)] comment?: ["!!!" any space copy text to newline (comment text)] url?: ["://" some space copy text to " " any space copy text2 to newline (url text text2)] was_bullet: 0 was_enum: 0 rule: [some [ [newline newline mark: non-list :mark (if (was_bullet = 1) [output "^/" was_bullet: 0] if (was_enum = 1) [output "^/" was_enum: 0])] | [newline some newline mark: "*" (output "