#!/bin/sh
# 
# Manpage Keyword Translator
# ÇÑ±Û ¸ÇÆäÀÌÁö ÇÁ·ÎÁ§Æ® <http://man.kldp.org>
# ÀÓÁ¾±Õ, <hermes44@secsm.org>
# v0.1, 2000³â 4¿ù 11ÀÏ, Ã³À½ ÀÛ¼º
# v0.1.2, 2000³â 4¿ù 13ÀÏ, »õ·Î¿î Å°¿öµå Ãß°¡, -v ¿É¼Ç Ãß°¡, ÇÔ¼ö·Î ¸ðµâÈ­
# v0.1.2.1, 2000³â 4¿ù 23ÀÏ, ACKNOWLEDGEMENTS Å°¿öµå Ãß°¡
#

# ¸ÅÅ©·Î Á¤ÀÇ
PROGRAM=`basename $0`
VERSION=0.1.2.1
TMP=/tmp/keyword2h$$
RM="rm -f"
MV="mv -f"

# ½Ã±×³Î ÇÚµé·¯
trap "$RM ${TMP}.t*; exit 1" 1 2 13 15

################################################################################
# ³»ºÎ ÇÔ¼ö
################################################################################

# »ç¿ë¹ý Ãâ·Â ÇÔ¼ö
usage()
{
	echo Manpage Keyword Translator \<http://man.kldp.org\>
	echo Usage: ${PROGRAM} [-h] [-v] filename [filename...]
	echo -h    print help 
	echo -v    print version
}

# ¹öÀü Á¤º¸ Ãâ·Â ÇÔ¼ö
version()
{
   	echo Manpage Keyword Translator \<http://man.kldp.org\>
	echo version ${VERSION}
}

# º¯È¯ ÇÔ¼ö
translate()
{
	sed "s/\.SH [\"]*ACKNOWLEDGEMENTS[S]*[\"]*/.SH °¨»ç/" $1 > ${TMP}.t0
	sed "s/\.SH [\"]*AUTHOR[S]*[\"]*/.SH ÀúÀÚ/" ${TMP}.t0 > ${TMP}.t1
	sed "s/\.SH [\"]*INTRODUCTION[S]*[\"]*/.SH ¼Ò°³/" ${TMP}.t1 > ${TMP}.t2
	sed "s/\.SH [\"]*BUG REPORT[S]*[\"]*/.SH ¹ö±× ¸®Æ÷Æ®/" ${TMP}.t2 > ${TMP}.t3
	sed "s/\.SH [\"]*BUG[S]*[\"]*/.SH ¹ö±×/" ${TMP}.t3 > ${TMP}.t4
	sed "s/\.SH [\"]*COMMAND LINE OPTION[S]*[\"]*/.SH ¸í·ÉÇà ¿É¼Ç/" ${TMP}.t4 > ${TMP}.t5
	sed "s/\.SH [\"]*COPYING[\"]*/.SH ÀúÀÛ±Ç/" ${TMP}.t5 > ${TMP}.t6
	sed "s/\.SH [\"]*COPYRIGHT[\"]*/.SH ÀúÀÛ±Ç/" ${TMP}.t6 > ${TMP}.t7
	sed "s/\.SH [\"]*DESCRIPTION[\"]*/.SH ¼³¸í/" ${TMP}.t7 > ${TMP}.t8
	sed "s/\.SH [\"]*ENVIRONMENT VARIABLE[S]*[\"]*/.SH È¯°æ º¯¼ö/" ${TMP}.t8 > ${TMP}.t9
	sed "s/\.SH [\"]*ENVIRONMENT[S]*[\"]*/.SH È¯°æ/" ${TMP}.t9 > ${TMP}.t10
	sed "s/\.SH [\"]*ERROR[S]*[\"]*/.SH ¿¡·¯/" ${TMP}.t10 > ${TMP}.t11
	sed "s/\.SH [\"]*EXAMPLE[S]*[\"]*/.SH ¿¹Á¦/" ${TMP}.t11 > ${TMP}.t12
	sed "s/\.SH [\"]*EXIT CODE[S]*[\"]*/.SH Á¾·á ÄÚµå/" ${TMP}.t12 > ${TMP}.t13
	sed "s/\.SH [\"]*EXTENSION[S]*[\"]*/.SH È®Àå/" ${TMP}.t13 > ${TMP}.t14
	sed "s/\.SH [\"]*FILE[S]*[\"]*/.SH ÆÄÀÏ/" ${TMP}.t14 > ${TMP}.t15
	sed "s/\.SH [\"]*FLAG[S]*[\"]*/.SH ÇÃ·¡±×/" ${TMP}.t15 > ${TMP}.t16
	sed "s/\.SH [\"]*HISTORY[\"]*/.SH ¿ª»ç/" ${TMP}.t16 > ${TMP}.t17
	sed "s/\.SH [\"]*KEYWORD[S]*[\"]*/.SH Å°¿öµå/" ${TMP}.t17 > ${TMP}.t18
	sed "s/\.SH [\"]*NAME[\"]*/.SH ÀÌ¸§/" ${TMP}.t18 > ${TMP}.t19
	sed "s/\.SH [\"]*NOTE[S]*[\"]*/.SH ÁÖÀÇ/" ${TMP}.t19 > ${TMP}.t20
	sed "s/\.SH [\"]*OPTION[S]*[\"]*/.SH ¿É¼Ç/" ${TMP}.t20 > ${TMP}.t21
	sed "s/\.SH [\"]*RETURN VALUE[S]*[\"]*/.SH ¹ÝÈ¯°ª/" ${TMP}.t21 > ${TMP}.t22
	sed "s/\.SH [\"]*SEE ALSO[\"]*/.SH °ü·Ã Ç×¸ñ/" ${TMP}.t22 > ${TMP}.t23
	sed "s/\.SH [\"]*SYNOPSIS[\"]*/.SH »ç¿ë¹ý/" ${TMP}.t23 > ${TMP}.t24
	sed "s/\.SH [\"]*SYNTAX[\"]*/.SH ¹®¹ý/" ${TMP}.t24 > ${TMP}.t25
	sed "s/\.SH [\"]*VERSION[\"]*/.SH ¹öÀü/" ${TMP}.t25 > ${TMP}.t26
	sed "s/\.SH [\"]*WARNING[S]*[\"]*/.SH °æ°í/" ${TMP}.t26 > ${TMP}.t27
	sed "s/\.SH [\"]*DIAGNOSTIC[S]*[\"]*/.SH Áø´Ü/" ${TMP}.t27 > ${TMP}.t28
	sed "s/\.SH [\"]*HINT[S]*[\"]*/.SH ÈùÆ®/" ${TMP}.t28 > ${TMP}.t29
	sed "s/\.SH [\"]*ARGUMENT[S]*[\"]*/.SH ÀÎÀÚ/" ${TMP}.t29 > ${TMP}.t30
	sed "s/\.SH [\"]*USAGE[S]*[\"]*/.SH »ç¿ë¹ý/" ${TMP}.t30 > ${TMP}.t31
	sed "s/\.SH [\"]*COMMAND[S]*[\"]*/.SH ¸í·É/" ${TMP}.t31 > ${TMP}.t32
	sed "s/\.SH [\"]*WARNING[S]*[\"]*/.SH °æ°í/" ${TMP}.t32 > ${TMP}.t33
	sed "s/\.SH [\"]*CONFORMING TO[\"]*/.SH È£È¯/" ${TMP}.t33 > ${TMP}.t34
	sed "s/\.SH [\"]*CONFORMS TO[\"]*/.SH È£È¯/" ${TMP}.t34 > ${TMP}.t35
	sed "s/\.SH [\"]*COMPATIBILITY[\"]*/.SH È£È¯/" ${TMP}.t35 > ${TMP}.t36
	sed "s/\.SH [\"]*STANDARD OPTION[S]*[\"]*/.SH Ç¥ÁØ ¿É¼Ç/" ${TMP}.t36 > ${TMP}.t37
	sed "s/\.SH [\"]*STANDARD[S]*[\"]*/.SH Ç¥ÁØ/" ${TMP}.t37 > $1

	# ÀÓ½Ã ÆÄÀÏµé »èÁ¦
	${RM} ${TMP}.t*
}


################################################################################
# ½ºÅ©¸³Æ® ½ÃÀÛ
################################################################################

# ÀÎÀÚ°¡ ¾øÀ¸¸é
if [ $# -eq 0 ] ; then
	usage
	exit 1
fi

# ÀÎÀÚ °Ë»ç
for arg
do
	case $arg in 
	-h) # »ç¿ë¹ý Á¤º¸
		usage
		exit 0 ;;

	-v) # ¹öÀü Á¤º¸
		version
		exit 0 ;;

	*)
		;;
											esac
done

# º¯È¯
for arg
do
	if [ ! -e $arg ] ; then
		echo ${PROGRAM}: $arg file not found.
	elif [ ! -r $arg ] ; then
		echo ${PROGRAM}: $arg file can\'t be read.
	else
		translate $arg
	fi
done
										exit 0


