ohmyzsh/lib/notfound.zsh

20 lines
581 B
Bash

if [[ -x /usr/bin/pkgfile ]]; then
command_not_found_handler() {
local pkg p
local pid ppid pgrp session tty_nr tpgid
# double check pkgfile exists
[[ ! -x /usr/bin/pkgfile ]] && return 127
# do not run when within a pipe or subshell
[[ ! -t 1 ]] && return 127
read pid cmd state ppid pgrp session tty_nr tpgid rest < /proc/self/stat
[[ $$ -eq $tpgid ]] && return 127
pkg=$(pkgfile -b -v -- $1)
if [[ -z $pkg ]] && return 127
echo "The command \"$1\" can be found in the following packages:"
for p in $pkg; echo " $p"
}
fi