tui: add tool rendering
cleaned up message rendering and changed cache semantics other smaller tweaks
This commit is contained in:
@@ -58,3 +58,29 @@ func (s *ChromaHighlighter) HighlightS(text string) (string, error) {
|
||||
s.formatter.Format(&sb, s.style, it)
|
||||
return sb.String(), nil
|
||||
}
|
||||
|
||||
func (s *ChromaHighlighter) HighlightLang(w io.Writer, text string, lang string) (error) {
|
||||
l := lexers.Get(lang)
|
||||
if l == nil {
|
||||
l = lexers.Fallback
|
||||
}
|
||||
l = chroma.Coalesce(l)
|
||||
old := s.lexer
|
||||
s.lexer = l
|
||||
err := s.Highlight(w, text)
|
||||
s.lexer = old
|
||||
return err
|
||||
}
|
||||
|
||||
func (s *ChromaHighlighter) HighlightLangS(text string, lang string) (string, error) {
|
||||
l := lexers.Get(lang)
|
||||
if l == nil {
|
||||
l = lexers.Fallback
|
||||
}
|
||||
l = chroma.Coalesce(l)
|
||||
old := s.lexer
|
||||
s.lexer = l
|
||||
highlighted, err := s.HighlightS(text)
|
||||
s.lexer = old
|
||||
return highlighted, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user