mirror of
https://github.com/Myzel394/config-lsp.git
synced 2025-06-18 23:15:26 +02:00
89 lines
1.9 KiB
Go
89 lines
1.9 KiB
Go
package fields
|
|
|
|
import (
|
|
docvalues "config-lsp/doc-values"
|
|
"config-lsp/utils"
|
|
)
|
|
|
|
var BooleanField = docvalues.EnumValue{
|
|
EnforceValues: true,
|
|
Values: []docvalues.EnumString{
|
|
docvalues.CreateEnumString("yes"),
|
|
docvalues.CreateEnumString("on"),
|
|
docvalues.CreateEnumString("true"),
|
|
docvalues.CreateEnumString("1"),
|
|
|
|
docvalues.CreateEnumString("no"),
|
|
docvalues.CreateEnumString("off"),
|
|
docvalues.CreateEnumString("false"),
|
|
docvalues.CreateEnumString("0"),
|
|
},
|
|
}
|
|
|
|
var ColorField = docvalues.ArrayValue{
|
|
DuplicatesExtractor: &docvalues.SimpleDuplicatesExtractor,
|
|
Separator: " ",
|
|
SubValue: docvalues.OrValue{
|
|
Values: []docvalues.DeprecatedValue{
|
|
docvalues.NumberRangeValue(0, 255),
|
|
docvalues.HexColorValue{Allow12Bit: true},
|
|
docvalues.EnumValue{
|
|
EnforceValues: true,
|
|
Values: utils.MergeSlices(
|
|
fetchColors(),
|
|
fetchAttributes(),
|
|
[]docvalues.EnumString{
|
|
docvalues.CreateEnumString("normal"),
|
|
docvalues.CreateEnumString("default"),
|
|
docvalues.CreateEnumString("reset"),
|
|
},
|
|
),
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
func fetchColors() []docvalues.EnumString {
|
|
colors := []string{
|
|
"black",
|
|
"red",
|
|
"green",
|
|
"yellow",
|
|
"blue",
|
|
"magenta",
|
|
"cyan",
|
|
"white",
|
|
}
|
|
|
|
enums := make([]docvalues.EnumString, 0)
|
|
|
|
for _, color := range colors {
|
|
enums = append(enums, docvalues.CreateEnumString(color))
|
|
enums = append(enums, docvalues.CreateEnumString("bright"+color))
|
|
}
|
|
|
|
return enums
|
|
}
|
|
|
|
func fetchAttributes() []docvalues.EnumString {
|
|
attributes := []string{
|
|
"bold",
|
|
"dim",
|
|
"ul",
|
|
"blink",
|
|
"reverse",
|
|
"italic",
|
|
"strike",
|
|
}
|
|
|
|
enums := make([]docvalues.EnumString, 0)
|
|
|
|
for _, attribute := range attributes {
|
|
enums = append(enums, docvalues.CreateEnumString(attribute))
|
|
enums = append(enums, docvalues.CreateEnumString("no"+attribute))
|
|
enums = append(enums, docvalues.CreateEnumString("no-"+attribute))
|
|
}
|
|
|
|
return enums
|
|
}
|