ripgrep
What this config does
Home Manager installs ripgrep and writes a default config to
~/.config/ripgrep/config.
Nix location
conf/shared.nix: installsripgrepconf/shared.nix:home.file.".config/ripgrep/config"
Portable setup
Install ripgrep:
Fedora:
sudo dnf install ripgrep
Ubuntu/Debian:
sudo apt install ripgrep
Create the config file:
mkdir -p ~/.config/ripgrep
cat > ~/.config/ripgrep/config <<'EOF'
--line-number
--smart-case
--max-columns=120
--max-columns-preview
--type-add=nix:*.nix
--glob=!.git/*
--glob=!**/node_modules/**
--glob=!**/target/**
--glob=!**/.build/**
EOF
Common commands
rg pattern
rg -i pattern
rg "fn name" -t nix
rg pattern path/to/dir
rg -n -C 2 pattern
rg --files
rg --files -g '*.nix'
Check it
rg --version
rg --files -t nix
Use --no-config when scripts need results that do not depend on personal rg
settings.