Skip to main content

Index stuff and find it fast and without bloat

Project description

An awesome hack. Your friendly finding ninja.

Usage

Index and find your stuff.

Index the current directory.

finja --index

Find huhu in the index.

finja huhu

Update outdated files and find huhu in the index.

finja -u huhu

Also works from a subdirectory.

finja --index
cd subdir
finja huhu

Tip: If you are sure that your system survives till everything is indexed use eatmydata.

eatmydata finja -i

Raw mode is meant for machines, but you can replace the \0 with colons.

finja -r huhu | finjacol

Get reduplicated raw human readable output.

finja -r stuff | finjadup | finjacol

Get reduplicated raw output.

finja -r stuff | finjadup

Index git files only.

git ls-tree -r --name-only master > FINJA.lst
finja -i

Filter unwanted output by path.

finja -p spamfolder gold

Cleanup free (unused) tokens and rebuild the database.

finja --vacuum

If there are some badly formatted files that seriously cramp your style.

finja readlines for | cut -c -`tput cols`

Index stuff in read-only directories.

mkdir sysinclude
cd sysinclude
find /usr/include/ -xdev > FINJA.lst
eatmydata finja -i
finja AF_INET6

Caveat: We do not support languages that don’t do spaces nor interpunct. Hey we are not google!

Install Debian/Ubuntu

Sources:

deb http://aptly.adfinis-sygroup.ch/adsy-public/debian wheezy main

deb http://aptly.adfinis-sygroup.ch/adsy-public/debian jessie main

deb http://aptly.adfinis-sygroup.ch/adsy-public/ubuntu trusty main

deb http://aptly.adfinis-sygroup.ch/adsy-public/ubuntu vivid main

deb http://aptly.adfinis-sygroup.ch/adsy-public/ubuntu xenial main

Install:

wget -O - http://aptly.adfinis-sygroup.ch/aptly.asc | apt-key add -
apt-get update
apt-get install python-finja

Installation

If you’re using Arch Linux, there’s an AUR package here: https://aur.archlinux.org/packages/finja/

On other platforms, use python’s package manager, pip:

pip install -U finja

Why?

Unlike many of the great alternatives to finja, finja is generic. It doesn’t know what it is indexing. Finja achieves good indexing quality by doing multiple passes with different tokenization methods and splitting character lists. Therefore it is slower and has a bigger index than non-generic indexers, but it just indexes your stuff and won’t miss any files it doesn’t know about.

Finja is doing something wrong, can I customize the settings?

We would like to keep settings to a minimum. At the moment there is only international interpunct, that can be switched on. Please open an issue on Github and describe your problem, we will try to find a generic solution. If we don’t find such a solution we might add a setting.

By ganwell@fangorn.ch and David Vogt, Stefan Heinemann, Pablo Vergés

Changes

1.0.11

  • Add workaround for VACUUM bug in python

  • Multiple version due bugs in packaging (rereleases)

1.0.8

  • Conditionally add the argparse dependancy on python 2.6 (@ganwell)

1.0.7

  • Case-insensitive highlighting (@ganwell)

1.0.6

  • Add argparse as requires for CentOS6 (@Pablo Verges)

  • Add search term coloring (@schtibe)

  • Add finja logo to help (@ganwell)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

finja-1.0.11.tar.gz (12.1 kB view details)

Uploaded Source

File details

Details for the file finja-1.0.11.tar.gz.

File metadata

  • Download URL: finja-1.0.11.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for finja-1.0.11.tar.gz
Algorithm Hash digest
SHA256 c8d9ebce7c5ec3dd634af3da224715ee5c32639c23fd0790c2e17cc0d1b1868f
MD5 fcc621aa9251781d6cdbba1e8c839be2
BLAKE2b-256 e68611a1c4aa76d30ca1c5f9f1aa33b97c50902c5c6ddec6d21bae85c76cf3b6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page