|
|
package main
import ( "io/ioutil" "os" "path/filepath"
"github.com/fatih/color" "github.com/gomarkdown/markdown" "github.com/gomarkdown/markdown/parser" )
func check(err error) { if err != nil { color.Red(err.Error()) } }
func readDir(dirpath string) []string { var elems []string _ = filepath.Walk(dirpath, func(path string, f os.FileInfo, err error) error { elems = append(elems, path) return nil }) return elems }
func readFile(path string) (string, error) { dat, err := ioutil.ReadFile(path) if err != nil { color.Red(path) return "", err } return string(dat), nil }
func fileToHTML(path string) (string, error) { mdExtensions := parser.NoIntraEmphasis | parser.Tables | parser.FencedCode | parser.Autolink | parser.Strikethrough | parser.SpaceHeadings | parser.HeadingIDs | parser.BackslashLineBreak | parser.DefinitionLists | parser.MathJax
mdcontent, err := readFile(path) if err != nil { return "", err } mdParser := parser.NewWithExtensions(mdExtensions) htmlcontent := markdown.ToHTML([]byte(mdcontent), mdParser, nil)
// htmlcontent := string(blackfriday.Run([]byte(mdcontent)))
return string(htmlcontent), nil }
|