summaryrefslogtreecommitdiff
path: root/document_parser.go
diff options
context:
space:
mode:
Diffstat (limited to 'document_parser.go')
-rw-r--r--document_parser.go24
1 files changed, 18 insertions, 6 deletions
diff --git a/document_parser.go b/document_parser.go
index 3a0a2f8..74c14b6 100644
--- a/document_parser.go
+++ b/document_parser.go
@@ -62,8 +62,8 @@ func parseSub(parentDoc *Document, content []byte) (subdoc *Document) {
return subdoc
}
-// consumeLinesUntil given an element el, consume all lines until we found
-// a line with kind match with term or match with one in terms.
+// consumeLinesUntil given an element el, consume lines until we found a line
+// with kind match with term OR match with one of kind in the terms.
func (docp *documentParser) consumeLinesUntil(el *element, term int, terms []int) (line []byte) {
var (
logp = `consumeLinesUntil`
@@ -1283,8 +1283,14 @@ func (docp *documentParser) parseListOrdered(parent *element, title string, line
docp.kind == lineKindAttributeElement ||
docp.kind == lineKindBlockTitle ||
docp.kind == lineKindID ||
- docp.kind == lineKindIDShort ||
- docp.kind == lineKindText {
+ docp.kind == lineKindIDShort {
+ if docp.prevKind == lineKindEmpty ||
+ docp.prevKind == lineKindComment ||
+ docp.prevKind == lineKindBlockComment {
+ break
+ }
+ }
+ if docp.kind == lineKindText {
if docp.prevKind == lineKindEmpty {
break
}
@@ -1531,8 +1537,14 @@ func (docp *documentParser) parseListUnordered(parent, el *element, line []byte,
docp.kind == lineKindAdmonition ||
docp.kind == lineKindBlockTitle ||
docp.kind == lineKindID ||
- docp.kind == lineKindIDShort ||
- docp.kind == lineKindText {
+ docp.kind == lineKindIDShort {
+ if docp.prevKind == lineKindEmpty ||
+ docp.prevKind == lineKindComment ||
+ docp.prevKind == lineKindBlockComment {
+ break
+ }
+ }
+ if docp.kind == lineKindText {
if docp.prevKind == lineKindEmpty {
break
}