tartrazine/internal/code-generator/main.go

47 lines
1.1 KiB
Go
Raw Normal View History

2017-04-04 11:10:35 +00:00
package main
import (
"io/ioutil"
"log"
"srcd.works/simple-linguist.v1/internal/code-generator/generator"
2017-04-04 11:10:35 +00:00
)
const (
languagesYAML = ".linguist/lib/linguist/languages.yml"
langFile = "languages.go"
languagesTmplPath = "internal/code-generator/assets/languages.go.tmpl"
2017-04-04 11:10:35 +00:00
languagesTmpl = "languages.go.tmpl"
heuristicsRuby = ".linguist/lib/linguist/heuristics.rb"
contentFile = "content.go"
contentTmplPath = "internal/code-generator/assets/content.go.tmpl"
2017-04-04 11:10:35 +00:00
contentTmpl = "content.go.tmpl"
commitPath = ".git/refs/heads/master"
)
func main() {
commit, err := getCommit(commitPath)
if err != nil {
log.Printf("couldn't find commit: %v", err)
}
if err := generator.FromFile(languagesYAML, langFile, languagesTmplPath, languagesTmpl, commit, generator.Languages); err != nil {
log.Println(err)
}
2017-04-05 14:01:31 +00:00
if err := generator.FromFile(heuristicsRuby, contentFile, contentTmplPath, contentTmpl, commit, generator.Heuristics); err != nil {
log.Println(err)
}
2017-04-04 11:10:35 +00:00
}
func getCommit(path string) (string, error) {
commit, err := ioutil.ReadFile(path)
if err != nil {
return "", err
}
return string(commit), nil
}