Pretty printer.
Functions for building pieces of documents from string data.
Functions for joining documents together
Concatenates a list of documents together interspersed with a separator document.
Functions for fitting documents onto lines as space allows.
Tries to fit a document on a single line, replacing line breaks with single spaces where possible to achieve this.
Creates a hard line break. This always creates a new line, with subsequent text at the current indentation level.
Creates a line break that will render to a single space if the documents it separtes can be fitted onto one line, or a line break otherwise.
Functions for indenting and alinging documents.
Adds an indent of the current column position to all line breaks in the document. The first line will not be indented, only subsequent nested lines will be.
Adds an indent of the given number of spaces to all line breakss in the document. The first line will not be indented, only subsequent nested lines will be.
Adds an indent of the current column position to all line breaks in the document and a further indent of the specified number of columns. The first line will not be indented, only subsequent nested lines will be.
Functions for putting brackets around documents.
Places a document inside left and right book ends.
pretty 100 (surround (char '\') (char '/') string "hello")
== "\hello/"Functions for pretty printing documents.
The type of documents that can be pretty printed.