From e3b79bb8136ef7c0243010b6d3bf6440e6ced22e Mon Sep 17 00:00:00 2001 From: David Gillies Date: Wed, 22 May 2019 12:43:33 -0700 Subject: [PATCH 1/4] Add fish completion support --- cmd/completion.go | 4 +++- go.mod | 9 ++++++--- go.sum | 6 ++++++ 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/cmd/completion.go b/cmd/completion.go index 2ae85a662c9..9b2ebd17ea9 100644 --- a/cmd/completion.go +++ b/cmd/completion.go @@ -13,7 +13,7 @@ var completionCmd = &cobra.Command{ Short: "Output shell completion code for the specified shell (bash or zsh)", Long: mustGetLongHelp("completion"), Example: getExample("completion"), - ValidArgs: []string{"bash", "zsh"}, + ValidArgs: []string{"bash", "fish", "zsh"}, RunE: makeRunE(config.runCompletion), } @@ -27,6 +27,8 @@ func (c *Config) runCompletion(fs vfs.FS, args []string) error { return rootCmd.GenBashCompletion(c.Stdout()) case "zsh": return rootCmd.GenZshCompletion(c.Stdout()) + case "fish": + return rootCmd.GenFishCompletion(c.Stdout()) default: return errors.New("unsupported shell") } diff --git a/go.mod b/go.mod index 4c7dc463860..8cadd136d95 100644 --- a/go.mod +++ b/go.mod @@ -15,14 +15,13 @@ require ( github.com/google/uuid v1.1.0 // indirect github.com/huandu/xstrings v1.2.0 // indirect github.com/imdario/mergo v0.3.7 // indirect - github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/kr/text v0.1.0 github.com/mattn/go-isatty v0.0.7 github.com/russross/blackfriday/v2 v2.0.1 github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect github.com/spf13/afero v1.2.2 // indirect - github.com/spf13/cobra v0.0.3 - github.com/spf13/viper v1.3.1 + github.com/spf13/cobra v0.0.4 + github.com/spf13/viper v1.3.2 github.com/stretchr/objx v0.2.0 // indirect github.com/stretchr/testify v1.3.0 github.com/twpayne/go-difflib v1.3.0 @@ -37,3 +36,7 @@ require ( golang.org/x/sys v0.0.0-20190310054646-10058d7d4faa // indirect gopkg.in/yaml.v2 v2.2.2 ) + +// https://github.com/0robustus1/cobra/tree/350-add_fish_completion_support +// https://github.com/spf13/cobra/pull/754 +replace github.com/spf13/cobra => ../cobra diff --git a/go.sum b/go.sum index 3df664d027b..419da9ea921 100644 --- a/go.sum +++ b/go.sum @@ -11,6 +11,7 @@ github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= github.com/coreos/go-semver v0.2.0 h1:3Jm3tLmsgAYcjC+4Up7hJrFBPr+n7rAqYeSw/SZazuY= github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= github.com/danieljoos/wincred v1.0.1 h1:fcRTaj17zzROVqni2FiToKUVg3MmJ4NtMSGCySPIr/g= github.com/danieljoos/wincred v1.0.1/go.mod h1:SnuYRW9lp1oJrZX/dXJqr0cPK5gYXqx3EJbmjhLdK9U= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -45,12 +46,15 @@ github.com/magiconair/properties v1.8.0 h1:LLgXmsheXeRoUOBOjtwPQCWIYqM/LU1ayDtDe github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/mattn/go-isatty v0.0.7 h1:UvyT9uN+3r7yLEYSlJsbQGdsaB/a0DlgWP3pql6iwOc= github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/pelletier/go-toml v1.2.0 h1:T5zMGML61Wp+FlcbWjRDT7yAxhJNAiPPLOFECq181zc= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/russross/blackfriday v1.5.2 h1:HyvC0ARfnZBqnXwABFeSZHpKvJHJJfPz81GNueLj0oo= +github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/russross/blackfriday/v2 v2.0.1 h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/shurcooL/sanitized_anchor_name v1.0.0 h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo= @@ -69,6 +73,8 @@ github.com/spf13/pflag v1.0.3 h1:zPAT6CGy6wXeQ7NtTnaTerfKOsV6V6F8agHXFiazDkg= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/viper v1.3.1 h1:5+8j8FTpnFV4nEImW/ofkzEt8VoOiLXxdYIDsB73T38= github.com/spf13/viper v1.3.1/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= +github.com/spf13/viper v1.3.2 h1:VUFqw5KcqRf7i70GOzW7N+Q7+gxVBkSSqiXB12+JQ4M= +github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.2.0 h1:Hbg2NidpLE8veEBkEZTL3CvlkUIVzuU9jDplZO54c48= github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= From dac85d2a152808676035cdd0c8a79a320a7d2e17 Mon Sep 17 00:00:00 2001 From: David Gillies Date: Wed, 22 May 2019 18:24:25 -0700 Subject: [PATCH 2/4] Update go.mod --- go.mod | 5 ++--- go.sum | 2 ++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 8cadd136d95..e4e1f941fcd 100644 --- a/go.mod +++ b/go.mod @@ -37,6 +37,5 @@ require ( gopkg.in/yaml.v2 v2.2.2 ) -// https://github.com/0robustus1/cobra/tree/350-add_fish_completion_support -// https://github.com/spf13/cobra/pull/754 -replace github.com/spf13/cobra => ../cobra +// Temporary while waiting for https://github.com/spf13/cobra/pull/754 to be merged +replace github.com/spf13/cobra => github.com/0robustus1/cobra v0.0.4-0.20190522074606-64400adf086c diff --git a/go.sum b/go.sum index 419da9ea921..0a6fe6e6864 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +github.com/0robustus1/cobra v0.0.4-0.20190522074606-64400adf086c h1:6xFfLcJWseCeshhkzG6DwUenwjNK//TPQdDGUjUMdI0= +github.com/0robustus1/cobra v0.0.4-0.20190522074606-64400adf086c/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/Masterminds/semver v1.4.2 h1:WBLTQ37jOCzSLtXNdoo8bNM8876KhNqOKvrlGITgsTc= From e40b79765827e57be6526bc48b092a1d068434f8 Mon Sep 17 00:00:00 2001 From: David Gillies Date: Tue, 4 Jun 2019 18:13:27 -0700 Subject: [PATCH 3/4] Add fish to completion command description --- cmd/completion.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/completion.go b/cmd/completion.go index 9b2ebd17ea9..37acfa1d322 100644 --- a/cmd/completion.go +++ b/cmd/completion.go @@ -10,7 +10,7 @@ import ( var completionCmd = &cobra.Command{ Use: "completion shell", Args: cobra.ExactArgs(1), - Short: "Output shell completion code for the specified shell (bash or zsh)", + Short: "Output shell completion code for the specified shell (bash, fish or zsh)", Long: mustGetLongHelp("completion"), Example: getExample("completion"), ValidArgs: []string{"bash", "fish", "zsh"}, From dadd7fa97e99b8cc2264a1828d383cff874da3b1 Mon Sep 17 00:00:00 2001 From: David Gillies Date: Thu, 6 Jun 2019 12:07:59 -0700 Subject: [PATCH 4/4] go mod tidy to make CI happy --- go.sum | 4 ---- 1 file changed, 4 deletions(-) diff --git a/go.sum b/go.sum index 0a6fe6e6864..3bc950d99ad 100644 --- a/go.sum +++ b/go.sum @@ -67,14 +67,10 @@ github.com/spf13/afero v1.2.2 h1:5jhuqJyZCZf2JRofRvN/nIFgIWNzPa3/Vz8mYylgbWc= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/cast v1.3.0 h1:oget//CVOEoFewqQxwr0Ej5yjygnqGkvggSE/gB35Q8= github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cobra v0.0.3 h1:ZlrZ4XsMRm04Fr5pSFxBgfND2EBVa1nLpiy1stUsX/8= -github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/jwalterweatherman v1.0.0 h1:XHEdyB+EcvlqZamSM4ZOMGlc93t6AcsBEu9Gc1vn7yk= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/pflag v1.0.3 h1:zPAT6CGy6wXeQ7NtTnaTerfKOsV6V6F8agHXFiazDkg= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= -github.com/spf13/viper v1.3.1 h1:5+8j8FTpnFV4nEImW/ofkzEt8VoOiLXxdYIDsB73T38= -github.com/spf13/viper v1.3.1/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/spf13/viper v1.3.2 h1:VUFqw5KcqRf7i70GOzW7N+Q7+gxVBkSSqiXB12+JQ4M= github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=