You know that there is basically a standard set, imposed by Windows in about 1986 or something and also supported in GNOME 2, MATE, Xfce, LXDE, etc etc.? I am more interested in if it supports them. I mean, I don't know what your set are, and I am not for a moment saying there's anything wrong with them, but there are standards for this stuff, used heavily by millions of blind computer users for example.
> Have you considered the possibility you are so set in your ways that you are neglecting new and useful tool?
Could be. I am a professional assessor of, and commentator on, this stuff, though.
I mainly use a desktop I switched to in 2011. :-) Before that, I changed in 2004, after a change in 2001, after a change in 1995, after a change in 1992, after one in 1989, etc. etc.
I mean I am an old pharte, fair call, but I am a reasonably adaptable one, I think. :-D
What is "fzy"?
https://github.com/jhawthorn/fzy
...?
> Then make the panel vertical instead of horizontal
Why don't any of the screenshots show that, then?
I see 6 horizontal panels in the screenies on the homepage and Github, and one with none. From that, I don't think it's unreasonable to conclude this is not a core feature or something.
That would be fzy : https://github.com/jhawthorn/fzy
Can you expand further?
% cargo install bat
Finished release [optimized] target(s) in 2m 21s
Installing ~/.cargo/bin/bat
Installed package `bat v0.16.0` (executable `bat`)
% file $(which bat)
~/.cargo/bin/bat: Mach-O 64-bit executable arm64
% cargo install exa
Finished release [optimized] target(s) in 1m 21s
Installing ~/.cargo/bin/exa
Installed package `exa v0.9.0` (executable `exa`)
% file $(which exa)
~/.cargo/bin/exa: Mach-O 64-bit executable arm64
I don't know what you mean by [fzy], as it appears to be a C program, not Rust.See also:
• The tracking issue for tier 1 support [tracking]
• My intermediate README with instructions [readme]
[fzy]: https://github.com/jhawthorn/fzy
[tracking]: https://github.com/rust-lang/rust/issues/73908
[readme]: https://github.com/shepmaster/rust/blob/silicon/silicon/READ...
$ hyperfine --warmup 2 -r 10 'rg --files | fzy -e hello' 'rg --files | fzf -f hello'
Benchmark #1: rg --files | fzy -e hello
Time (mean ± σ): 153.6 ms ± 57.9 ms [User: 399.2 ms, System: 96.9 ms]
Range (min … max): 85.9 ms … 244.3 ms 10 runs
Benchmark #2: rg --files | fzf -f hello
Time (mean ± σ): 210.5 ms ± 61.6 ms [User: 443.3 ms, System: 90.9 ms]
Range (min … max): 123.3 ms … 315.5 ms 10 runs
Summary
'rg --files | fzy -e hello' ran
1.37 ± 0.65 times faster than 'rg --files | fzf -f hello'
[1] https://github.com/jhawthorn/fzy- Percol (Python): https://github.com/mooz/percol
- Peco (Go): https://github.com/peco/peco
- fzy (C): https://github.com/jhawthorn/fzy
Here's an alternative to fzf, for comparison's sake:
If I'm using bash on a machine I don't control, I can type "set -o vi" at the bash prompt to get the same thing temporarily, and that's usually the first thing I type.
I also like to use rlwrap[1] to get readline editing and command history on terminal apps that aren't readline aware and don't have history of their own.
Most of the time, though I spend in zsh, which is not readline-based but has its own readline-like capabilities. There I have ^R bound to reverse history search, and ^E to edit the current line in my $EDITOR.
In addition to this, I use fzy[2] (which I prefer over fzf[3]) to do fuzzy searches over my shell history with something like:
history 0 | perl -p -E's/^\s*\S+\s*//' | sort -u | fzy --lines=$LINES
[1] - http://utopia.knoware.nl/~hlub/uck/rlwrap/