// Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package doc import ( "go/doc/comment" "io" ) // ToHTML converts comment text to formatted HTML. // // Deprecated: ToHTML cannot identify documentation links // in the doc comment, because they depend on knowing what // package the text came from, which is not included in this API. // // Given the *[doc.Package] p where text was found, // ToHTML(w, text, nil) can be replaced by: // // w.Write(p.HTML(text)) // // which is in turn shorthand for: // // w.Write(p.Printer().HTML(p.Parser().Parse(text))) // // If words may be non-nil, the longer replacement is: // // parser := p.Parser() // parser.Words = words // w.Write(p.Printer().HTML(parser.Parse(d))) func ToHTML(w io.Writer, text string, words map[string]string) { p := new(Package).Parser() p.Words = words d := p.Parse(text) pr := new(comment.Printer) w.Write(pr.HTML(d)) } // ToText converts comment text to formatted text. // // Deprecated: ToText cannot identify documentation links // in the doc comment, because they depend on knowing what // package the text came from, which is not included in this API. // // Given the *[doc.Package] p where text was found, // ToText(w, text, "", "\t", 80) can be replaced by: // // w.Write(p.Text(text)) // // In the general case, ToText(w, text, prefix, codePrefix, width) // can be replaced by: // // d := p.Parser().Parse(text) // pr := p.Printer() // pr.TextPrefix = prefix // pr.TextCodePrefix = codePrefix // pr.TextWidth = width // w.Write(pr.Text(d)) // // See the documentation for [Package.Text] and [comment.Printer.Text] // for more details. func ToText(w io.Writer, text string, prefix, codePrefix string, width int) { d := new(Package).Parser().Parse(text) pr := &comment.Printer{ TextPrefix: prefix, TextCodePrefix: codePrefix, TextWidth: width, } w.Write(pr.Text(d)) }