From 809d6629c97bd9c4bdf6c799e74a261bb510b1fd Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Wed, 27 Jan 2021 22:35:39 -0500 Subject: Completely rewrite how manuals are fetched and installed Also add section 6 manuals from NetBSD and OpenBSD! --- exman.sh | 58 ---------------------------------------------------------- 1 file changed, 58 deletions(-) delete mode 100644 exman.sh (limited to 'exman.sh') diff --git a/exman.sh b/exman.sh deleted file mode 100644 index 9b6777d..0000000 --- a/exman.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/sh -set -eu - -die() { - echo "$@" >&2 - exit 1 -} - -script=$0 -path=${script%/*} -prefix=${path%/bin} -exman="${prefix}/share/exman" -[ -d "${exman}" ] || exman=$prefix - -system=${1:-} -[ -n "${system}" ] || die 'What system do you want?' -shift - -export MANPATH="${exman}/${system}" -[ -d "${MANPATH}" ] || die "No manuals for ${system}" - -export MANSECT -for sect in "${MANPATH}"/man*/; do - sect=${sect%/} - sect=${sect##*/man} - MANSECT="${MANSECT:-}${MANSECT:+:}${sect}" -done - -# macOS man(1) refuses to search in directories such as "man3p", so do it -# manually here unless there are other flags passed. -hack() { - case "${1:-}" in - (-*) exec man "$@";; - ([0-9]*) MANSECT=$1; shift;; - esac - [ $# -gt 0 ] || die 'What manual page do you want?' - for page in "$@"; do - found=0 - IFS=: - for sect in $MANSECT; do - path="${MANPATH}/man${sect}/${page}" - for ext in ".${sect}" ".${sect}.gz"; do - [ -f "${path}${ext}" ] || continue - man "${path}${ext}" - found=1 - break - done - [ $found -eq 0 ] || break - done - [ $found -ne 0 ] || die "No manual entry for ${page}" - done -} - -if [ "$(uname)" = 'Darwin' ]; then - hack "$@" -else - exec man "$@" -fi -- cgit 1.4.1