Skip to content

Commit

Permalink
feat(format): escape link text
Browse files Browse the repository at this point in the history
  • Loading branch information
princjef committed Jun 11, 2023
1 parent 43f2be8 commit 0461d74
Show file tree
Hide file tree
Showing 16 changed files with 257 additions and 183 deletions.
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,15 +230,15 @@ Know of another project that is using gomarkdoc? Open an issue with a descriptio
## Index

- [type Renderer](<#Renderer>)
- [func NewRenderer(opts ...RendererOption) (*Renderer, error)](<#NewRenderer>)
- [func (out *Renderer) Example(ex *lang.Example) (string, error)](<#Renderer.Example>)
- [func (out *Renderer) File(file *lang.File) (string, error)](<#Renderer.File>)
- [func (out *Renderer) Func(fn *lang.Func) (string, error)](<#Renderer.Func>)
- [func (out *Renderer) Package(pkg *lang.Package) (string, error)](<#Renderer.Package>)
- [func (out *Renderer) Type(typ *lang.Type) (string, error)](<#Renderer.Type>)
- [func NewRenderer\(opts ...RendererOption\) \(\*Renderer, error\)](<#NewRenderer>)
- [func \(out \*Renderer\) Example\(ex \*lang.Example\) \(string, error\)](<#Renderer.Example>)
- [func \(out \*Renderer\) File\(file \*lang.File\) \(string, error\)](<#Renderer.File>)
- [func \(out \*Renderer\) Func\(fn \*lang.Func\) \(string, error\)](<#Renderer.Func>)
- [func \(out \*Renderer\) Package\(pkg \*lang.Package\) \(string, error\)](<#Renderer.Package>)
- [func \(out \*Renderer\) Type\(typ \*lang.Type\) \(string, error\)](<#Renderer.Type>)
- [type RendererOption](<#RendererOption>)
- [func WithFormat(format format.Format) RendererOption](<#WithFormat>)
- [func WithTemplateOverride(name, tmpl string) RendererOption](<#WithTemplateOverride>)
- [func WithFormat\(format format.Format\) RendererOption](<#WithFormat>)
- [func WithTemplateOverride\(name, tmpl string\) RendererOption](<#WithTemplateOverride>)


<a name="Renderer"></a>
Expand Down
96 changes: 48 additions & 48 deletions format/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,57 +13,57 @@ Each of the formats in this package contains the same set of formatting function
## Index

- [type AzureDevOpsMarkdown](<#AzureDevOpsMarkdown>)
- [func (f *AzureDevOpsMarkdown) Accordion(title, body string) (string, error)](<#AzureDevOpsMarkdown.Accordion>)
- [func (f *AzureDevOpsMarkdown) AccordionHeader(title string) (string, error)](<#AzureDevOpsMarkdown.AccordionHeader>)
- [func (f *AzureDevOpsMarkdown) AccordionTerminator() (string, error)](<#AzureDevOpsMarkdown.AccordionTerminator>)
- [func (f *AzureDevOpsMarkdown) Anchor(anchor string) string](<#AzureDevOpsMarkdown.Anchor>)
- [func (f *AzureDevOpsMarkdown) AnchorHeader(level int, text, anchor string) (string, error)](<#AzureDevOpsMarkdown.AnchorHeader>)
- [func (f *AzureDevOpsMarkdown) Bold(text string) (string, error)](<#AzureDevOpsMarkdown.Bold>)
- [func (f *AzureDevOpsMarkdown) CodeBlock(language, code string) (string, error)](<#AzureDevOpsMarkdown.CodeBlock>)
- [func (f *AzureDevOpsMarkdown) CodeHref(loc lang.Location) (string, error)](<#AzureDevOpsMarkdown.CodeHref>)
- [func (f *AzureDevOpsMarkdown) Escape(text string) string](<#AzureDevOpsMarkdown.Escape>)
- [func (f *AzureDevOpsMarkdown) Header(level int, text string) (string, error)](<#AzureDevOpsMarkdown.Header>)
- [func (f *AzureDevOpsMarkdown) Link(text, href string) (string, error)](<#AzureDevOpsMarkdown.Link>)
- [func (f *AzureDevOpsMarkdown) ListEntry(depth int, text string) (string, error)](<#AzureDevOpsMarkdown.ListEntry>)
- [func (f *AzureDevOpsMarkdown) LocalHref(headerText string) (string, error)](<#AzureDevOpsMarkdown.LocalHref>)
- [func (f *AzureDevOpsMarkdown) RawAnchorHeader(level int, text, anchor string) (string, error)](<#AzureDevOpsMarkdown.RawAnchorHeader>)
- [func (f *AzureDevOpsMarkdown) RawHeader(level int, text string) (string, error)](<#AzureDevOpsMarkdown.RawHeader>)
- [func (f *AzureDevOpsMarkdown) RawLocalHref(anchor string) string](<#AzureDevOpsMarkdown.RawLocalHref>)
- [func \(f \*AzureDevOpsMarkdown\) Accordion\(title, body string\) \(string, error\)](<#AzureDevOpsMarkdown.Accordion>)
- [func \(f \*AzureDevOpsMarkdown\) AccordionHeader\(title string\) \(string, error\)](<#AzureDevOpsMarkdown.AccordionHeader>)
- [func \(f \*AzureDevOpsMarkdown\) AccordionTerminator\(\) \(string, error\)](<#AzureDevOpsMarkdown.AccordionTerminator>)
- [func \(f \*AzureDevOpsMarkdown\) Anchor\(anchor string\) string](<#AzureDevOpsMarkdown.Anchor>)
- [func \(f \*AzureDevOpsMarkdown\) AnchorHeader\(level int, text, anchor string\) \(string, error\)](<#AzureDevOpsMarkdown.AnchorHeader>)
- [func \(f \*AzureDevOpsMarkdown\) Bold\(text string\) \(string, error\)](<#AzureDevOpsMarkdown.Bold>)
- [func \(f \*AzureDevOpsMarkdown\) CodeBlock\(language, code string\) \(string, error\)](<#AzureDevOpsMarkdown.CodeBlock>)
- [func \(f \*AzureDevOpsMarkdown\) CodeHref\(loc lang.Location\) \(string, error\)](<#AzureDevOpsMarkdown.CodeHref>)
- [func \(f \*AzureDevOpsMarkdown\) Escape\(text string\) string](<#AzureDevOpsMarkdown.Escape>)
- [func \(f \*AzureDevOpsMarkdown\) Header\(level int, text string\) \(string, error\)](<#AzureDevOpsMarkdown.Header>)
- [func \(f \*AzureDevOpsMarkdown\) Link\(text, href string\) \(string, error\)](<#AzureDevOpsMarkdown.Link>)
- [func \(f \*AzureDevOpsMarkdown\) ListEntry\(depth int, text string\) \(string, error\)](<#AzureDevOpsMarkdown.ListEntry>)
- [func \(f \*AzureDevOpsMarkdown\) LocalHref\(headerText string\) \(string, error\)](<#AzureDevOpsMarkdown.LocalHref>)
- [func \(f \*AzureDevOpsMarkdown\) RawAnchorHeader\(level int, text, anchor string\) \(string, error\)](<#AzureDevOpsMarkdown.RawAnchorHeader>)
- [func \(f \*AzureDevOpsMarkdown\) RawHeader\(level int, text string\) \(string, error\)](<#AzureDevOpsMarkdown.RawHeader>)
- [func \(f \*AzureDevOpsMarkdown\) RawLocalHref\(anchor string\) string](<#AzureDevOpsMarkdown.RawLocalHref>)
- [type Format](<#Format>)
- [type GitHubFlavoredMarkdown](<#GitHubFlavoredMarkdown>)
- [func (f *GitHubFlavoredMarkdown) Accordion(title, body string) (string, error)](<#GitHubFlavoredMarkdown.Accordion>)
- [func (f *GitHubFlavoredMarkdown) AccordionHeader(title string) (string, error)](<#GitHubFlavoredMarkdown.AccordionHeader>)
- [func (f *GitHubFlavoredMarkdown) AccordionTerminator() (string, error)](<#GitHubFlavoredMarkdown.AccordionTerminator>)
- [func (f *GitHubFlavoredMarkdown) Anchor(anchor string) string](<#GitHubFlavoredMarkdown.Anchor>)
- [func (f *GitHubFlavoredMarkdown) AnchorHeader(level int, text, anchor string) (string, error)](<#GitHubFlavoredMarkdown.AnchorHeader>)
- [func (f *GitHubFlavoredMarkdown) Bold(text string) (string, error)](<#GitHubFlavoredMarkdown.Bold>)
- [func (f *GitHubFlavoredMarkdown) CodeBlock(language, code string) (string, error)](<#GitHubFlavoredMarkdown.CodeBlock>)
- [func (f *GitHubFlavoredMarkdown) CodeHref(loc lang.Location) (string, error)](<#GitHubFlavoredMarkdown.CodeHref>)
- [func (f *GitHubFlavoredMarkdown) Escape(text string) string](<#GitHubFlavoredMarkdown.Escape>)
- [func (f *GitHubFlavoredMarkdown) Header(level int, text string) (string, error)](<#GitHubFlavoredMarkdown.Header>)
- [func (f *GitHubFlavoredMarkdown) Link(text, href string) (string, error)](<#GitHubFlavoredMarkdown.Link>)
- [func (f *GitHubFlavoredMarkdown) ListEntry(depth int, text string) (string, error)](<#GitHubFlavoredMarkdown.ListEntry>)
- [func (f *GitHubFlavoredMarkdown) LocalHref(headerText string) (string, error)](<#GitHubFlavoredMarkdown.LocalHref>)
- [func (f *GitHubFlavoredMarkdown) RawAnchorHeader(level int, text, anchor string) (string, error)](<#GitHubFlavoredMarkdown.RawAnchorHeader>)
- [func (f *GitHubFlavoredMarkdown) RawHeader(level int, text string) (string, error)](<#GitHubFlavoredMarkdown.RawHeader>)
- [func (f *GitHubFlavoredMarkdown) RawLocalHref(anchor string) string](<#GitHubFlavoredMarkdown.RawLocalHref>)
- [func \(f \*GitHubFlavoredMarkdown\) Accordion\(title, body string\) \(string, error\)](<#GitHubFlavoredMarkdown.Accordion>)
- [func \(f \*GitHubFlavoredMarkdown\) AccordionHeader\(title string\) \(string, error\)](<#GitHubFlavoredMarkdown.AccordionHeader>)
- [func \(f \*GitHubFlavoredMarkdown\) AccordionTerminator\(\) \(string, error\)](<#GitHubFlavoredMarkdown.AccordionTerminator>)
- [func \(f \*GitHubFlavoredMarkdown\) Anchor\(anchor string\) string](<#GitHubFlavoredMarkdown.Anchor>)
- [func \(f \*GitHubFlavoredMarkdown\) AnchorHeader\(level int, text, anchor string\) \(string, error\)](<#GitHubFlavoredMarkdown.AnchorHeader>)
- [func \(f \*GitHubFlavoredMarkdown\) Bold\(text string\) \(string, error\)](<#GitHubFlavoredMarkdown.Bold>)
- [func \(f \*GitHubFlavoredMarkdown\) CodeBlock\(language, code string\) \(string, error\)](<#GitHubFlavoredMarkdown.CodeBlock>)
- [func \(f \*GitHubFlavoredMarkdown\) CodeHref\(loc lang.Location\) \(string, error\)](<#GitHubFlavoredMarkdown.CodeHref>)
- [func \(f \*GitHubFlavoredMarkdown\) Escape\(text string\) string](<#GitHubFlavoredMarkdown.Escape>)
- [func \(f \*GitHubFlavoredMarkdown\) Header\(level int, text string\) \(string, error\)](<#GitHubFlavoredMarkdown.Header>)
- [func \(f \*GitHubFlavoredMarkdown\) Link\(text, href string\) \(string, error\)](<#GitHubFlavoredMarkdown.Link>)
- [func \(f \*GitHubFlavoredMarkdown\) ListEntry\(depth int, text string\) \(string, error\)](<#GitHubFlavoredMarkdown.ListEntry>)
- [func \(f \*GitHubFlavoredMarkdown\) LocalHref\(headerText string\) \(string, error\)](<#GitHubFlavoredMarkdown.LocalHref>)
- [func \(f \*GitHubFlavoredMarkdown\) RawAnchorHeader\(level int, text, anchor string\) \(string, error\)](<#GitHubFlavoredMarkdown.RawAnchorHeader>)
- [func \(f \*GitHubFlavoredMarkdown\) RawHeader\(level int, text string\) \(string, error\)](<#GitHubFlavoredMarkdown.RawHeader>)
- [func \(f \*GitHubFlavoredMarkdown\) RawLocalHref\(anchor string\) string](<#GitHubFlavoredMarkdown.RawLocalHref>)
- [type PlainMarkdown](<#PlainMarkdown>)
- [func (f *PlainMarkdown) Accordion(title, body string) (string, error)](<#PlainMarkdown.Accordion>)
- [func (f *PlainMarkdown) AccordionHeader(title string) (string, error)](<#PlainMarkdown.AccordionHeader>)
- [func (f *PlainMarkdown) AccordionTerminator() (string, error)](<#PlainMarkdown.AccordionTerminator>)
- [func (f *PlainMarkdown) Anchor(anchor string) string](<#PlainMarkdown.Anchor>)
- [func (f *PlainMarkdown) AnchorHeader(level int, text, anchor string) (string, error)](<#PlainMarkdown.AnchorHeader>)
- [func (f *PlainMarkdown) Bold(text string) (string, error)](<#PlainMarkdown.Bold>)
- [func (f *PlainMarkdown) CodeBlock(language, code string) (string, error)](<#PlainMarkdown.CodeBlock>)
- [func (f *PlainMarkdown) CodeHref(loc lang.Location) (string, error)](<#PlainMarkdown.CodeHref>)
- [func (f *PlainMarkdown) Escape(text string) string](<#PlainMarkdown.Escape>)
- [func (f *PlainMarkdown) Header(level int, text string) (string, error)](<#PlainMarkdown.Header>)
- [func (f *PlainMarkdown) Link(text, href string) (string, error)](<#PlainMarkdown.Link>)
- [func (f *PlainMarkdown) ListEntry(depth int, text string) (string, error)](<#PlainMarkdown.ListEntry>)
- [func (f *PlainMarkdown) LocalHref(headerText string) (string, error)](<#PlainMarkdown.LocalHref>)
- [func (f *PlainMarkdown) RawAnchorHeader(level int, text, anchor string) (string, error)](<#PlainMarkdown.RawAnchorHeader>)
- [func (f *PlainMarkdown) RawHeader(level int, text string) (string, error)](<#PlainMarkdown.RawHeader>)
- [func (f *PlainMarkdown) RawLocalHref(anchor string) string](<#PlainMarkdown.RawLocalHref>)
- [func \(f \*PlainMarkdown\) Accordion\(title, body string\) \(string, error\)](<#PlainMarkdown.Accordion>)
- [func \(f \*PlainMarkdown\) AccordionHeader\(title string\) \(string, error\)](<#PlainMarkdown.AccordionHeader>)
- [func \(f \*PlainMarkdown\) AccordionTerminator\(\) \(string, error\)](<#PlainMarkdown.AccordionTerminator>)
- [func \(f \*PlainMarkdown\) Anchor\(anchor string\) string](<#PlainMarkdown.Anchor>)
- [func \(f \*PlainMarkdown\) AnchorHeader\(level int, text, anchor string\) \(string, error\)](<#PlainMarkdown.AnchorHeader>)
- [func \(f \*PlainMarkdown\) Bold\(text string\) \(string, error\)](<#PlainMarkdown.Bold>)
- [func \(f \*PlainMarkdown\) CodeBlock\(language, code string\) \(string, error\)](<#PlainMarkdown.CodeBlock>)
- [func \(f \*PlainMarkdown\) CodeHref\(loc lang.Location\) \(string, error\)](<#PlainMarkdown.CodeHref>)
- [func \(f \*PlainMarkdown\) Escape\(text string\) string](<#PlainMarkdown.Escape>)
- [func \(f \*PlainMarkdown\) Header\(level int, text string\) \(string, error\)](<#PlainMarkdown.Header>)
- [func \(f \*PlainMarkdown\) Link\(text, href string\) \(string, error\)](<#PlainMarkdown.Link>)
- [func \(f \*PlainMarkdown\) ListEntry\(depth int, text string\) \(string, error\)](<#PlainMarkdown.ListEntry>)
- [func \(f \*PlainMarkdown\) LocalHref\(headerText string\) \(string, error\)](<#PlainMarkdown.LocalHref>)
- [func \(f \*PlainMarkdown\) RawAnchorHeader\(level int, text, anchor string\) \(string, error\)](<#PlainMarkdown.RawAnchorHeader>)
- [func \(f \*PlainMarkdown\) RawHeader\(level int, text string\) \(string, error\)](<#PlainMarkdown.RawHeader>)
- [func \(f \*PlainMarkdown\) RawLocalHref\(anchor string\) string](<#PlainMarkdown.RawLocalHref>)


<a name="AzureDevOpsMarkdown"></a>
Expand Down
26 changes: 13 additions & 13 deletions format/formatcore/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,19 @@ Package formatcore provides utilities for creating formatters like those found i

## Index

- [func Anchor(anchor string) string](<#Anchor>)
- [func AnchorHeader(level int, text, anchor string) (string, error)](<#AnchorHeader>)
- [func Bold(text string) string](<#Bold>)
- [func CodeBlock(code string) string](<#CodeBlock>)
- [func Escape(text string) string](<#Escape>)
- [func GFMAccordion(title, body string) string](<#GFMAccordion>)
- [func GFMAccordionHeader(title string) string](<#GFMAccordionHeader>)
- [func GFMAccordionTerminator() string](<#GFMAccordionTerminator>)
- [func GFMCodeBlock(language, code string) string](<#GFMCodeBlock>)
- [func Header(level int, text string) (string, error)](<#Header>)
- [func Link(text, href string) string](<#Link>)
- [func ListEntry(depth int, text string) string](<#ListEntry>)
- [func PlainText(text string) string](<#PlainText>)
- [func Anchor\(anchor string\) string](<#Anchor>)
- [func AnchorHeader\(level int, text, anchor string\) \(string, error\)](<#AnchorHeader>)
- [func Bold\(text string\) string](<#Bold>)
- [func CodeBlock\(code string\) string](<#CodeBlock>)
- [func Escape\(text string\) string](<#Escape>)
- [func GFMAccordion\(title, body string\) string](<#GFMAccordion>)
- [func GFMAccordionHeader\(title string\) string](<#GFMAccordionHeader>)
- [func GFMAccordionTerminator\(\) string](<#GFMAccordionTerminator>)
- [func GFMCodeBlock\(language, code string\) string](<#GFMCodeBlock>)
- [func Header\(level int, text string\) \(string, error\)](<#Header>)
- [func Link\(text, href string\) string](<#Link>)
- [func ListEntry\(depth int, text string\) string](<#ListEntry>)
- [func PlainText\(text string\) string](<#PlainText>)


<a name="Anchor"></a>
Expand Down
2 changes: 1 addition & 1 deletion format/formatcore/base.go
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ func Link(text, href string) string {
return text
}

return fmt.Sprintf("[%s](<%s>)", text, href)
return fmt.Sprintf("[%s](<%s>)", Escape(text), href)
}

// ListEntry generates an unordered list entry with the provided text at the
Expand Down
Loading

0 comments on commit 0461d74

Please sign in to comment.