()
| 33 | launchTUI() |
| 34 | } |
| 35 | func handleCommandLine() { |
| 36 | if len(os.Args) < 2 { |
| 37 | printUsage() |
| 38 | return |
| 39 | } |
| 40 | command := os.Args[1] |
| 41 | switch command { |
| 42 | case "install": |
| 43 | if len(os.Args) < 3 { |
| 44 | fmt.Println("Error: 'install' requires a version argument") |
| 45 | fmt.Println("Usage: govm install <version>") |
| 46 | fmt.Println("Example: govm install 1.21") |
| 47 | return |
| 48 | } |
| 49 | version := os.Args[2] |
| 50 | version = strings.TrimPrefix(version, "go") |
| 51 | cli.InstallVersion(version) |
| 52 | case "use": |
| 53 | if len(os.Args) < 3 { |
| 54 | fmt.Println("Error: 'use' requires a version argument") |
| 55 | fmt.Println("Usage: govm use <version>") |
| 56 | fmt.Println("Example: govm use 1.21") |
| 57 | return |
| 58 | } |
| 59 | version := os.Args[2] |
| 60 | version = strings.TrimPrefix(version, "go") |
| 61 | cli.UseVersion(version) |
| 62 | case "delete": |
| 63 | if len(os.Args) < 3 { |
| 64 | fmt.Println("Error: 'delete' requires a version argument") |
| 65 | fmt.Println("Usage: govm delete <version>") |
| 66 | fmt.Println("Example: govm delete 1.21") |
| 67 | return |
| 68 | } |
| 69 | version := os.Args[2] |
| 70 | version = strings.TrimPrefix(version, "go") |
| 71 | cli.DeleteVersion(version) |
| 72 | case "list": |
| 73 | cli.ListVersions() |
| 74 | case "help": |
| 75 | printUsage() |
| 76 | default: |
| 77 | fmt.Printf("Unknown command: %s\n", command) |
| 78 | printUsage() |
| 79 | } |
| 80 | } |
| 81 | func printUsage() { |
| 82 | fmt.Println("GoVM - Go Version Manager") |
| 83 | fmt.Println("\nUsage:") |
no test coverage detected