in pkg/linguist/util.go [29:72]
func init() {
var regexps []string
bytes := []byte(files["data/vendor.yml"])
if err := yaml.Unmarshal(bytes, ®exps); err != nil {
log.Fatal(err)
return
}
vendorRE = regexp.MustCompile(strings.Join(regexps, "|"))
var moreregex []string
bytes = []byte(files["data/documentation.yml"])
if err := yaml.Unmarshal(bytes, &moreregex); err != nil {
log.Fatal(err)
return
}
doxRE = regexp.MustCompile(strings.Join(moreregex, "|"))
type language struct {
Extensions []string `yaml:"extensions,omitempty"`
Filenames []string `yaml:"filenames,omitempty"`
Interpreters []string `yaml:"interpreters,omitempty"`
Color string `yaml:"color,omitempty"`
}
languages := map[string]*language{}
bytes = []byte(files["data/languages.yml"])
if err := yaml.Unmarshal(bytes, &languages); err != nil {
log.Fatal(err)
}
for n, l := range languages {
for _, e := range l.Extensions {
extensions[e] = append(extensions[e], n)
log.Debugf("loading ext: %s for lang %s", e, l)
}
for _, f := range l.Filenames {
filenames[f] = append(filenames[f], n)
}
for _, i := range l.Interpreters {
interpreters[i] = append(interpreters[i], n)
}
colors[n] = l.Color
}
}