mirror of
https://github.com/rwinkhart/glamour-temp-MUTN.git
synced 2026-09-02 23:17:34 -04:00
Make TermRenderer io.Reader & io.WriteCloser compatible
This commit is contained in:
@@ -19,7 +19,9 @@ import (
|
||||
)
|
||||
|
||||
type TermRenderer struct {
|
||||
md goldmark.Markdown
|
||||
md goldmark.Markdown
|
||||
buf bytes.Buffer
|
||||
renderBuf bytes.Buffer
|
||||
}
|
||||
|
||||
// Render initializes a new TermRenderer and renders a markdown with a specific
|
||||
@@ -81,6 +83,24 @@ func NewTermRendererFromBytes(b []byte, options ansi.Options) (*TermRenderer, er
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (tr *TermRenderer) Read(b []byte) (int, error) {
|
||||
return tr.renderBuf.Read(b)
|
||||
}
|
||||
|
||||
func (tr *TermRenderer) Write(b []byte) (int, error) {
|
||||
return tr.buf.Write(b)
|
||||
}
|
||||
|
||||
func (tr *TermRenderer) Close() error {
|
||||
err := tr.md.Convert(tr.buf.Bytes(), &tr.renderBuf)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
tr.buf.Reset()
|
||||
return nil
|
||||
}
|
||||
|
||||
// Render returns the markdown rendered into a string.
|
||||
func (tr *TermRenderer) Render(in string) (string, error) {
|
||||
b, err := tr.RenderBytes([]byte(in))
|
||||
|
||||
Reference in New Issue
Block a user