Skip to content

Commit 4d56cd3

Browse files
committed
Add support for fish completion
1 parent 184bbf8 commit 4d56cd3

File tree

3 files changed

+21
-2
lines changed

3 files changed

+21
-2
lines changed

go.mod

+2
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,5 @@ require (
6262
mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b // indirect
6363
mvdan.cc/unparam v0.0.0-20190720180237-d51796306d8f
6464
)
65+
66+
replace github.com/spf13/cobra => github.com/VilledeMontreal/cobra v0.0.6-0.20200629203744-5782fedb5fb1

go.sum

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ github.com/OpenPeeDeeP/depguard v1.0.1 h1:VlW4R6jmBIv3/u1JNlawEvJMM4J+dPORPaZasQ
2323
github.com/OpenPeeDeeP/depguard v1.0.1/go.mod h1:xsIw86fROiiwelg+jB2uM9PiKihMMmUx/1V+TNhjQvM=
2424
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 h1:fLjPD/aNc3UIOA6tDi6QXUemppXK3P9BI7mr2hd6gx8=
2525
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg=
26+
github.com/VilledeMontreal/cobra v0.0.6-0.20200629203744-5782fedb5fb1 h1:b4N6UrpLCX/ClvjZnqRuTxLfLAF0+5tqWJLT2D/Zx2g=
27+
github.com/VilledeMontreal/cobra v0.0.6-0.20200629203744-5782fedb5fb1/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE=
2628
github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
2729
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
2830
github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o=
@@ -344,8 +346,6 @@ github.com/spf13/afero v1.1.2 h1:m8/z1t7/fwjysjQRYbP0RD+bUIF/8tJwPdEZsI83ACI=
344346
github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
345347
github.com/spf13/cast v1.3.0 h1:oget//CVOEoFewqQxwr0Ej5yjygnqGkvggSE/gB35Q8=
346348
github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
347-
github.com/spf13/cobra v1.0.0 h1:6m/oheQuQ13N9ks4hubMG6BnvwOeaJrqSPLahSnczz8=
348-
github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE=
349349
github.com/spf13/jwalterweatherman v1.0.0 h1:XHEdyB+EcvlqZamSM4ZOMGlc93t6AcsBEu9Gc1vn7yk=
350350
github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
351351
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=

pkg/commands/completion.go

+17
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,13 @@ func (e *Executor) initCompletion() {
2828
RunE: e.executeZshCompletion,
2929
}
3030
completionCmd.AddCommand(zshCmd)
31+
32+
fishCmd := &cobra.Command{
33+
Use: "fish",
34+
Short: "Output fish completion script",
35+
RunE: e.executeFishCompletion,
36+
}
37+
completionCmd.AddCommand(fishCmd)
3138
}
3239

3340
func (e *Executor) executeBashCompletion(cmd *cobra.Command, args []string) error {
@@ -51,3 +58,13 @@ func (e *Executor) executeZshCompletion(cmd *cobra.Command, args []string) error
5158

5259
return nil
5360
}
61+
62+
63+
func (e *Executor) executeFishCompletion(cmd *cobra.Command, args []string) error {
64+
err := cmd.Root().GenFishCompletion(os.Stdout, true)
65+
if err != nil {
66+
return errors.Wrap(err, "unable to generate fish completions: %v")
67+
}
68+
69+
return nil
70+
}

0 commit comments

Comments
 (0)