This is yet another port of garybernhardt/selecta in C++ using Ncurses for the terminal window. UTF-8 is supported.
Despite the fact that there are already a whole lot of selecta alternatives (fzf, icepick), I decided to write a clone to further explore C++11 (e.g. threads). In addition, I have never done anything with ncurses before.
- highlight matching string in match list
- switch case sensitivity for search
F2 - multiple matchers (Simple string matcher, CmdT matcher):
F3 - status-line shows some stats about the candidates
- resize support
- depending on the hardware, matching algorithm is executed concurrent
Homego to the beginning match listEndgo to the beginning match listF2toggle case-sensitivityF3switch the matcherArrow-UpandArrow-Downfor selecting string from match list^UEmpty search term^Nalias forArrow-Down^Palias forArrow-Up
- move matcher in its own (static) library
- ability to load matcher via a library (plugin)
- add more key bindings, see readline
cmakeinstallation target- make coloring adjustable (via config file)
# Use find to get a list of all files, use clecta to select the desired file which shall be opened with vim
vim $(find . | clecta)
- Ncurses
git clone https://github.com/awidegreen/clecta
mkdir clecta/build
cd clecta/build
cmake ..
make
# or use: make -j`nproc`
In the build directory, use:
- the test target:
make testor - run the tests manually:
tests/clecta-tests
Copyright (c) Armin Widegreen
Distributed under the BSD-Clause-2 License, see LICENSE.

