mirror of
https://github.com/ralsina/tartrazine.git
synced 2025-06-28 19:09:32 -03:00
Squashed 'go-enry/' content from commit 7e3a9a7
git-subtree-dir: go-enry
git-subtree-split: 7e3a9a7241
This commit is contained in:
75
internal/code-generator/assets/languageInfo.go.tmpl
Normal file
75
internal/code-generator/assets/languageInfo.go.tmpl
Normal file
@ -0,0 +1,75 @@
|
||||
package data
|
||||
|
||||
// LanguageInfo exposes the data for a language's Linguist YAML entry as a Go struct.
|
||||
// See https://github.com/github/linguist/blob/master/lib/linguist/languages.yml
|
||||
type LanguageInfo struct {
|
||||
// Name is the language name. May contain symbols not safe for use in some filesystems (e.g., `F*`).
|
||||
Name string
|
||||
// FSName is the filesystem safe name. Will only be set if Name is not safe for use in all filesystems.
|
||||
FSName string
|
||||
// Type is the language Type. See data.Type for values.
|
||||
Type Type
|
||||
// Color is the CSS hex color to represent the language. Only used if type is "programming" or "markup".
|
||||
Color string
|
||||
// Group is the name of the parent language. Languages in a group are counted in the statistics as the parent language.
|
||||
Group string
|
||||
// Aliases is a slice of additional aliases (implicitly includes name.downcase)
|
||||
Aliases []string
|
||||
// Extensions is a slice of associated extensions (the first one is considered the primary extension).
|
||||
Extensions []string
|
||||
// A slice of associated interpreters
|
||||
Interpreters []string
|
||||
// Filenames is a slice of filenames commonly associated with the language.
|
||||
Filenames []string
|
||||
// MimeType (maps to codemirror_mime_type in linguist.yaml) is the string name of the file mime type used for highlighting whenever a file is edited.
|
||||
MimeType string
|
||||
// TMScope is the TextMate scope that represents this programming language.
|
||||
TMScope string
|
||||
// AceMode is the name of the Ace Mode used for highlighting whenever a file is edited.
|
||||
AceMode string
|
||||
// CodeMirrorMode is the name of the CodeMirror Mode used for highlighting whenever a file is edited.
|
||||
CodeMirrorMode string
|
||||
// Wrap is a boolean flag to enable line wrapping in an editor.
|
||||
Wrap bool
|
||||
// LanguageID is the Linguist-assigned numeric ID for the language.
|
||||
LanguageID int
|
||||
}
|
||||
|
||||
// LanguageInfoByID allows accessing LanguageInfo by a language's ID.
|
||||
var LanguageInfoByID = map[int]LanguageInfo{
|
||||
{{range $language, $info := . -}}
|
||||
{{$info.LanguageID}}: LanguageInfo{
|
||||
Name: "{{$language}}",
|
||||
FSName: "{{$info.FSName}}",
|
||||
Type: TypeForString("{{$info.Type}}"),
|
||||
Color: "{{$info.Color}}",
|
||||
Group: "{{$info.Group}}",
|
||||
Aliases: []string{
|
||||
{{range $alias := $info.Aliases -}}
|
||||
"{{$alias}}",
|
||||
{{end -}}
|
||||
},
|
||||
Extensions: []string{
|
||||
{{range $extension := $info.Extensions -}}
|
||||
"{{$extension}}",
|
||||
{{end -}}
|
||||
},
|
||||
Interpreters: []string{
|
||||
{{range $interpreter := $info.Interpreters -}}
|
||||
"{{$interpreter}}",
|
||||
{{end -}}
|
||||
},
|
||||
Filenames: []string{
|
||||
{{range $filename := $info.Filenames -}}
|
||||
"{{$filename}}",
|
||||
{{end -}}
|
||||
},
|
||||
MimeType: "{{$info.MimeType}}",
|
||||
TMScope: "{{$info.TMScope}}",
|
||||
AceMode: "{{$info.AceMode}}",
|
||||
CodeMirrorMode: "{{$info.CodeMirrorMode}}",
|
||||
Wrap: {{$info.Wrap}},
|
||||
LanguageID: {{$info.LanguageID}},
|
||||
},
|
||||
{{end -}}
|
||||
}
|
Reference in New Issue
Block a user