#!/bin/sh # macho - an interactive man page finder using fzf # from: https://hiphish.github.io/blog/2020/05/31/macho-man-command-on-steroids/ while getopts ":s:" opt; do case $opt in s ) SECTION=$OPTARG; shift; shift;; \?) echo "Invalid option: -$OPTARG" >&2; exit 1;; : ) echo "Option -$OPTARG requires an argument" >&2; exit 1;; esac done manual=$(apropos -s ${SECTION:-''} ${@:-.} | \ grep -v -E '^.+ \(0\)' |\ awk '{print $2 " " $1}' | \ sort | \ dmenu -i -l 20 -p "Manual: " | \ sed -E 's/^\((.+)\)/\1/') echo $manual [ -z "$manual" ] && exit 0; man -T"${FORMAT:-pdf}" $manual | ${READER:-zathura} -