diff --git a/connector/curl.go b/connector/curl.go index 0e44edd..8198813 100644 --- a/connector/curl.go +++ b/connector/curl.go @@ -19,6 +19,7 @@ var curl2HttpieTransformerMap = map[curl.LongName]httpieTransformer.Transformer{ "verbose": httpieTransformer.Verbose, "referer": httpieTransformer.Referer, "cookie": httpieTransformer.Cookie, + "insecure": httpieTransformer.Verify, } func Curl2Httpie(args []string) (cmdStringer fmt.Stringer, warningMessages []WarningMessage, err error) { diff --git a/httpie/flag.go b/httpie/flag.go index 40785ac..135b88e 100644 --- a/httpie/flag.go +++ b/httpie/flag.go @@ -2,29 +2,35 @@ package httpie import ( "fmt" + flag "github.com/spf13/pflag" ) type Flag struct { - Long string - Short byte - HasArg bool - Arg string + Long string + Short byte + HasArg bool + Arg string + Separator string } func (f *Flag) SetShort(s byte) { f.Short = s } -func (f *Flag) SetArg(arg string) { +func (f *Flag) SetArg(arg string, separator string) { f.HasArg = true f.Arg = arg + f.Separator = separator } func (f *Flag) String() string { arg := "" if f.HasArg { - arg = fmt.Sprintf(` '%s'`, f.Arg) + if f.Separator == "" { + f.Separator = " " // Use whitespace as default separator + } + arg = fmt.Sprintf(`%s%s`, f.Separator, f.Arg) } return fmt.Sprintf("--%s%s", f.Long, arg) } diff --git a/transformers/httpie/transformers.go b/transformers/httpie/transformers.go index 3d20f59..db0266c 100644 --- a/transformers/httpie/transformers.go +++ b/transformers/httpie/transformers.go @@ -78,7 +78,7 @@ func URL(cl *httpie.CmdLine, o *curl.Option) { func User(cl *httpie.CmdLine, o *curl.Option) { f := httpie.NewFlag("auth") - f.SetArg(o.Arg) + f.SetArg(o.Arg, " ") cl.AddFlag(f) } @@ -104,5 +104,11 @@ func Cookie(cl *httpie.CmdLine, o *curl.Option) { cl.AddItem(h) } +func Verify(cl *httpie.CmdLine, o *curl.Option) { + h := httpie.NewFlag("verify") + h.SetArg("no", "=") + cl.AddFlag(h) +} + func Noop(cl *httpie.CmdLine, o *curl.Option) { }