turn download into a subcommand
This commit is contained in:
parent
70e617594a
commit
538af8435b
1 changed files with 29 additions and 10 deletions
39
main.go
39
main.go
|
@ -120,19 +120,10 @@ func say(enabled bool, format string, args ...any) {
|
||||||
fmt.Printf(format+"\n", args...)
|
fmt.Printf(format+"\n", args...)
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func downloadUgoiraCmd(args []string, flags CliFlags) {
|
||||||
var flags CliFlags
|
|
||||||
flag.StringVar(&flags.outputFileName, "o", "", "Ugoira output file name")
|
|
||||||
flag.StringVar(&flags.manifestFileName, "M", "", "Ugoira manifest output file name")
|
|
||||||
flag.StringVar(&flags.userAgent, "A", "", "User agent to use when doing GET requests")
|
|
||||||
flag.BoolVar(&flags.verbose, "v", false, "Enable verbosity")
|
|
||||||
flag.Parse()
|
|
||||||
|
|
||||||
args := flag.Args()
|
|
||||||
if len(args) == 0 {
|
if len(args) == 0 {
|
||||||
die("expected post ID")
|
die("expected post ID")
|
||||||
}
|
}
|
||||||
|
|
||||||
postIdStr := args[0]
|
postIdStr := args[0]
|
||||||
postId, err := strconv.ParseUint(postIdStr, 10, 0)
|
postId, err := strconv.ParseUint(postIdStr, 10, 0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -141,3 +132,31 @@ func main() {
|
||||||
say(flags.verbose, "Working on post %d", postId)
|
say(flags.verbose, "Working on post %d", postId)
|
||||||
getUgoira(PostId(postId), flags)
|
getUgoira(PostId(postId), flags)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
var flags CliFlags
|
||||||
|
downloadCmd := flag.NewFlagSet("download", flag.ExitOnError)
|
||||||
|
u2vCmd := flag.NewFlagSet("u2v", flag.ExitOnError)
|
||||||
|
|
||||||
|
downloadCmd.StringVar(&flags.outputFileName, "o", "", "Ugoira output file name")
|
||||||
|
downloadCmd.StringVar(&flags.manifestFileName, "M", "", "Ugoira manifest output file name")
|
||||||
|
downloadCmd.StringVar(&flags.userAgent, "A", "", "User agent to use when doing GET requests")
|
||||||
|
downloadCmd.BoolVar(&flags.verbose, "v", false, "Enable verbosity")
|
||||||
|
|
||||||
|
if len(os.Args) < 2 {
|
||||||
|
die("expected command")
|
||||||
|
}
|
||||||
|
|
||||||
|
switch os.Args[1] {
|
||||||
|
case "download", "down", "d":
|
||||||
|
downloadCmd.Parse(os.Args[2:])
|
||||||
|
restArgs := downloadCmd.Args()
|
||||||
|
downloadUgoiraCmd(restArgs, flags)
|
||||||
|
case "u2v":
|
||||||
|
u2vCmd.Parse(os.Args[2:])
|
||||||
|
//restArgs := u2vCmd.Args()
|
||||||
|
fmt.Println("convert command")
|
||||||
|
default:
|
||||||
|
die("invalid command '%s'", os.Args[1])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue