integrii / flaggy

Idiomatic Go input parsing with subcommands, positional values, and flags at any position. No required project or package layout and no external dependencies.
The Unlicense
858 stars 30 forks source link

Unknown arguments supplied #84

Open yougg opened 2 years ago

yougg commented 2 years ago

"Unknown arguments supplied" when the subcommand and flag have same shortname

// example.go
package main

import (
    "fmt"

    "github.com/integrii/flaggy"
)

func main() {
    subcmd := flaggy.NewSubcommand("testSubCmd")
    subcmd.ShortName = `t`
    var test string
    subcmd.String(&test, "t", "testFlag", "test flag")
    flaggy.AttachSubcommand(subcmd, 1)
    flaggy.Parse()
    fmt.Println(test)
}

go run example.go t -t hello
testSubCmd

Flags:
--version Displays the program version string.
-h --help Displays help with available flag, subcommand, and positional value parameters.
-t --testFlag test flag

Unknown arguments supplied: hello
exit status 2