- A git interface using fzf that works pretty nicely and is very composable. https://github.com/bigH/git-fuzzy
- An interactive evaluator, perfect for interactive `sed`, `grep`, `jq`, etc. If properly configured, it'll keep history per command or using whatever key you give it. I find myself using it often with `jq`. https://github.com/bigH/interactively
There are many other shell functions/scripts that are interesting from my `dotfiles`. Particularly interesting snippets for anyone who wants them:
- A recursize `which` that follows symlinks and stops at a real file. https://github.com/bigH/dotfiles/blob/3d48792b4e910d2fc82504...
- A `watch` alternative that runs in the current shell. https://github.com/bigH/dotfiles/blob/3d48792b4e910d2fc82504...
https://github.com/bigH/git-fuzzy
https://github.com/bigH/auto-sized-fzf
https://github.com/bigH/interactively
https://github.com/bigH/dotfiles/tree/master/bin
https://github.com/bigH/dotfiles/blob/master/aliases/git.sh
https://github.com/bigH/dotfiles/blob/master/aliases/kubectl...
https://github.com/bigH/dotfiles/blob/master/functions/fzf.s...
https://github.com/bigH/dotfiles/blob/master/functions/core....
So much shell scripting and use of `fzf`. I make things I enjoy and will be happy using and since I spend a lot of time in the terminal, it makes sense to make things like this for me.
The hardest part about leveraging the power of fzf is getting input into your --preview argument in the middle of some piped process. But that's also where it's true power becomes fully evident.
awk users have long had similar powers. And indeed you might find awk useful for reorganizing record separators in a pipe to fzf. But fzf is brilliant because it "just works" for 90% of cases.
I think we're probably going to see people sharing some pretty incredible workflows with fzf in the next few years. Something about being able to stick it in the middle of a Unix pipe just makes it really really special; it's compose-able!