| Crates.io | picleo |
| lib.rs | picleo |
| version | 0.1.10 |
| created_at | 2025-05-09 08:00:00.068921+00 |
| updated_at | 2025-07-28 22:26:32.137867+00 |
| description | A fuzzy picker similar to fzf and Skim using the Nucleo library. Can be used via CLI or as a library. |
| homepage | |
| repository | https://github.com/symplasma/picleo |
| max_upload_size | |
| id | 1666495 |
| size | 219,596 |
A fuzzy picker/matcher CLI using nucleo, as well as a library to implement this functionality in other programs.
Picleo was inspired by and is most similar to nucleo-picker but with different/expanded functionality e.g. selection of multiple items, and adding non-existing items to the "selection" that should be created.
Additionally, this crate is a test for AI coding using Aider and Claude 3.7 (at least initially). Code that is AI generated is marked with (aider) in the author field of git commit messages. Though all code is checked and refactored by the author.
This is currently alpha phase software. It is feature incomplete compared to Skim, fzf, and other fuzzy finders, though it does handle some basic tasks.
The current development focus is on integrating this into a larger project as a selector widget. As such, it's unlikely to gain feature parity with other CLI fuzzy finders in the near future.
This is a mix of feature list and roadmap. Checked features are present in the current version. Unchecked features may be added in any order.
stdintitle:Due to the excellent design of nucleo we are able to load matches in separate threads while the user starts searching. Currently, the --threaded option controls whether we perform item loads in separate threads. Only one thread is used to load arguments from STDIN while one thread per arg is used when passing file path arguments.
Picleo allows fuzzy finding of items from potentially enormous item lists. It's been tested with 300k+ items and the performance is good i.e. no user-noticeable delay.
return key.Tab or middle-clicking via the mouse.The TUI is rendered on STDERR in Alternate Screen Mode.
STDERR allows for easy redirection of the output on STDOUT into other files or programs.Picleo supports the fzf style search syntax that nucleo::pattern::AtomKind supports.
Picleo can currently be used in two modes:
Lines can be piped directly into picleo via STDIN.
ls | picleo
If one or more directories are specified on the command line, their contents will be listed in picleo. Recursive traversal can be achieved with the --recursive flag.
picleo --recursive ~/Movies