mirror of
				https://git.tukaani.org/xz.git
				synced 2025-11-03 23:12:57 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			59 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/bin/sh
 | 
						|
#
 | 
						|
###############################################################################
 | 
						|
#
 | 
						|
# Wrapper for GNU groff to convert man pages to a few formats
 | 
						|
#
 | 
						|
# Usage: manconv.sh FORMAT [PAPER_SIZE] < in.1 > out.suffix
 | 
						|
#
 | 
						|
# FORMAT can be ascii, utf8, ps, or pdf. PAPER_SIZE can be anything that
 | 
						|
# groff accepts, e.g. a4 or letter. See groff_font(5). PAPER_SIZE defaults
 | 
						|
# to a4 and is used only when FORMAT is ps (PostScript) or pdf.
 | 
						|
#
 | 
						|
# Multiple man pages can be given at once e.g. to create a single PDF file
 | 
						|
# with continuous page numbering.
 | 
						|
#
 | 
						|
###############################################################################
 | 
						|
#
 | 
						|
# Author: Lasse Collin
 | 
						|
#
 | 
						|
# This file has been put into the public domain.
 | 
						|
# You can do whatever you want with this file.
 | 
						|
#
 | 
						|
###############################################################################
 | 
						|
 | 
						|
FORMAT=$1
 | 
						|
PAPER=${2-a4}
 | 
						|
 | 
						|
# Make PostScript and PDF output more readable:
 | 
						|
#   - Use 11 pt font instead of the default 10 pt.
 | 
						|
#   - Use larger paragraph spacing than the default 0.4v (man(7) only).
 | 
						|
FONT=11
 | 
						|
PD=0.8
 | 
						|
 | 
						|
SED_PD="
 | 
						|
/^\\.TH /s/\$/\\
 | 
						|
.PD $PD/
 | 
						|
s/^\\.PD\$/.PD $PD/"
 | 
						|
 | 
						|
case $FORMAT in
 | 
						|
	ascii)
 | 
						|
		groff -t -mandoc -Tascii | col -bx
 | 
						|
		;;
 | 
						|
	utf8)
 | 
						|
		groff -t -mandoc -Tutf8 | col -bx
 | 
						|
		;;
 | 
						|
	ps)
 | 
						|
		sed "$SED_PD" | groff -dpaper=$PAPER -t -mandoc \
 | 
						|
				-rC1 -rS$FONT -Tps -P-p$PAPER
 | 
						|
		;;
 | 
						|
	pdf)
 | 
						|
		sed "$SED_PD" | groff -dpaper=$PAPER -t -mandoc \
 | 
						|
				-rC1 -rS$FONT -Tps -P-p$PAPER | ps2pdf - -
 | 
						|
		;;
 | 
						|
	*)
 | 
						|
		echo 'Invalid arguments' >&2
 | 
						|
		exit 1
 | 
						|
		;;
 | 
						|
esac
 |