ripgrep

ripgrep

Ripgrep is a grep alternative.

The (only) reason I use ripgrep (at least for now) is because it has a much nicer output by default (it also has colors, but you can’t see it below):

$ rg GNU *
COPYING
1:                  GNU GENERAL PUBLIC LICENSE
12:freedom to share and change it.  By contrast, the GNU General Public
18:the GNU Library General Public License instead.)  You can apply it to
59:                 GNU GENERAL PUBLIC LICENSE
297:    it under the terms of the GNU General Public License as published by
304:    GNU General Public License for more details.
306:    You should have received a copy of the GNU General Public License
338:library.  If this is what you want to do, use the GNU Library General

slang.txt
4825:  example, the GNU Scientific Library Special Function module, gslsf,
5850:  distributed under both the GNU licenses. It is particularly important
6365:  The S-Lang library is distributed under the terms of the GNU General
6368:  B.1.  The GNU Public License
6370:                          GNU GENERAL PUBLIC LICENSE
6381:  to share and change it. By contrast, the GNU General Public License is
6386:  (Some other Free Software Foundation software is covered by the GNU
6429:                           GNU GENERAL PUBLIC LICENSE
6669:           it under the terms of the GNU General Public License as published by
6676:           GNU General Public License for more details.
6678:           You should have received a copy of the GNU General Public License
6711:  tions with the library. If this is what you want to do, use the GNU

Compare this to grep’s default output:

➜  /usr/share/doc/slang/v2 grep GNU *
changes.txt:92. src/_slang.h: On at least one platform, clang defines GNUC but
changes.txt:    does not implement GNU C inline semantics.  Disble inline support
changes.txt:    for clang if GNUC defined.
changes.txt:10. autoconf/aclocal.m4: Support for GNU Hurd and GNU KFreeBSD /
changes.txt:   want GNU readline, then run configure with the appropriate option.
changes.txt:    gnuu, de)
changes.txt:   BGR format instead of RGB. (Pavel Roskin <proski at gnu.org>)
changes.txt:    (Pavel Roskin <proski at gnu.org>)
COPYING:                    GNU GENERAL PUBLIC LICENSE
COPYING:freedom to share and change it.  By contrast, the GNU General Public
COPYING:the GNU Library General Public License instead.)  You can apply it to
COPYING:                    GNU GENERAL PUBLIC LICENSE
COPYING:    it under the terms of the GNU General Public License as published by
COPYING:    GNU General Public License for more details.
COPYING:    You should have received a copy of the GNU General Public License
COPYING:library.  If this is what you want to do, use the GNU Library General

Flags I use

-i / --ignore-case
-v / --invert-match

That’s mostly it.