Apply some more Golint suggestions

This commit is contained in:
bep
2015-03-06 18:07:50 +01:00
parent 224a2ddf3c
commit e685dfc0c6
2 changed files with 43 additions and 37 deletions

View File

@@ -37,6 +37,7 @@ var SummaryLength = 70
// Custom divider <!--more--> let's user define where summarization ends.
var SummaryDivider = []byte("<!--more-->")
// Blackfriday holds configuration values for Blackfriday rendering.
type Blackfriday struct {
AngledQuotes bool
Fractions bool
@@ -44,6 +45,7 @@ type Blackfriday struct {
Extensions []string
}
// NewBlackfriday creates a new Blackfriday with some sane defaults.
func NewBlackfriday() *Blackfriday {
return &Blackfriday{
AngledQuotes: false,
@@ -77,28 +79,27 @@ func StripHTML(s string) string {
// Shortcut strings with no tags in them
if !strings.ContainsAny(s, "<>") {
return s
} else {
s = stripHTMLReplacer.Replace(s)
}
s = stripHTMLReplacer.Replace(s)
// Walk through the string removing all tags
b := bp.GetBuffer()
defer bp.PutBuffer(b)
// Walk through the string removing all tags
b := bp.GetBuffer()
defer bp.PutBuffer(b)
inTag := false
for _, r := range s {
switch r {
case '<':
inTag = true
case '>':
inTag = false
default:
if !inTag {
b.WriteRune(r)
}
inTag := false
for _, r := range s {
switch r {
case '<':
inTag = true
case '>':
inTag = false
default:
if !inTag {
b.WriteRune(r)
}
}
return b.String()
}
return b.String()
}
// StripEmptyNav strips out empty <nav> tags from content.
@@ -111,6 +112,7 @@ func BytesToHTML(b []byte) template.HTML {
return template.HTML(string(b))
}
// GetHtmlRenderer creates a new Renderer with the given configuration.
func GetHtmlRenderer(defaultFlags int, ctx *RenderingContext) blackfriday.Renderer {
renderParameters := blackfriday.HtmlRendererParameters{
FootnoteAnchorPrefix: viper.GetString("FootnoteAnchorPrefix"),
@@ -141,7 +143,7 @@ func GetHtmlRenderer(defaultFlags int, ctx *RenderingContext) blackfriday.Render
return blackfriday.HtmlRendererWithParameters(htmlFlags, "", "", renderParameters)
}
func GetMarkdownExtensions(ctx *RenderingContext) int {
func getMarkdownExtensions(ctx *RenderingContext) int {
flags := 0 | blackfriday.EXTENSION_NO_INTRA_EMPHASIS |
blackfriday.EXTENSION_TABLES | blackfriday.EXTENSION_FENCED_CODE |
blackfriday.EXTENSION_AUTOLINK | blackfriday.EXTENSION_STRIKETHROUGH |
@@ -155,15 +157,15 @@ func GetMarkdownExtensions(ctx *RenderingContext) int {
return flags
}
func MarkdownRender(ctx *RenderingContext) []byte {
func markdownRender(ctx *RenderingContext) []byte {
return blackfriday.Markdown(ctx.Content, GetHtmlRenderer(0, ctx),
GetMarkdownExtensions(ctx))
getMarkdownExtensions(ctx))
}
func MarkdownRenderWithTOC(ctx *RenderingContext) []byte {
func markdownRenderWithTOC(ctx *RenderingContext) []byte {
return blackfriday.Markdown(ctx.Content,
GetHtmlRenderer(blackfriday.HTML_TOC, ctx),
GetMarkdownExtensions(ctx))
getMarkdownExtensions(ctx))
}
// ExtractTOC extracts Table of Contents from content.
@@ -202,6 +204,8 @@ func ExtractTOC(content []byte) (newcontent []byte, toc []byte) {
return
}
// RenderingContext holds contextual information, like content and configuration,
// for a given content renderin.g
type RenderingContext struct {
Content []byte
PageFmt string
@@ -219,23 +223,25 @@ func (c *RenderingContext) getConfig() *Blackfriday {
return c.Config
}
// RenderBytesWithTOC renders a []byte with table of contents included.
func RenderBytesWithTOC(ctx *RenderingContext) []byte {
switch ctx.PageFmt {
default:
return MarkdownRenderWithTOC(ctx)
return markdownRenderWithTOC(ctx)
case "markdown":
return MarkdownRenderWithTOC(ctx)
return markdownRenderWithTOC(ctx)
case "rst":
return []byte(GetRstContent(ctx.Content))
}
}
// RenderBytes renders a []byte.
func RenderBytes(ctx *RenderingContext) []byte {
switch ctx.PageFmt {
default:
return MarkdownRender(ctx)
return markdownRender(ctx)
case "markdown":
return MarkdownRender(ctx)
return markdownRender(ctx)
case "rst":
return []byte(GetRstContent(ctx.Content))
}
@@ -250,7 +256,7 @@ func TotalWords(s string) int {
func WordCount(s string) map[string]int {
m := make(map[string]int)
for _, f := range strings.Fields(s) {
m[f] += 1
m[f]++
}
return m