This commit is contained in:
parent
02c103e196
commit
e109f0b117
29
main.go
29
main.go
|
|
@ -344,9 +344,32 @@ func main() {
|
||||||
execFlag := flag.String("exec", "", "Execution parameter")
|
execFlag := flag.String("exec", "", "Execution parameter")
|
||||||
flag.Parse() // Парсим аргументы
|
flag.Parse() // Парсим аргументы
|
||||||
|
|
||||||
// Инициализация главного меню с использованием флага -c
|
var yamlPath string
|
||||||
// По умолчанию "menu.yml", что с учетом resolvePath превратится в "menu/menu.yml"
|
|
||||||
menu := NewMenu(*configFile)
|
// Проверяем, был ли явно задан флаг -c
|
||||||
|
isConfigSet := false
|
||||||
|
flag.Visit(func(f *flag.Flag) {
|
||||||
|
if f.Name == "c" {
|
||||||
|
isConfigSet = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
if isConfigSet {
|
||||||
|
// Если флаг задан, используем путь относительно текущей директории
|
||||||
|
// делаем его абсолютным, чтобы resolvePath не добавлял "menu"
|
||||||
|
if filepath.IsAbs(*configFile) {
|
||||||
|
yamlPath = *configFile
|
||||||
|
} else {
|
||||||
|
currDir, _ := os.Getwd()
|
||||||
|
yamlPath = filepath.Join(currDir, *configFile)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Если флаг не задан, используем стандартное поведение (добавится "menu")
|
||||||
|
yamlPath = *configFile
|
||||||
|
}
|
||||||
|
|
||||||
|
// Инициализация главного меню
|
||||||
|
menu := NewMenu(yamlPath)
|
||||||
|
|
||||||
if *execFlag != "" { // Проверяем, задан ли флаг --exec
|
if *execFlag != "" { // Проверяем, задан ли флаг --exec
|
||||||
items := strings.Split(*execFlag, "-") // Разделяем строку по "-"
|
items := strings.Split(*execFlag, "-") // Разделяем строку по "-"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue