@cryptotaxi247 / kubo / commits / 4da824c95

Show flags in `ipfs commands`

License: MIT Signed-off-by: rht <rhtbot@gmail.com>

rht committed Oct 17, 2015 at 08:52 UTC 4da824c954bd0351ec855083ad72d2873d0eb78c
1 file changed +16 -2
core/commands/commands.go
+16 -2
@@ -18,6 +18,7 @@ import (
18 type Command struct {
19 Name string
20 Subcommands []Command
21 + Options []cmds.Option
22 }
23
24 // CommandsCmd takes in a root command,
@@ -51,6 +52,7 @@ func cmd2outputCmd(name string, cmd *cmds.Command) Command {
52 output := Command{
53 Name: name,
54 Subcommands: make([]Command, len(cmd.Subcommands)),
55 + Options: cmd.Options,
56 }
57
58 i := 0
@@ -67,9 +69,21 @@ func cmdPathStrings(cmd *Command) []string {
69
70 var recurse func(prefix string, cmd *Command)
71 recurse = func(prefix string, cmd *Command) {
70 - cmds = append(cmds, prefix+cmd.Name)
72 + newPrefix := prefix + cmd.Name
73 + cmds = append(cmds, newPrefix)
74 + if prefix != "" {
75 + for _, option := range cmd.Options {
76 + optName := option.Names()[0]
77 + if len(optName) == 1 {
78 + optName = "-" + optName
79 + } else {
80 + optName = "--" + optName
81 + }
82 + cmds = append(cmds, newPrefix+" "+optName)
83 + }
84 + }
85 for _, sub := range cmd.Subcommands {
72 - recurse(prefix+cmd.Name+" ", &sub)
86 + recurse(newPrefix+" ", &sub)
87 }
88 }
89