oh-my-posh/src/segments/dart.go

41 lines
877 B
Go
Raw Normal View History

2022-01-26 06:54:36 -08:00
package segments
2021-05-14 12:26:26 -07:00
import (
2022-11-09 11:27:54 -08:00
"oh-my-posh/platform"
"oh-my-posh/properties"
)
2022-05-24 01:13:01 -07:00
var (
dartExtensions = []string{"*.dart", "pubspec.yaml", "pubspec.yml", "pubspec.lock"}
dartFolders = []string{".dart_tool"}
)
2022-01-26 05:10:18 -08:00
type Dart struct {
2021-12-03 11:19:57 -08:00
language
2021-05-14 12:26:26 -07:00
}
func (d *Dart) Template() string {
return languageTemplate
2021-05-14 12:26:26 -07:00
}
2022-11-09 11:27:54 -08:00
func (d *Dart) Init(props properties.Properties, env platform.Environment) {
2021-12-03 11:19:57 -08:00
d.language = language{
2021-05-14 12:26:26 -07:00
env: env,
props: props,
2022-05-24 01:13:01 -07:00
extensions: dartExtensions,
folders: dartFolders,
2021-05-14 12:26:26 -07:00
commands: []*cmd{
{
executable: "dart",
args: []string{"--version"},
regex: `Dart SDK version: (?P<version>((?P<major>[0-9]+).(?P<minor>[0-9]+).(?P<patch>[0-9]+)))`,
},
},
2022-01-23 09:48:55 -08:00
versionURLTemplate: "https://dart.dev/guides/language/evolution#dart-{{ .Major }}{{ .Minor }}",
2021-05-14 12:26:26 -07:00
}
}
func (d *Dart) Enabled() bool {
return d.language.Enabled()
2021-05-14 12:26:26 -07:00
}