]> git.pld-linux.org Git - packages/docbook2X.git/commitdiff
- wrapper script for Steve Cheng's docbook2man-spec converter
authorklakier <klakier@pld-linux.org>
Wed, 29 Dec 1999 15:59:47 +0000 (15:59 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    docbook2X-docbook2man -> 1.1

docbook2X-docbook2man [new file with mode: 0644]

diff --git a/docbook2X-docbook2man b/docbook2X-docbook2man
new file mode 100644 (file)
index 0000000..7f9e530
--- /dev/null
@@ -0,0 +1,68 @@
+#!/bin/sh
+# $Revision$, $Date$ 
+
+# simple script that converts SGML-docbook references
+# using Steve Chengs docbooc2man-spec perl converter
+# in case of <refentry lang="pl"> translates NAME and SYNOPSIS
+
+DIR="/usr/share/docbook2X"
+SPEC=$DIR/docbook2man-spec.pl
+MKLINKS=$DIR/manpage_makelinks.pl
+
+
+if [ $# -eq 0 ]; then
+        echo "$0: No input file given";
+        exit;
+fi
+if [ $# -gt 1 ]; then
+        echo "$0: Too many arguments";
+        exit;
+fi
+
+if [ -x /usr/bin/onsgmls ]; then
+        SP=onsgmls;              
+else if [ -x /usr/bin/nsgmls ]; then
+        SP=nsgmls;              
+else
+        echo "$0: SGML parser missing";
+        exit;
+fi
+fi
+
+rm -f manpage.links
+$SP <"$1" |sgmlspl $SPEC
+
+LANGM=`awk -v IGNORECASE=1 -v RS=">[^<>]*<" '/^refentry/ {if(i=index($0,"lang=")) print substr($0,i+6,2); exit}' $1`
+REFNAME=`awk -v IGNORECASE=1 -v RS="<\/?refname( [^>]*)?>" '{getline; print $0; exit}' $1`
+if [ -z "$REFNAME" ]; then
+       echo "$0: <refname> element missing"
+       exit;
+fi
+SECTION=`awk -v IGNORECASE=1 -v RS="<\/?manvolnum( [^>]*)?>" '{getline; print $0; exit}' $1`
+MAINFILE=${REFNAME}.${SECTION}
+
+if [ ! -f "$MAINFILE" ]; then
+       echo "$0: Failed to convert manpage";
+       exit;
+fi
+
+# print main manpage name
+echo $MAINFILE
+
+case "$LANGM" in
+    "pl" )
+       mv $MAINFILE $MAINFILE.tmp
+        cat $MAINFILE.tmp |sed 's/^\.SH NAME$/\.SH NAZWA/' \
+                        |sed 's/^\.SH SYNOPSIS$/\.SH SKĀ£ADNIA/' >$MAINFILE;
+       rm -f $MAINFILE.tmp;
+        ;;
+esac
+
+# make man links if exist
+$MKLINKS < manpage.links
+awk '{print $2}' manpage.links
+
+#rm -f manpage.links
+
+
+# $Log$  
\ No newline at end of file
This page took 0.097865 seconds and 4 git commands to generate.