Common Lisp Package: CL-MARKDOWN-TEST

README:

FUNCTION

Private

BLOCKQUOTE-STRIPPER (LINE)

Strips putative initial blockquote and up to 3 spaces

COPY-FILE (FROM TO &KEY (IF-DOES-NOT-EXIST ERROR) (IF-EXISTS ERROR))

Copies the file designated by the non-wild pathname designator FROM to the file designated by the non-wild pathname designator TO. The following keyword parameters are supported: * :if-exists this can be either :supersede or :error (the default). If it is :error then a source/target-target-already-exists-error will be signaled if the file designated by the TO pathname already exists. * :if-does-not-exist this can be either :ignore or :error (the default). If it is :error then a source/target-source-does-not-exist-error will be signaled if the FROM pathname designator does not exist.

HANDLE-SETEXT-HEADERS (DOCUMENT)

Find headers chunks that can match up with a previous line and make it so. Also convert line into a header line. Also need to fixup setext markers that are really horizontal rules markers.

MARKDOWN (SOURCE &KEY (STREAM *DEFAULT-STREAM*) (FORMAT *DEFAULT-FORMAT*) (ADDITIONAL-EXTENSIONS NIL) (RENDER-EXTENSIONS NIL) (PARSE-EXTENSIONS NIL) (PROPERTIES NIL) (PARENT *CURRENT-DOCUMENT*) (DOCUMENT-CLASS 'DOCUMENT))

Convert source into a markdown document object and optionally render it to stream using format. Source can be either a string or a pathname or a stream. Stream is like the stream argument in format; it can be a pathname or t (short for *standard-output*) or nil (which will place the output into a string). Format can be :html or :none. In the latter case, no output will be generated. The markdown command returns (as multiple values) the generated document object and any return value from the rendering (e.g., the string produced when the stream is nil).

Undocumented

ATX-HEADER-MARKUP-CLASS (LINE)

CHUNK-SOURCE (DOCUMENT SOURCE)

CL-MARKDOWN-AND-TIDY (BASENAME)

COMPARE-ALL

COMPARE-MARKDOWN-AND-CL-MARKDOWN (BASENAME)

COMPARISON-FILE-NAME (BASENAME)

CREATE-COMPARISON-FILE (BASENAME)

CREATE-ERROR-FILE (BASENAME CONDITION)

CREATE-MAIN-COMPARISON-PAGE

FILE->STRING (PATHNAME)

LINE-INDENTATION (LINE)

LINE-IS-BLOCKQUOTE-P (LINE)

LINE-IS-CODE-P (LINE)

LINE-IS-EMPTY-P (LINE)

LINE-IS-HORIZONTAL-RULE-P (LINE)

LINE-STARTS-WITH-BULLET-P (LINE)

LINE-STARTS-WITH-NUMBER-P (LINE)

MARKDOWN-AND-TIDY (BASENAME)

MAYBE-STRIP-LINE (LINE)

ONE-TAB-STRIPPER (LINE)

REMOVE-ATX-HEADER (LINE)

REMOVE-BULLET (LINE)

REMOVE-NUMBER (LINE)

SCAN-LINES-WITH-SCANNERS (LINES SCANNERS)

SYSTEM-NAMESTRING (PATHNAME)

SYSTEM-RELATIVE-PATHNAME (SYSTEM PATHNAME &KEY NAME TYPE)

TIDY (BASENAME INPUT-TYPE OUTPUT-TYPE)

MACRO

Private

WITH-TIMEOUT ((SECONDS) &BODY BODY)

Execute `body` for no more than `seconds` time. If `seconds` is exceeded, then a [timeout-error][] will be signaled. If `seconds` is nil, then the body will be run normally until it completes or is interrupted.

GENERIC-FUNCTION

Private

Undocumented

IT-STARTS-WITH-BLOCK-LEVEL-HTML-P (CHUNK)

RESET (THING)

SHELL-COMMAND (COMMAND &KEY INPUT)

SLOT-ACCESSOR

Private

Undocumented

CHUNKS (OBJECT)

ID (OBJECT)

SETFID (NEW-VALUE OBJECT)

INDENTATION (OBJECT)

SETFINDENTATION (NEW-VALUE OBJECT)

LINES (OBJECT)

MARKUP-CLASS (OBJECT)

SETFMARKUP-CLASS (NEW-VALUE OBJECT)

PARAGRAPH? (OBJECT)

SETFPARAGRAPH? (NEW-VALUE OBJECT)

PROPERTIES (OBJECT)

SETFPROPERTIES (NEW-VALUE OBJECT)

STRIPPERS (OBJECT)

TITLE (OBJECT)

SETFTITLE (NEW-VALUE OBJECT)

VARIABLE

Private

*DATA*

What a hack! Shoot me

Undocumented

*ALL-WELLS*

*ERRORS*

*PARSING-ENVIRONMENT*

*SPACES-PER-TAB*

*TEST-OUTPUT-DIRECTORY*

*TEST-SOURCE-DIRECTORY*

CLASS

Private

Undocumented