diff --git a/markdown_test.go b/markdown_test.go index cfb69e5..625da6a 100644 --- a/markdown_test.go +++ b/markdown_test.go @@ -2,10 +2,10 @@ package markdown import ( "bytes" - "strings" "fmt" "os" "path/filepath" + "strings" "testing" ) diff --git a/output.go b/output.go index 7c02831..b89195e 100644 --- a/output.go +++ b/output.go @@ -96,7 +96,7 @@ func (w *htmlOut) s(s string) *htmlOut { return w } -/* print string, escaping for HTML +/* print string, escaping for HTML * If obfuscate selected, convert characters to hex or decimal entities at random */ func (w *htmlOut) str(s string) *htmlOut { diff --git a/parser.leg b/parser.leg index eeafcf3..4ef5d25 100644 --- a/parser.leg +++ b/parser.leg @@ -23,8 +23,8 @@ package markdown import ( "fmt" "io" - "strings" "log" + "strings" ) const ( @@ -33,29 +33,29 @@ const ( // Semantic value of a parsing action. type element struct { - key int + key int contents - children *element - next *element + children *element + next *element } // Information (label, URL and title) for a link. type link struct { - label *element - url string - title string + label *element + url string + title string } // Union for contents of an Element (string, list, or link). type contents struct { - str string + str string *link } // Types of semantic values returned by parsers. const ( - LIST = iota /* A generic list of values. For ordered and bullet lists, see below. */ - RAW /* Raw markdown to be processed further */ + LIST = iota /* A generic list of values. For ordered and bullet lists, see below. */ + RAW /* Raw markdown to be processed further */ SPACE LINEBREAK ELLIPSIS @@ -76,7 +76,7 @@ const ( LISTITEM BULLETLIST ORDEREDLIST - H1 /* Code assumes that H1..6 are in order. */ + H1 /* Code assumes that H1..6 are in order. */ H2 H3 H4 @@ -95,11 +95,11 @@ const ( ) type state struct { - extension Extensions - heap elemHeap - tree *element /* Results of parse. */ - references *element /* List of link references found. */ - notes *element /* List of footnotes found. */ + extension Extensions + heap elemHeap + tree *element /* Results of parse. */ + references *element /* List of link references found. */ + notes *element /* List of footnotes found. */ } %} @@ -854,12 +854,10 @@ DefMarker = &{ p.extension.Dlists } Defmark %% - /* * List manipulation functions */ - /* cons - cons an element onto a list, returning pointer to new head */ func cons(new, list *element) *element { @@ -878,14 +876,12 @@ func reverse(list *element) (new *element) { return } - /* * Auxiliary functions for parsing actions. * These make it easier to build up data structures (including lists) * in the parsing actions. */ - /* p.mkElem - generic constructor for element */ func (p *yyParser) mkElem(key int) *element { @@ -943,7 +939,6 @@ func (p *yyParser) mkLink(label *element, url, title string) (el *element) { return } - /* match_inlines - returns true if inline lists match (case-insensitive...) */ func match_inlines(l1, l2 *element) bool { @@ -963,17 +958,16 @@ func match_inlines(l1, l2 *element) bool { return false } case LINK, IMAGE: - return false /* No links or images within links */ + return false /* No links or images within links */ default: log.Fatalf("match_inlines encountered unknown key = %d\n", l1.key) } l1 = l1.next l2 = l2.next } - return l1 == nil && l2 == nil /* return true if both lists exhausted */ + return l1 == nil && l2 == nil /* return true if both lists exhausted */ } - /* find_reference - return true if link found in references matching label. * 'link' is modified with the matching url and title. */ @@ -987,7 +981,6 @@ func (p *yyParser) findReference(label *element) (*link, bool) { return nil, false } - /* find_note - return true if note found in notes matching label. * if found, 'result' is set to point to matched note. */ @@ -1000,7 +993,6 @@ func (p *yyParser) find_note(label string) (*element, bool) { return nil, false } - /* print tree of elements, for debugging only. */ func print_tree(w io.Writer, elt *element, indent int) { @@ -1027,41 +1019,41 @@ func print_tree(w io.Writer, elt *element, indent int) { } var keynames = [numVAL]string{ - LIST: "LIST", - RAW: "RAW", - SPACE: "SPACE", - LINEBREAK: "LINEBREAK", - ELLIPSIS: "ELLIPSIS", - EMDASH: "EMDASH", - ENDASH: "ENDASH", - APOSTROPHE: "APOSTROPHE", - SINGLEQUOTED: "SINGLEQUOTED", - DOUBLEQUOTED: "DOUBLEQUOTED", - STR: "STR", - LINK: "LINK", - IMAGE: "IMAGE", - CODE: "CODE", - HTML: "HTML", - EMPH: "EMPH", - STRONG: "STRONG", - PLAIN: "PLAIN", - PARA: "PARA", - LISTITEM: "LISTITEM", - BULLETLIST: "BULLETLIST", - ORDEREDLIST: "ORDEREDLIST", - H1: "H1", - H2: "H2", - H3: "H3", - H4: "H4", - H5: "H5", - H6: "H6", - BLOCKQUOTE: "BLOCKQUOTE", - VERBATIM: "VERBATIM", - HTMLBLOCK: "HTMLBLOCK", - HRULE: "HRULE", - REFERENCE: "REFERENCE", - NOTE: "NOTE", - DEFINITIONLIST: "DEFINITIONLIST", - DEFTITLE: "DEFTITLE", - DEFDATA: "DEFDATA", + LIST: "LIST", + RAW: "RAW", + SPACE: "SPACE", + LINEBREAK: "LINEBREAK", + ELLIPSIS: "ELLIPSIS", + EMDASH: "EMDASH", + ENDASH: "ENDASH", + APOSTROPHE: "APOSTROPHE", + SINGLEQUOTED: "SINGLEQUOTED", + DOUBLEQUOTED: "DOUBLEQUOTED", + STR: "STR", + LINK: "LINK", + IMAGE: "IMAGE", + CODE: "CODE", + HTML: "HTML", + EMPH: "EMPH", + STRONG: "STRONG", + PLAIN: "PLAIN", + PARA: "PARA", + LISTITEM: "LISTITEM", + BULLETLIST: "BULLETLIST", + ORDEREDLIST: "ORDEREDLIST", + H1: "H1", + H2: "H2", + H3: "H3", + H4: "H4", + H5: "H5", + H6: "H6", + BLOCKQUOTE: "BLOCKQUOTE", + VERBATIM: "VERBATIM", + HTMLBLOCK: "HTMLBLOCK", + HRULE: "HRULE", + REFERENCE: "REFERENCE", + NOTE: "NOTE", + DEFINITIONLIST: "DEFINITIONLIST", + DEFTITLE: "DEFTITLE", + DEFDATA: "DEFDATA", }