mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Update go-org to optimize code (#8824)
This commit is contained in:
		
							
								
								
									
										4
									
								
								vendor/github.com/niklasfasching/go-org/org/block.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								vendor/github.com/niklasfasching/go-org/org/block.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -80,5 +80,5 @@ func trimIndentUpTo(max int) func(string) string {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Example) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Block) String() string   { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Example) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n Block) String() string   { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/document.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/document.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -90,7 +90,7 @@ func New() *Configuration {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// String returns the pretty printed Org mode string for the given nodes (see OrgWriter).
 | 
			
		||||
func String(nodes []Node) string { return orgWriter.nodesAsString(nodes...) }
 | 
			
		||||
func String(nodes []Node) string { return orgWriter.WriteNodesAsString(nodes...) }
 | 
			
		||||
 | 
			
		||||
// Write is called after with an instance of the Writer interface to export a parsed Document into another format.
 | 
			
		||||
func (d *Document) Write(w Writer) (out string, err error) {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								vendor/github.com/niklasfasching/go-org/org/drawer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								vendor/github.com/niklasfasching/go-org/org/drawer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -93,5 +93,5 @@ func (d *PropertyDrawer) Get(key string) (string, bool) {
 | 
			
		||||
	return "", false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Drawer) String() string         { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n PropertyDrawer) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Drawer) String() string         { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n PropertyDrawer) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/footnote.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/footnote.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -32,4 +32,4 @@ func (d *Document) parseFootnoteDefinition(i int, parentStop stopFn) (int, Node)
 | 
			
		||||
	return consumed, definition
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n FootnoteDefinition) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n FootnoteDefinition) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/headline.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/headline.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -98,4 +98,4 @@ func (parent *Section) add(current *Section) {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Headline) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Headline) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										39
									
								
								vendor/github.com/niklasfasching/go-org/org/html_writer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										39
									
								
								vendor/github.com/niklasfasching/go-org/org/html_writer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -69,16 +69,13 @@ func NewHTMLWriter() *HTMLWriter {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *HTMLWriter) emptyClone() *HTMLWriter {
 | 
			
		||||
	wcopy := *w
 | 
			
		||||
	wcopy.Builder = strings.Builder{}
 | 
			
		||||
	return &wcopy
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *HTMLWriter) nodesAsString(nodes ...Node) string {
 | 
			
		||||
	tmp := w.emptyClone()
 | 
			
		||||
	WriteNodes(tmp, nodes...)
 | 
			
		||||
	return tmp.String()
 | 
			
		||||
func (w *HTMLWriter) WriteNodesAsString(nodes ...Node) string {
 | 
			
		||||
	original := w.Builder
 | 
			
		||||
	w.Builder = strings.Builder{}
 | 
			
		||||
	WriteNodes(w, nodes...)
 | 
			
		||||
	out := w.String()
 | 
			
		||||
	w.Builder = original
 | 
			
		||||
	return out
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *HTMLWriter) WriterWithExtensions() Writer {
 | 
			
		||||
@@ -104,12 +101,14 @@ func (w *HTMLWriter) WritePropertyDrawer(PropertyDrawer) {}
 | 
			
		||||
func (w *HTMLWriter) WriteBlock(b Block) {
 | 
			
		||||
	content := ""
 | 
			
		||||
	if isRawTextBlock(b.Name) {
 | 
			
		||||
		exportWriter := w.emptyClone()
 | 
			
		||||
		exportWriter.htmlEscape = false
 | 
			
		||||
		WriteNodes(exportWriter, b.Children...)
 | 
			
		||||
		content = strings.TrimRightFunc(exportWriter.String(), unicode.IsSpace)
 | 
			
		||||
		builder, htmlEscape := w.Builder, w.htmlEscape
 | 
			
		||||
		w.Builder, w.htmlEscape = strings.Builder{}, false
 | 
			
		||||
		WriteNodes(w, b.Children...)
 | 
			
		||||
		out := w.String()
 | 
			
		||||
		w.Builder, w.htmlEscape = builder, htmlEscape
 | 
			
		||||
		content = strings.TrimRightFunc(out, unicode.IsSpace)
 | 
			
		||||
	} else {
 | 
			
		||||
		content = w.nodesAsString(b.Children...)
 | 
			
		||||
		content = w.WriteNodesAsString(b.Children...)
 | 
			
		||||
	}
 | 
			
		||||
	switch name := b.Name; {
 | 
			
		||||
	case name == "SRC":
 | 
			
		||||
@@ -194,7 +193,7 @@ func (w *HTMLWriter) writeSection(section *Section) {
 | 
			
		||||
	// NOTE: To satisfy hugo ExtractTOC() check we cannot use `<li>\n` here. Doesn't really matter, just a note.
 | 
			
		||||
	w.WriteString("<li>")
 | 
			
		||||
	h := section.Headline
 | 
			
		||||
	title := cleanHeadlineTitleForHTMLAnchorRegexp.ReplaceAllString(w.nodesAsString(h.Title...), "")
 | 
			
		||||
	title := cleanHeadlineTitleForHTMLAnchorRegexp.ReplaceAllString(w.WriteNodesAsString(h.Title...), "")
 | 
			
		||||
	w.WriteString(fmt.Sprintf("<a href=\"#%s\">%s</a>\n", h.ID(), title))
 | 
			
		||||
	if len(section.Children) != 0 {
 | 
			
		||||
		w.WriteString("<ul>\n")
 | 
			
		||||
@@ -306,7 +305,7 @@ func (w *HTMLWriter) WriteRegularLink(l RegularLink) {
 | 
			
		||||
	}
 | 
			
		||||
	description := url
 | 
			
		||||
	if l.Description != nil {
 | 
			
		||||
		description = w.nodesAsString(l.Description...)
 | 
			
		||||
		description = w.WriteNodesAsString(l.Description...)
 | 
			
		||||
	}
 | 
			
		||||
	switch l.Kind() {
 | 
			
		||||
	case "image":
 | 
			
		||||
@@ -384,10 +383,10 @@ func (w *HTMLWriter) WriteHorizontalRule(h HorizontalRule) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *HTMLWriter) WriteNodeWithMeta(n NodeWithMeta) {
 | 
			
		||||
	out := w.nodesAsString(n.Node)
 | 
			
		||||
	out := w.WriteNodesAsString(n.Node)
 | 
			
		||||
	if p, ok := n.Node.(Paragraph); ok {
 | 
			
		||||
		if len(p.Children) == 1 && isImageOrVideoLink(p.Children[0]) {
 | 
			
		||||
			out = w.nodesAsString(p.Children[0])
 | 
			
		||||
			out = w.WriteNodesAsString(p.Children[0])
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	for _, attributes := range n.Meta.HTMLAttributes {
 | 
			
		||||
@@ -399,7 +398,7 @@ func (w *HTMLWriter) WriteNodeWithMeta(n NodeWithMeta) {
 | 
			
		||||
			if i != 0 {
 | 
			
		||||
				caption += " "
 | 
			
		||||
			}
 | 
			
		||||
			caption += w.nodesAsString(ns...)
 | 
			
		||||
			caption += w.WriteNodesAsString(ns...)
 | 
			
		||||
		}
 | 
			
		||||
		out = fmt.Sprintf("<figure>\n%s<figcaption>\n%s\n</figcaption>\n</figure>\n", out, caption)
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										22
									
								
								vendor/github.com/niklasfasching/go-org/org/inline.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								vendor/github.com/niklasfasching/go-org/org/inline.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -147,8 +147,8 @@ func (d *Document) parseExplicitLineBreakOrLatexFragment(input string, start int
 | 
			
		||||
	switch {
 | 
			
		||||
	case start+2 >= len(input):
 | 
			
		||||
	case input[start+1] == '\\' && start != 0 && input[start-1] != '\n':
 | 
			
		||||
		for i := start + 2; unicode.IsSpace(rune(input[i])); i++ {
 | 
			
		||||
			if i >= len(input) || input[i] == '\n' {
 | 
			
		||||
		for i := start + 2; i <= len(input)-1 && unicode.IsSpace(rune(input[i])); i++ {
 | 
			
		||||
			if input[i] == '\n' {
 | 
			
		||||
				return i + 1 - start, ExplicitLineBreak{}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
@@ -346,12 +346,12 @@ func (l RegularLink) Kind() string {
 | 
			
		||||
	return "regular"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Text) String() string              { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n LineBreak) String() string         { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n ExplicitLineBreak) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n StatisticToken) String() string    { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Emphasis) String() string          { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n LatexFragment) String() string     { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n FootnoteLink) String() string      { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n RegularLink) String() string       { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Timestamp) String() string         { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Text) String() string              { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n LineBreak) String() string         { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n ExplicitLineBreak) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n StatisticToken) String() string    { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n Emphasis) String() string          { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n LatexFragment) String() string     { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n FootnoteLink) String() string      { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n RegularLink) String() string       { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n Timestamp) String() string         { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										10
									
								
								vendor/github.com/niklasfasching/go-org/org/keyword.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								vendor/github.com/niklasfasching/go-org/org/keyword.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -177,8 +177,8 @@ func (d *Document) loadSetupFile(k Keyword) (int, Node) {
 | 
			
		||||
	return 1, k
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Comment) String() string      { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Keyword) String() string      { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n NodeWithMeta) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n NodeWithName) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Include) String() string      { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Comment) String() string      { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n Keyword) String() string      { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n NodeWithMeta) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n NodeWithName) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n Include) String() string      { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								vendor/github.com/niklasfasching/go-org/org/list.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								vendor/github.com/niklasfasching/go-org/org/list.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -109,6 +109,6 @@ func (d *Document) parseListItem(l List, i int, parentStop stopFn) (int, Node) {
 | 
			
		||||
	return i - start, ListItem{bullet, status, nodes}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n List) String() string                { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n ListItem) String() string            { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n DescriptiveListItem) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n List) String() string                { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n ListItem) String() string            { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n DescriptiveListItem) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										71
									
								
								vendor/github.com/niklasfasching/go-org/org/org_writer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										71
									
								
								vendor/github.com/niklasfasching/go-org/org/org_writer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -43,39 +43,33 @@ func (w *OrgWriter) WriterWithExtensions() Writer {
 | 
			
		||||
func (w *OrgWriter) Before(d *Document) {}
 | 
			
		||||
func (w *OrgWriter) After(d *Document)  {}
 | 
			
		||||
 | 
			
		||||
func (w *OrgWriter) emptyClone() *OrgWriter {
 | 
			
		||||
	wcopy := *w
 | 
			
		||||
	wcopy.Builder = strings.Builder{}
 | 
			
		||||
	return &wcopy
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *OrgWriter) nodesAsString(nodes ...Node) string {
 | 
			
		||||
	tmp := w.emptyClone()
 | 
			
		||||
	WriteNodes(tmp, nodes...)
 | 
			
		||||
	return tmp.String()
 | 
			
		||||
func (w *OrgWriter) WriteNodesAsString(nodes ...Node) string {
 | 
			
		||||
	builder := w.Builder
 | 
			
		||||
	w.Builder = strings.Builder{}
 | 
			
		||||
	WriteNodes(w, nodes...)
 | 
			
		||||
	out := w.String()
 | 
			
		||||
	w.Builder = builder
 | 
			
		||||
	return out
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *OrgWriter) WriteHeadline(h Headline) {
 | 
			
		||||
	tmp := w.emptyClone()
 | 
			
		||||
	tmp.WriteString(strings.Repeat("*", h.Lvl))
 | 
			
		||||
	start := w.Len()
 | 
			
		||||
	w.WriteString(strings.Repeat("*", h.Lvl))
 | 
			
		||||
	if h.Status != "" {
 | 
			
		||||
		tmp.WriteString(" " + h.Status)
 | 
			
		||||
		w.WriteString(" " + h.Status)
 | 
			
		||||
	}
 | 
			
		||||
	if h.Priority != "" {
 | 
			
		||||
		tmp.WriteString(" [#" + h.Priority + "]")
 | 
			
		||||
		w.WriteString(" [#" + h.Priority + "]")
 | 
			
		||||
	}
 | 
			
		||||
	tmp.WriteString(" ")
 | 
			
		||||
	WriteNodes(tmp, h.Title...)
 | 
			
		||||
	hString := tmp.String()
 | 
			
		||||
	w.WriteString(" ")
 | 
			
		||||
	WriteNodes(w, h.Title...)
 | 
			
		||||
	if len(h.Tags) != 0 {
 | 
			
		||||
		tString := ":" + strings.Join(h.Tags, ":") + ":"
 | 
			
		||||
		if n := w.TagsColumn - len(tString) - len(hString); n > 0 {
 | 
			
		||||
			w.WriteString(hString + strings.Repeat(" ", n) + tString)
 | 
			
		||||
		if n := w.TagsColumn - len(tString) - (w.Len() - start); n > 0 {
 | 
			
		||||
			w.WriteString(strings.Repeat(" ", n) + tString)
 | 
			
		||||
		} else {
 | 
			
		||||
			w.WriteString(hString + " " + tString)
 | 
			
		||||
			w.WriteString(" " + tString)
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		w.WriteString(hString)
 | 
			
		||||
	}
 | 
			
		||||
	w.WriteString("\n")
 | 
			
		||||
	if len(h.Children) != 0 {
 | 
			
		||||
@@ -123,7 +117,7 @@ func (w *OrgWriter) WritePropertyDrawer(d PropertyDrawer) {
 | 
			
		||||
 | 
			
		||||
func (w *OrgWriter) WriteFootnoteDefinition(f FootnoteDefinition) {
 | 
			
		||||
	w.WriteString(fmt.Sprintf("[fn:%s]", f.Name))
 | 
			
		||||
	content := w.nodesAsString(f.Children...)
 | 
			
		||||
	content := w.WriteNodesAsString(f.Children...)
 | 
			
		||||
	if content != "" && !unicode.IsSpace(rune(content[0])) {
 | 
			
		||||
		w.WriteString(" ")
 | 
			
		||||
	}
 | 
			
		||||
@@ -131,7 +125,7 @@ func (w *OrgWriter) WriteFootnoteDefinition(f FootnoteDefinition) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *OrgWriter) WriteParagraph(p Paragraph) {
 | 
			
		||||
	content := w.nodesAsString(p.Children...)
 | 
			
		||||
	content := w.WriteNodesAsString(p.Children...)
 | 
			
		||||
	if len(content) > 0 && content[0] != '\n' {
 | 
			
		||||
		w.WriteString(w.indent)
 | 
			
		||||
	}
 | 
			
		||||
@@ -141,7 +135,7 @@ func (w *OrgWriter) WriteParagraph(p Paragraph) {
 | 
			
		||||
func (w *OrgWriter) WriteExample(e Example) {
 | 
			
		||||
	for _, n := range e.Children {
 | 
			
		||||
		w.WriteString(w.indent + ":")
 | 
			
		||||
		if content := w.nodesAsString(n); content != "" {
 | 
			
		||||
		if content := w.WriteNodesAsString(n); content != "" {
 | 
			
		||||
			w.WriteString(" " + content)
 | 
			
		||||
		}
 | 
			
		||||
		w.WriteString("\n")
 | 
			
		||||
@@ -185,10 +179,11 @@ func (w *OrgWriter) WriteComment(c Comment) {
 | 
			
		||||
func (w *OrgWriter) WriteList(l List) { WriteNodes(w, l.Items...) }
 | 
			
		||||
 | 
			
		||||
func (w *OrgWriter) WriteListItem(li ListItem) {
 | 
			
		||||
	liWriter := w.emptyClone()
 | 
			
		||||
	liWriter.indent = w.indent + strings.Repeat(" ", len(li.Bullet)+1)
 | 
			
		||||
	WriteNodes(liWriter, li.Children...)
 | 
			
		||||
	content := strings.TrimPrefix(liWriter.String(), liWriter.indent)
 | 
			
		||||
	originalBuilder, originalIndent := w.Builder, w.indent
 | 
			
		||||
	w.Builder, w.indent = strings.Builder{}, w.indent+strings.Repeat(" ", len(li.Bullet)+1)
 | 
			
		||||
	WriteNodes(w, li.Children...)
 | 
			
		||||
	content := strings.TrimPrefix(w.String(), w.indent)
 | 
			
		||||
	w.Builder, w.indent = originalBuilder, originalIndent
 | 
			
		||||
	w.WriteString(w.indent + li.Bullet)
 | 
			
		||||
	if li.Status != "" {
 | 
			
		||||
		w.WriteString(fmt.Sprintf(" [%s]", li.Status))
 | 
			
		||||
@@ -207,14 +202,15 @@ func (w *OrgWriter) WriteDescriptiveListItem(di DescriptiveListItem) {
 | 
			
		||||
	}
 | 
			
		||||
	indent := w.indent + strings.Repeat(" ", len(di.Bullet)+1)
 | 
			
		||||
	if len(di.Term) != 0 {
 | 
			
		||||
		term := w.nodesAsString(di.Term...)
 | 
			
		||||
		term := w.WriteNodesAsString(di.Term...)
 | 
			
		||||
		w.WriteString(" " + term + " ::")
 | 
			
		||||
		indent = indent + strings.Repeat(" ", len(term)+4)
 | 
			
		||||
	}
 | 
			
		||||
	diWriter := w.emptyClone()
 | 
			
		||||
	diWriter.indent = indent
 | 
			
		||||
	WriteNodes(diWriter, di.Details...)
 | 
			
		||||
	details := strings.TrimPrefix(diWriter.String(), diWriter.indent)
 | 
			
		||||
	originalBuilder, originalIndent := w.Builder, w.indent
 | 
			
		||||
	w.Builder, w.indent = strings.Builder{}, indent
 | 
			
		||||
	WriteNodes(w, di.Details...)
 | 
			
		||||
	details := strings.TrimPrefix(w.String(), w.indent)
 | 
			
		||||
	w.Builder, w.indent = originalBuilder, originalIndent
 | 
			
		||||
	if len(details) > 0 && details[0] == '\n' {
 | 
			
		||||
		w.WriteString(details)
 | 
			
		||||
	} else {
 | 
			
		||||
@@ -239,7 +235,7 @@ func (w *OrgWriter) WriteTable(t Table) {
 | 
			
		||||
			w.WriteString(`|`)
 | 
			
		||||
			for _, column := range row.Columns {
 | 
			
		||||
				w.WriteString(` `)
 | 
			
		||||
				content := w.nodesAsString(column.Children...)
 | 
			
		||||
				content := w.WriteNodesAsString(column.Children...)
 | 
			
		||||
				if content == "" {
 | 
			
		||||
					content = " "
 | 
			
		||||
				}
 | 
			
		||||
@@ -326,9 +322,6 @@ func (w *OrgWriter) WriteRegularLink(l RegularLink) {
 | 
			
		||||
	} else if l.Description == nil {
 | 
			
		||||
		w.WriteString(fmt.Sprintf("[[%s]]", l.URL))
 | 
			
		||||
	} else {
 | 
			
		||||
		descriptionWriter := w.emptyClone()
 | 
			
		||||
		WriteNodes(descriptionWriter, l.Description...)
 | 
			
		||||
		description := descriptionWriter.String()
 | 
			
		||||
		w.WriteString(fmt.Sprintf("[[%s][%s]]", l.URL, description))
 | 
			
		||||
		w.WriteString(fmt.Sprintf("[[%s][%s]]", l.URL, w.WriteNodesAsString(l.Description...)))
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								vendor/github.com/niklasfasching/go-org/org/paragraph.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								vendor/github.com/niklasfasching/go-org/org/paragraph.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -42,5 +42,5 @@ func (d *Document) parseHorizontalRule(i int, parentStop stopFn) (int, Node) {
 | 
			
		||||
	return 1, HorizontalRule{}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Paragraph) String() string      { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n HorizontalRule) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Paragraph) String() string      { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
func (n HorizontalRule) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/table.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/github.com/niklasfasching/go-org/org/table.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -127,4 +127,4 @@ func isSpecialRow(rawColumns []string) bool {
 | 
			
		||||
	return isAlignRow
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (n Table) String() string { return orgWriter.nodesAsString(n) }
 | 
			
		||||
func (n Table) String() string { return orgWriter.WriteNodesAsString(n) }
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/niklasfasching/go-org/org/writer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/niklasfasching/go-org/org/writer.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -9,6 +9,7 @@ type Writer interface {
 | 
			
		||||
	String() string   // String is called at the very end to retrieve the final output.
 | 
			
		||||
 | 
			
		||||
	WriterWithExtensions() Writer
 | 
			
		||||
	WriteNodesAsString(...Node) string
 | 
			
		||||
 | 
			
		||||
	WriteKeyword(Keyword)
 | 
			
		||||
	WriteInclude(Include)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user