ref: 20f351ee4cd40b3b53e33805fc6226c837290ed7
parent: bfb9613a14ab2d93a4474e5486d22e52a9d5e2b3
author: Cameron Moore <moorereason@gmail.com>
date: Sat Nov 23 03:45:04 EST 2019
Minor cleanups Use fmt.Fprint were appropriate instead of Fprintf. Remove some unused code.
--- a/markup/highlight/highlight.go
+++ b/markup/highlight/highlight.go
@@ -22,7 +22,6 @@
"github.com/alecthomas/chroma/formatters/html"
"github.com/alecthomas/chroma/lexers"
"github.com/alecthomas/chroma/styles"
-
hl "github.com/gohugoio/hugo/markup/highlight/temphighlighting"
)
@@ -76,14 +75,15 @@
formatter := html.New(options...)
- fmt.Fprintf(w, `<div class="highlight">`)
+ fmt.Fprint(w, `<div class="highlight">`)
if err := formatter.Format(w, style, iterator); err != nil {
return "", err
}
- fmt.Fprintf(w, `</div>`)
+ fmt.Fprint(w, `</div>`)
return w.String(), nil
}
+
func GetCodeBlockOptions() func(ctx hl.CodeBlockContext) []html.Option {
return func(ctx hl.CodeBlockContext) []html.Option {
var language string
@@ -99,6 +99,7 @@
func getPreWrapper(language string) preWrapper {
return preWrapper{language: language}
}
+
func getHtmlPreWrapper(language string) html.Option {
return html.WithPreWrapper(getPreWrapper(language))
}
@@ -121,8 +122,8 @@
func WriteCodeTag(w io.Writer, language string) {
fmt.Fprint(w, "<code")
if language != "" {
- fmt.Fprintf(w, " class=\"language-"+language+"\"")
- fmt.Fprintf(w, " data-lang=\""+language+"\"")
+ fmt.Fprint(w, ` class="language-`+language+`"`)
+ fmt.Fprint(w, ` data-lang="`+language+`"`)
}
fmt.Fprint(w, ">")
}
--- a/markup/highlight/temphighlighting/highlighting_test.go
+++ b/markup/highlight/temphighlighting/highlighting_test.go
@@ -8,30 +8,11 @@
"strings"
"testing"
- "github.com/yuin/goldmark/util"
-
chromahtml "github.com/alecthomas/chroma/formatters/html"
"github.com/yuin/goldmark"
+ "github.com/yuin/goldmark/util"
)
-type preWrapper struct {
- language string
-}
-
-func (p preWrapper) Start(code bool, styleAttr string) string {
- w := &strings.Builder{}
- fmt.Fprintf(w, "<pre%s><code", styleAttr)
- if p.language != "" {
- fmt.Fprintf(w, " class=\"language-"+p.language)
- }
- fmt.Fprint(w, ">")
- return w.String()
-}
-
-func (p preWrapper) End(code bool) string {
- return "</code></pre>"
-}
-
func TestHighlighting(t *testing.T) {
var css bytes.Buffer
markdown := goldmark.New(
@@ -156,7 +137,6 @@
/* GenericSubheading */ .chroma .gu { color: #75715e }`) {
t.Error("failed to render CSS")
}
-
}
func TestHighlighting2(t *testing.T) {
@@ -240,9 +220,7 @@
{`hl_lines=["2-3",5],linenostart=5`, []int{2, 3, 5}},
{`hl_lines=["2-3"]`, []int{2, 3}},
} {
-
t.Run(fmt.Sprint(i), func(t *testing.T) {
-
var buffer bytes.Buffer
codeBlock := fmt.Sprintf(`bash {%s}
LINE1
@@ -269,11 +247,9 @@
}
})
}
-
}
func TestHighlightingLinenos(t *testing.T) {
-
outputLineNumbersInTable := `<div class="chroma">
<table class="lntable"><tr><td class="lntd">
<span class="lnt">1
@@ -297,7 +273,6 @@
{`linenos=foo`, false, false, `<span class="ln">1</span>LINE1`},
{`linenos=table`, false, false, outputLineNumbersInTable},
} {
-
t.Run(fmt.Sprint(i), func(t *testing.T) {
markdown := goldmark.New(
goldmark.WithExtensions(
@@ -328,8 +303,6 @@
if s != test.expect {
t.Fatal("got\n", s, "\nexpected\n", test.expect)
}
-
})
}
-
}