3bmd
3bmd copied to clipboard
markdown processor in CL using esrap parser
and a bonus.
Microoptimization.
Only when generating HTML output for now.
These tests will help to improve parser. For example, nested lists are't working properly, but I'm afraid to broke something while fixing them. Thus tests should be added before any...
This should produce a warning _when printed_: ``` [something][non-existent] ```
There are two problems: * Parsed code goes as a list item's sibling despite that it has the same indentation as item's content. * And they are parsed as inline...
```lisp There is no applicable method for the generic function # when called with arguments (3BMD-DEFINITION-LISTS::DEFINITION-LIST # ((:TERMS ((3BMD-DEFINITION-LISTS::DEFINITION-TERM "test" " " "definition")) :DEFINITIONS ((3BMD-DEFINITION-LISTS::DEFINITION-LIST-ITEM (:PLAIN "The" " " "definition"...
Hello, This is surprising, but why not: ``` (3bmd:parse-string "rst") ; in: 3BMD:PARSE-STRING "rst" ; (3BMD:PARSE-STRING "rst") ; ; caught STYLE-WARNING: ; undefined function: 3BMD:PARSE-STRING ``` Slime finds this choice,...
Out of the box `3bmd` doesn't recognise that processing instructions are valid: ``` cl-user> (3bmd:parse-string-and-print-to-stream "" t) <?this is a valid processing instruction?> ``` At least according to the CommonMark...