tmux-thumbs
I’m a daily user of Tmux as my favorite terminal multiplexer. One day, talking to Jorge, he impressed me with a new hint picker in the terminal. He was able to pick paths, sha’s and other interesting stuff with few keystrokes. My reaction was priceless.
Jorge did an extraordinary job, building all necessary pieces in Bash to achieve the text picker behaviour. He only deserves my gratitude for all the time I have been using tmux-fingers.
During a Fosdem conf, we had the idea to rewrite it to another language. He had these thoughts many times ago but it was hard to start from scratch. So, we decided to start playing with Node.js and react-blessed, but we detected some unacceptable latency when the program booted. We didn’t investigate much about this latency.
During those days another alternative appeared, called tmux-picker, implemented in python and reusing many parts from tmux-fingers. It was nice, because it was fast and added original terminal color support.
I was curious to know if this was possible to be written in Rust, and soon I realized that was something doable. The ability to implement tests for all critic parts of the application give you a great confidence about it. On the other hand, Rust has an awesome community that lets you achieve this kind of project in a short period of time.