forked from sourcegraph/syntaxhighlight
syntaxhighlight
Package syntaxhighlight provides syntax highlighting for code. It currently uses a language-independent lexer and performs decently on JavaScript, Java, Ruby, Python, Go, and C.
The main AsHTML(src []byte) ([]byte, error)
function outputs HTML that uses the same CSS classes as google-code-prettify, so any stylesheets for that should also work with this package.
Documentation on Sourcegraph
Installation
go get -u github.com/sourcegraph/syntaxhighlight
Example usage
The function AsHTML(src []byte) ([]byte, error)
returns an HTML-highlighted version of src
. The input source code can be in any language; the lexer is language independent.
package syntaxhighlight_test
import (
"fmt"
"os"
"github.com/sourcegraph/syntaxhighlight"
)
func Example() {
src := []byte(`
/* hello, world! */
var a = 3;
// b is a cool function
function b() {
return 7;
}`)
highlighted, err := syntaxhighlight.AsHTML(src)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
fmt.Println(string(highlighted))
}
Contributors
Contributions are welcome! Submit a pull request on GitHub.