@@ -27,7 +27,7 @@ import (
2727 "testing"
2828
2929 "github.com/opencontainers/image-spec/schema"
30- "github.com/russross/blackfriday"
30+ "github.com/russross/blackfriday/v2 "
3131)
3232
3333var (
@@ -120,9 +120,12 @@ type renderer struct {
120120 fn func (text []byte , lang string )
121121}
122122
123- func (r * renderer ) BlockCode (out * bytes.Buffer , text []byte , lang string ) {
124- r .fn (text , lang )
125- r .Renderer .BlockCode (out , text , lang )
123+ func (r * renderer ) RenderNode (w io.Writer , node * blackfriday.Node , entering bool ) blackfriday.WalkStatus {
124+ if node .Type == blackfriday .CodeBlock {
125+ lang := bytes .TrimRight (node .Info , "\t " )
126+ r .fn (node .Literal , string (lang ))
127+ }
128+ return r .Renderer .RenderNode (w , node , entering )
126129}
127130
128131type example struct {
@@ -174,7 +177,7 @@ func extractExamples(rd io.Reader) ([]example, error) {
174177
175178 var examples []example
176179 renderer := & renderer {
177- Renderer : blackfriday .HtmlRenderer ( 0 , "test test" , "" ),
180+ Renderer : blackfriday .NewHTMLRenderer (blackfriday. HTMLRendererParameters {} ),
178181 fn : func (text []byte , lang string ) {
179182 examples = append (examples , parseExample (lang , string (text )))
180183 },
@@ -184,9 +187,9 @@ func extractExamples(rd io.Reader) ([]example, error) {
184187 // the side-effect of calling back for each code block.
185188 // TODO(stevvooe): Consider just parsing these with a scanner. It will be
186189 // faster and we can retain file, line no.
187- blackfriday .MarkdownOptions (p , renderer , blackfriday. Options {
188- Extensions : blackfriday .EXTENSION_FENCED_CODE ,
189- } )
190+ _ = blackfriday .Run (p ,
191+ blackfriday .WithRenderer ( renderer ) ,
192+ blackfriday . WithExtensions ( blackfriday . FencedCode ) )
190193
191194 return examples , nil
192195}
0 commit comments