small search engine using k-grams
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


License: GPL v3+ Python 3.x Support

trovotutto command line tool

Trovotutto (Italian for "I find everything) is a small naive python 3.x search engine using k-grams. It was conceived as a find replacement that would be tolerant to typos and that would take paths into consideration when searching.

At the time of writing it supports recursively searching for files in a directory (according to various criteria) and in PGPgrams databases. Anyway, it is so small that can be easily extended to work on other data structures.


Trovotutto is available through the Python Package Index (PyPI). Pip is already installed if you are using Python 3 >=3.4 downloaded from; if you're using a GNU/Linux distribution, you can find how to install it on this page. After setting up pip, you can install trovotutto by simply typing in your terminal

pip3 install trovotutto


Trovotutto install a command line utility with the same name that can be used to search and open search results. Application selection is handled through xdg-open, so be sure to have it installed if you want to use it this way. The command line is not recommended for performance when searching in large directories because by defaults it rebuilds the database at each run.

More proficient usage is obtained in IPython console for repeated usage, as the index is kept in memory:

trovotutto from ipython


This program is licensed under GNU General Public License v3 or later by Pellegrino Prevete. If you find this program useful, consider offering me a beer, a new computer or a part time remote job to help me pay the bills.