335// Timeline selects an over-time view. With ByAuthor, runs the author
336// timeline report (plan 04); alone, runs the languages-over-time report
337▶// (plan 05). With Hotspots set, the combination errors out.
338var Timeline = false
339
· · ·
469 t := strings.Split(s, ":")
470 if len(t) != 2 {
471▶ printError(fmt.Sprintf("ignoring malformed count-as rule %q: expected format <from>:<to>", s))
472 continue
473 }
· · ·
489 // extension, so no mapping was registered. Warn rather than silently
490 // ignoring the rule, since count-as cannot mint new categories yet.
491▶ printError(fmt.Sprintf("ignoring count-as rule %q: target %q is not a known language or extension", s, t[1]))
492 }
493}
· · ·
527// Because regex patterns and paths legitimately contain ':', name and baselang
528// are peeled from the right and the pattern is whatever remains in between.
529▶func parseCountAsPattern(s string) (CountRule, error) {
530 engine := MatchGlob
531 rest := s
· · ·
543 lastColon := strings.LastIndex(rest, ":")
544 if lastColon == -1 {
545▶ return CountRule{}, fmt.Errorf("expected format [engine:]pattern:name:baselang")
546 }
547 baseLanguage := rest[lastColon+1:]
+ 9 more matches in this file