kubectx icon indicating copy to clipboard operation
kubectx copied to clipboard

Can’t use `--height` in fzf options on Windows

Open Aankhen opened this issue 2 years ago • 2 comments

All this works fine under Linux (ignoring that I didn’t choose an option):

$ FZF_DEFAULT_OPTS='--height 10% --min-height 20 -e'
$ fzf --ansi --no-preview 2>&1 | echo

$ kubectx
error: you did not choose any of the options

But on Windows:

❯❯ $env:FZF_DEFAULT_OPTS = '--height 10% -e'
❯❯ fzf --ansi --no-preview 2>&1 | echo
--height option is currently not supported on this platform
 ✗ kubectx
--height option is currently not supported on this platform
error: you did not choose any of the options

This is because, in fzf, it’s assumed that the stream always supports whatever LightRenderer is under Linux, but the logic is more complicated under Windows. My Go is very limited and I’m out of my depth with this terminal stuff. Is there any way for kubectx to convince fzf that the STDERR it passes supports whatever it needs to run?

(The reason why I need --height is that otherwise it clears the screen every time fzf runs, unlike under Linux where it renders independently and then returns to the shell session.)

Aankhen avatar Apr 21 '23 16:04 Aankhen

Yeah this is a bit tricky. I suspect we pass the same stderr that we get in both Go and Bash based implementations of kubectx. I'm inclined to think this is gonna be hard to troubleshoot and fix on our side. I recommend WSL. 🤷🏼

ahmetb avatar Apr 22 '23 05:04 ahmetb

I understand. It seems like a difficult thing to address, if that’s even possible. I prefer to use Windows, not WSL, so I’ll look for an alternative for now.

Aankhen avatar Apr 22 '23 13:04 Aankhen