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 python.org; 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:
This program is licensed under GNU Affero 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.