translate-docformat-0.6/0000755000175000017500000000000010327227662014631 5ustar felipefelipetranslate-docformat-0.6/translate-docformat.10000644000175000017500000000207107703250554020664 0ustar felipefelipe.TH "translate-docformat" 1 "2001 Sep 25" "Debian" "translate-docformat" .SH NAME translate-docformat \- Translate documentation format. .SH SYNOPSIS .BI "translate-docformat [" "source document filename" "] [" "destination document format" "]" .SH DESCRIPTION .B "translate-docformat" translates documentation files from their format to the specified format. .PP This is a wrapper script to run other programs according to the command line specifications. .SH OPTIONS The options which can be specified as .I "destination document format" are as follows: .TP .B "txt" Text file format, with extention .txt .TP .B "html" HTML file. .TP .B "mhtml" Multiple HTML file, if single/multiple can be chosen. .TP .B "texinfo" Texinfo file. .TP .B "info" Info file. .TP .B "ps" ps file. .TP .B "pdf" pdf file. .TP .B "tex" LaTeX2e file format. .TP .B "rtf" Rich text format output. .SH BUGS It parses the file extention, which is (probably) not the optimal way. Not everything is supported (yet). .SH AUTHOR This script and manpage has been written by Junichi Uekawa translate-docformat-0.6/Makefile0000644000175000017500000000023510327225707016267 0ustar felipefelipe# Makefile translate-docformat all: clean: rm -f *~ *.bak install: install -d $(DESTDIR)/usr/bin install -m 755 translate-docformat $(DESTDIR)/usr/bin translate-docformat-0.6/translate-docformat0000755000175000017500000001263610327226047020534 0ustar felipefelipe#!/bin/bash #Translates doc format #Copyright 2001 Junichi Uekawa #distributed under GPL version 2. #started 2001 Sep 16 by Junichi Uekawa #$Id: translate-docformat,v 1.8 2002/05/20 06:50:19 dancer Exp $ # Depends: sgmltools-lite linuxdoc-tools debiandoc-sgml w3m|lynx tetex-bin # texinfo texi2html docbook-dsssl jadetex #targets are # txt = text # html = html file # mhtml = multiple html files # texinfo = texinfo file. # info = info file. # ps = ps file # pdf = pdf file # tex = latex2e # rtf = rich text format function unsupportedformaterror () { echo Unsupported file format has been specified. "[$1]" >&2 exit 1; } SOURCE="$1" FORMAT="$2" test -z "$LATEX" && LATEX="latex" SOURCEDIR=$(dirname "$SOURCE") if [ -z "$FORMAT" ]; then cat < /dev/null ; then # docbook case "$FORMAT" in txt) sgmltools -b txt "$SOURCE" ;; html) sgmltools -b onehtml "$SOURCE" ;; ps) sgmltools -b ps "$SOURCE" ;; dvi) sgmltools -b dvi "$SOURCE" ;; rtf) sgmltools -b rtf "$SOURCE" ;; *) unsupportedformaterror "unhandled doc translation from docbook" ;; esac elif grep ' /dev/null ; then # linuxdoc case "$FORMAT" in txt) linuxdoc --backend=txt "$SOURCE" ;; rtf) linuxdoc --backend=rtf "$SOURCE" ;; lyx) linuxdoc --backend=lyx "$SOURCE" ;; info) linuxdoc --backend=info "$SOURCE" ;; tex) linuxdoc --backend=latex2e "$SOURCE" ;; *) unsupportedformaterror "unhandled doc translation from linuxdoc" esac elif grep -i ' /dev/null || grep "//DebianDoc//DTD DebianDoc//EN" "$SOURCE" > /dev/null ; then # debiandoc case "$FORMAT" in txt) debiandoc2text -- "$SOURCE" ;; texinfo) debiandoc2texinfo -- "$SOURCE" ;; info) debiandoc2info -- "$SOURCE" ;; pdf) debiandoc2latexpdf -- "$SOURCE" ;; ps) debiandoc2latexps -- "$SOURCE" ;; *) unsupportedformaterror "Unhandled doc translation from debiandoc" ;; esac else unsupportedformaterror "Not a known DTD, file a bug with your doc-header" fi ;; *.tex) case "$FORMAT" in dvi) # tip from The Debian SGML/XML HOWTO, originally from aph, I think. PRIOR=$(tempfile) PPRIOR=$(tempfile) cp -pf "$PRIOR" "$PPRIOR" cp -pf "$SOURCEDIR"/$(basename "$SOURCE".tex).aux "$PRIOR" RECURSION=1 "$LATEX" "$SOURCE" while ! cmp "$SOURCEDIR"/$(basename "$SOURCE".tex).aux "$PRIOR" && \ cmp "$SOURCEDIR"/$(basename "$SOURCE".tex).aux "$PPRIOR" && \ test $RECURSION < 5 ; do "$LATEX" "$SOURCE"; RECURSION=$(($RECURSION + 1)) done rm -f "$PRIOR" "$PPRIOR" ;; ps) "$0" "$SOURCE" dvi "$0" "$SOURCEDIR"/$(basename "$SOURCE" .tex).dvi ps ;; pdf) "$0" "$SOURCE" dvi "$0" "$SOURCEDIR"/$(basename "$SOURCE" .tex).dvi ps ;; *) unsupportedformaterror "Not supported translation $FORMAT for latex" ;; esac ;; *.dvi) case "$FORMAT" in ps) dvips "$SOURCE" -o "$SOURCEDIR"/$(basename "$SOURCE" .tex).ps ;; *) unsupportedformaterror "Not supported translation $FORMAT for dvi" ;; esac ;; *.texi) case "$FORMAT" in dvi) texi2dvi "$SOURCE" ;; html) texi2html "$SOURCE" ;; txt) makeinfo --no-headers -o "$SOURCEDIR"/$(basename "$SOURCE" .texi).txt "$SOURCE" ;; *) unsupportedformaterror "Not supported translation $FORMAT for texi" ;; esac ;; *.xml) # XML file. -- assume DocBk XML case "$FORMAT" in html) jade -t sgml -V nochunks -d /usr/lib/sgml/stylesheet/dsssl/docbook/nwalsh/html/docbook.dsl \ /usr/lib/sgml/declaration/xml.dcl "$SOURCE" > "$SOURCEDIR"/$(basename "$SOURCE" .xml).html ;; txt) "$0" "$SOURCE" html "$0" "$SOURCEDIR"/$(basename "$SOURCE" .xml).html txt ;; jadetex) jade -t tex -V tex-backend -d /usr/lib/sgml/stylesheet/dsssl/docbook/nwalsh/print/docbook.dsl \ /usr/lib/sgml/declaration/xml.dcl "$SOURCE" > "$SOURCEDIR"/$(basename "$SOURCE" .xml).html ;; ps) "$0" "$SOURCE" jadetex LATEX="jadetex" translate-docformat "$0" "$SOURCEDIR"/$(basename "$SOURCE" .xml).tex ps ;; *) unsupportedformaterror "Not supported format $FORMAT for xml" ;; esac ;; *.html) case "$FORMAT" in txt) if [ -x /usr/bin/w3m ]; then w3m -dump -T text/html "$SOURCE" > "$SOURCEDIR"/$(basename "$SOURCE" .html).txt elif [ -x /usr/bin/w3mmee ]; then w3mmee -dump -T text/html "$SOURCE" > "$SOURCEDIR"/$(basename "$SOURCE" .html).txt elif [ -x /usr/bin/lynx ]; then lynx -dump -T text/html "$SOURCE" > "$SOURCEDIR"/$(basename "$SOURCE" .html).txt else unsupportedformaterror "w3m nor lynx is available" exit 1 fi ;; *) unsupportedformaterror "Not supported format $FORMAT for html" ;; esac ;; *) unsupportedformaterror "Unknown source doc format" ;; esac