refactor render
This commit is contained in:
parent
b4b05bfab4
commit
f61dbe8bcd
67
render.go
67
render.go
@ -211,38 +211,6 @@ func (r *renderer) renderUnindented(name string, rg renderGuide, a []Attributes,
|
|||||||
printf("</%s>", name)
|
printf("</%s>", name)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *renderer) renderReaderChild(tagName string, rg renderGuide, block, lastBlock bool, rd io.Reader) bool {
|
|
||||||
printf := r.getPrintf(tagName)
|
|
||||||
if rg.verbatim {
|
|
||||||
r.clearWrapper()
|
|
||||||
indent := r.currentIndent
|
|
||||||
if !block {
|
|
||||||
indent += r.indent.Indent
|
|
||||||
}
|
|
||||||
|
|
||||||
r.copyIndented(indent, rd)
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
if rg.script {
|
|
||||||
r.clearWrapper()
|
|
||||||
printf("\n")
|
|
||||||
if r.err == nil {
|
|
||||||
_, r.err = io.Copy(r.out, rd)
|
|
||||||
}
|
|
||||||
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
if lastBlock {
|
|
||||||
printf("\n%s", r.currentIndent)
|
|
||||||
}
|
|
||||||
|
|
||||||
newWrapper := r.ensureWrapper()
|
|
||||||
r.copyEscaped(rd)
|
|
||||||
return newWrapper
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *renderer) renderChildTag(tagName string, block, lastBlock bool, ct Tag) (bool, bool) {
|
func (r *renderer) renderChildTag(tagName string, block, lastBlock bool, ct Tag) (bool, bool) {
|
||||||
printf := r.getPrintf(tagName)
|
printf := r.getPrintf(tagName)
|
||||||
|
|
||||||
@ -279,6 +247,38 @@ func (r *renderer) renderChildTag(tagName string, block, lastBlock bool, ct Tag)
|
|||||||
return true, false
|
return true, false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (r *renderer) renderReaderChild(tagName string, rg renderGuide, block, lastBlock bool, rd io.Reader) bool {
|
||||||
|
printf := r.getPrintf(tagName)
|
||||||
|
if rg.verbatim {
|
||||||
|
r.clearWrapper()
|
||||||
|
indent := r.currentIndent
|
||||||
|
if !block {
|
||||||
|
indent += r.indent.Indent
|
||||||
|
}
|
||||||
|
|
||||||
|
r.copyIndented(indent, rd)
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
if rg.script {
|
||||||
|
r.clearWrapper()
|
||||||
|
printf("\n")
|
||||||
|
if r.err == nil {
|
||||||
|
_, r.err = io.Copy(r.out, rd)
|
||||||
|
}
|
||||||
|
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
if lastBlock {
|
||||||
|
printf("\n%s", r.currentIndent)
|
||||||
|
}
|
||||||
|
|
||||||
|
newWrapper := r.ensureWrapper()
|
||||||
|
r.copyEscaped(rd)
|
||||||
|
return newWrapper
|
||||||
|
}
|
||||||
|
|
||||||
func (r *renderer) renderVerbatimChild(block bool, c any) {
|
func (r *renderer) renderVerbatimChild(block bool, c any) {
|
||||||
s := fmt.Sprint(c)
|
s := fmt.Sprint(c)
|
||||||
if s == "" {
|
if s == "" {
|
||||||
@ -404,9 +404,6 @@ func (r *renderer) renderIndented(name string, rg renderGuide, a []Attributes, c
|
|||||||
|
|
||||||
if block {
|
if block {
|
||||||
r.currentIndent, r.pwidth = originalIndent, originalWidth
|
r.currentIndent, r.pwidth = originalIndent, originalWidth
|
||||||
}
|
|
||||||
|
|
||||||
if block {
|
|
||||||
r.clearWrapper()
|
r.clearWrapper()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user