|
20 | 20 | package main |
21 | 21 |
|
22 | 22 | import ( |
23 | | - "encoding/json" |
24 | 23 | "fmt" |
25 | 24 | "regexp" |
26 | 25 | "sort" |
@@ -51,17 +50,15 @@ type cmdChanges struct { |
51 | 50 | type cmdTasks struct { |
52 | 51 | timeMixin |
53 | 52 | changeIDMixin |
54 | | - Format string `long:"format" required:"false"` |
| 53 | + formatMixin |
55 | 54 | } |
56 | 55 |
|
57 | 56 | func init() { |
58 | 57 | addCommand("changes", shortChangesHelp, longChangesHelp, |
59 | 58 | func() flags.Commander { return &cmdChanges{} }, timeDescs, nil) |
60 | 59 | addCommand("tasks", shortTasksHelp, longTasksHelp, |
61 | 60 | func() flags.Commander { return &cmdTasks{} }, |
62 | | - changeIDMixinOptDesc.also(timeDescs).also(map[string]string{ |
63 | | - "format": i18n.G("Output format (supported: json)."), |
64 | | - }), |
| 61 | + changeIDMixinOptDesc.also(timeDescs).also(formatArgsHelp), |
65 | 62 | changeIDMixinArgDesc).alias = "change" |
66 | 63 | } |
67 | 64 |
|
@@ -163,15 +160,9 @@ func (c *cmdTasks) showChange(chid string) error { |
163 | 160 | return err |
164 | 161 | } |
165 | 162 |
|
166 | | - if c.Format == "json" { |
167 | | - data, err := json.Marshal(chg) |
168 | | - if err != nil { |
169 | | - return err |
170 | | - } |
171 | | - fmt.Fprint(Stdout, string(data)) |
172 | | - return nil |
173 | | - } else if c.Format != "" { |
174 | | - return fmt.Errorf(i18n.G("unsupported format: %s"), c.Format) |
| 163 | + if c.Format != "text" && c.Format != "" { |
| 164 | + err = c.formatNonText(chg) |
| 165 | + return err |
175 | 166 | } |
176 | 167 |
|
177 | 168 | w := tabWriter() |
|
0 commit comments