AminetAminet
Search:
84479 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/conv/rman.lha

Mirror:Random
Showing:m68k-amigaosppc-amigaosppc-morphosi386-arosi386-amithlonppc-warpupppc-powerupgeneric
No screenshot available
Short:Convert UNIX MAN pages to Txt/Html/XML/Etc
Author:homas A. Phelps, AmigaOS 4.0 compile by Spot / Up Rough
Uploader:spot triad se
Type:util/conv
Version:3.2
Architecture:ppc-amigaos >= 4.0.0
Distribution:Aminet
Date:2006-11-10
Download:http://aminet.net/util/conv/rman.lha - View contents
Readme:http://aminet.net/util/conv/rman.readme
Downloads:401

This is a tool that converts UNIX man pages (.1) into a lot of formats.
Been looking for a decent one for a while now, thank god I found it, 
editing man pages to be readable on AmigaOS ain't all that fun.
Usage:

rman -f ASCII My_MAN_file.1 >My_ASCII_file.txt (MAN to ASCII)
rman -f HTML My_MAN_file.1 >My_HTML_file.txt   (MAN to HTML)
rman -f XML My_MAN_file.1 >My_XML_file.txt     (MAN to XML)

Etc. Etc. Check out the included docs for more info and options.

.. Spot / Up Rough 2006



---ORIGINAL
README------------------------------------------------------------------

NamePolyglotMan, rman - reverse compile man pages from formatted  form to
a number of source formats  Synopsisrman [ options ] [ file ] 
DescriptionUp-to-date

instructions can be found at http://polyglotman.sourceforge.net/rman.html

 
PolyglotMan  takes man pages from most of the popular flavors  of UNIX
and transforms them into any of a number of text source  formats. PolyglotMan
was formerly known as RosettaMan. The name  of the binary is still called
rman , for scripts that depend  on that name; mnemonically, just think
"reverse man". Previously  PolyglotMan  required pages to be formatted by
nroff prior  to its processing. With version 3.0, it prefers [tn]roff source
 and usually produces results that are better yet. And source  processing
is the only way to translate tables. Source format  translation is not as
mature as formatted, however, so try formatted  translation as a backup.
 
In parsing [tn]roff source, one could implement an arbitrarily  large
subset of [tn]roff, which I did not and will not do, so  the results can
be off. I did implement a significant subset  of those use in man pages,
however, including tbl (but not eqn),  if tests, and general macro definitions,
so usually the results  look great. If they don't, format the page with nroff
before  sending it to PolyglotMan. If PolyglotMan doesn't recognize a  key
macro used by a large class of pages, however, e-mail me  the source and
a uuencoded nroff-formatted page and I'll see  what I can do. When running
PolyglotMan with man page source  that includes or redirects to other [tn]roff
source using the .so (source  or inclusion) macro, you should be in the
parent directory of  the page, since pages are written with this assumption.
For example,  if you are translating /usr/man/man1/ls.1, first cd into /usr/man.
 
PolyglotMan  accepts man pages from: SunOS, Sun Solaris,  Hewlett-Packard
HP-UX, AT&T System V, OSF/1 aka Digital UNIX,  DEC Ultrix, SGI IRIX, Linux,
FreeBSD, SCO. Source processing  works for: SunOS, Sun Solaris, Hewlett-Packard
HP-UX, AT&T System  V, OSF/1 aka Digital UNIX, DEC Ultrix. It can produce
printable  ASCII-only (control characters stripped), section headers-only,
 Tk, TkMan, [tn]roff (traditional man page source), SGML, HTML,  MIME,
LaTeX, LaTeX2e, RTF, Perl 5 POD. A modular architecture  permits easy addition
of additional output formats.  
The latest version of PolyglotMan is available
from  http://polyglotman.sourceforge.net/ .  OptionsThe following options
should not be used with any others and  exit PolyglotMan without processing
any input.  -h|--help  Show list of command line options and exit.  -v|--version
 Show version number and exit.  
You should specify the filter first, as
this sets a number  of parameters, and then specify other options.  -f|--filter
<ASCII|roff|TkMan|Tk|Sections|HTML|SGML|MIME|LaTeX|LaTeX2e|RTF|POD>  Set the
output
filter. Defaults to ASCII.  -S|--source  PolyglotMan tries to automatically
determine
whether its input  is source or formatted; use this option to declare source
input.  -F|--format|--formatted  PolyglotMan tries to automatically determine
whether
its input  is source or formatted; use this option to declare formatted
 input.  -l|--title printf-string  In HTML mode this sets the <TITLE> of the man
pages, given the  same parameters as -r .  -r|--reference|--manref printf-string
 In HTML and SGML modes this sets the URL form by which to retrieve  other
man pages. The string can use two supplied parameters:  the man page name
and its section. (See the Examples section.)  If the string is null (as if
set from a shell by "-r ''"), `-'  or `off', then man page references will not
be HREFs, just set  in italics. If your printf supports XPG3 positions
specifier,
 this can be quite flexible.  -V|--volumes <colon-separated list>  Set the list
of valid volumes to check against when looking for  cross-references to
other man pages. Defaults to 1:2:3:4:5:6:7:8:9:o:l:n:p (volume  names can
be multicharacter). If an non-whitespace string in  the page is immediately
followed by a left parenthesis, then  one of the valid volumes, and ends
with optional other characters  and then a right parenthesis--then that string
is reported as  a reference to another manual page. If this -V string starts
 with an equals sign, then no optional characters are allowed  between
the match to the list of valids and the right parenthesis. (This  option
is needed for SCO UNIX.)  
The following options apply only when formatted
pages are given  as input. They do not apply or are always handled correctly
with  the source.  -b|--subsections  Try to recognize subsection titles in
addition
to section titles.  This can cause problems on some UNIX flavors.  -K|--nobreak
 Indicate manual pages don't have page breaks, so don't look for  footers
and headers around them. (Older nroff -man macros always  put in page breaks,
but lately some vendors have realized that  printout are made through troff,
whereas nroff -man is used to  format pages for reading on screen, and so
have eliminated page  breaks.) PolyglotMan  usually gets this right even
without  this flag.  -k|--keep  Keep headers and footers, as a canonical report
at the end of  the page. changeleft  Move changebars, such as those found
in the Tcl/Tk manual pages,  to the left. --> notaggressive  Disable  aggressive
man page parsing. Aggressive manual,  which is on by default, page parsing
elides headers and footers,  identifies sections and more. -->  -n|--name name
 Set name of man page (used in roff format). If the filename is  given in
the form " name . section ", the name and  section are automatically determined.
If the page is being parsed  from [tn]roff source and it has a .TH line,
this information  is extracted from that line.  -p|--paragraph  paragraph mode
toggle. The filter determines whether lines should  be linebroken as they
were by nroff, or whether lines should  be flowed together into paragraphs.
Mainly for internal use.  -s|section #  Set volume (aka section) number of
man page (used in roff format).  tables  Turn on aggressive table parsing.
-->  -t|--tabstops #  For those macros sets that use tabs in place of spaces
where
 possible in order to reduce the number of characters used, set  tabstops
every #  columns. Defaults to 8.  Notes on Filter TypesRoffSome flavors of
UNIX ship man page without [tn]roff source, making  one's laser printer
little more than a laser-powered daisy wheel.  This filer tries to intuit
the original [tn]roff directives,  which can then be recompiled by [tn]roff.
 TkManTkMan, a hypertext man page browser, uses PolyglotMan   to show man
pages without the (usually) useless headers and footers  on each pages.
It also collects section and (optionally) subsection  heads for direct
access from a pulldown menu. TkMan and Tcl/Tk,  the toolkit in which it's
written, are available via anonymous  ftp from ftp://ftp.smli.com/pub/tcl/
 TkThis option outputs the text in a series of Tcl lists consisting  of
text-tags pairs, where tag names roughly correspond to HTML.  This output
can be inserted into a Tk text widget by doing an  eval <textwidget> insert
end <text> . This format should be  relatively easily parsible by other programs
that want both the  text and the tags. Also see ASCII.  AsciiWhen printed
on a line printer, man pages try to produce special  text effects by
overstriking
characters with themselves (to produce  bold) and underscores (underlining).
Other text processing software,  such as text editors, searchers, and indexers,
must counteract  this. The ASCII filter strips away this formatting. Piping
nroff  output through col -b  also strips away this formatting,  but it
leaves behind unsightly page headers and footers. Also  see Tk.  SectionsDumps
section and (optionally) subsection titles. This might  be useful for another
program that processes man pages.  HTMLWith a simple extention to an HTTP
server for Mosaic or other  World Wide Web browser, PolyglotMan  can produce
high quality  HTML on the fly. Several such extensions and pointers to several
 others are included in PolyglotMan 's contrib  directory.  SgmlThis is
appoaching
the Docbook DTD, but I'm hoping that someone  that someone with a real interest
in this will polish the tags  generated. Try it to see how close the tags
are now.  MIMEMIME (Multipurpose Internet Mail Extensions) as defined by
RFC 1563,  good for consumption by MIME-aware e-mailers or as Emacs (>=19.29)
 enriched documents.  LaTeX and LaTeX2eWhy not?  RtfUse output on Mac or
NeXT or whatever. Maybe take random man  pages and integrate with NeXT's
documentation system better.  Maybe NeXT has own man page macros that do
this.  PostScript and FrameMakerTo produce PostScript, use groff  or psroff
. To  produce FrameMaker MIF, use FrameMaker's builtin filter. In both  cases
you need [tn]roff  source, so if you only have a  formatted version of
the manual page, use PolyglotMan 's  roff filter first.  ExamplesTo convert
the formatted  man page named ls.1  back  into [tn]roff source form:  
rman
-f roff /usr/local/man/cat1/ls.1 > /usr/local/man/man1/ls.1  

Long man pages are often compressed to conserve space (compression  is
especially effective on formatted man pages as many of the  characters
are spaces). As it is a long man page, it probably  has subsections, which
we try to separate out (some macro sets  don't distinguish subsections well
enough for PolyglotMan  to detect them). Let's convert this to LaTeX format:
 

pcat /usr/catman/a_man/cat1/automount.z | rman -b -n automount -s 1 -f  latex
> automount.man  

Alternatively, man 1 automount | rman -b -n automount -s 1 -f  latex >
automount.man
 

For HTML/Mosaic users, PolyglotMan  can, without modification  of the source
code, produce HTML links that point to other HTML  man pages either pregenerated
or generated on the fly. First  let's assume pregenerated HTML versions of
man pages stored in /usr/man/html .  Generate these one-by-one with the
following
form:  
rman -f html -r 'http:/usr/man/html/%s.%s.html' /usr/man/cat1/ls.1 >
/usr/man/html/ls.1.html
 

If you've extended your HTML client to generate HTML on the fly  you should
use something like:  
rman -f html -r 'http:~/bin/man2html?%s:%s' /usr/man/cat1/ls.1  
when generating HTML.  Bugs/IncompatibilitiesPolyglotMan  is not perfect
in all cases, but it usually  does a good job, and in any case reduces
the problem of converting  man pages to light editing.  
Tables in formatted
pages, especially H-P's, aren't handled very  well. Be sure to pass in source
for the page to recognize tables.  
The man pager woman  applies its own
idea of formatting  for man pages, which can confuse PolyglotMan . Bypass
woman  by passing the formatted manual page text directly  into PolyglotMan.  
The [tn]roff output format uses fB to turn on boldface. If your  macro
set requires .B, you'll have to a postprocess the PolyglotMan  output.  See
Alsotkman(1) , xman(1) , man(1) , man(7)  or man(5)  depending on your
flavor of UNIX.

Author 
PolyglotMan by Thomas A. Phelps ( phelps()ACM.org )  
developed at the  
University of California, Berkeley  
Computer Science Division  
Manual page last updated on $Date: 1998/07/13
09:47:28 $


Contents of util/conv/rman.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                 2339    4978  47.0% -lh5- fb86 Jul 26  2003 rman-3.2/Source/contrib/http-rman.c
[generic]                  406     661  61.4% -lh5- 9022 Jul 26  2003 rman-3.2/Source/contrib/http-rman.html
[generic]                  252     350  72.0% -lh5- 8a09 Jul 26  2003 rman-3.2/Source/contrib/lewis.pl
[generic]                  836    2049  40.8% -lh5- c1be Jul 26  2003 rman-3.2/Source/contrib/man2html
[generic]                 2372    4647  51.0% -lh5- 5f85 Jul 26  2003 rman-3.2/Source/contrib/README-contrib
[generic]                 2526    6596  38.3% -lh5- 33c1 Jul 26  2003 rman-3.2/Source/contrib/rman.pl
[generic]                 2924    7531  38.8% -lh5- 64fb Jul 26  2003 rman-3.2/Source/contrib/rman_html_split
[generic]                 1138    2482  45.9% -lh5- c399 Jul 26  2003 rman-3.2/Source/contrib/rman_html_split.1
[generic]                  124     150  82.7% -lh5- 9ee3 Jul 26  2003 rman-3.2/Source/contrib/sco-wrapper.sh
[generic]                 1733    3806  45.5% -lh5- 1945 Jul 26  2003 rman-3.2/Source/contrib/sutter.txt
[generic]                 2040    5086  40.1% -lh5- 7758 Jul 26  2003 rman-3.2/Source/contrib/youki.pl
[generic]                 1955    4315  45.3% -lh5- 7578 Nov 10 04:38 rman-3.2/Source/Makefile
[generic]                 3231    6260  51.6% -lh5- 4e23 Jul 26  2003 rman-3.2/Docs/CHANGES
[generic]                  433     807  53.7% -lh5- b024 Jul 26  2003 rman-3.2/Docs/MANIFEST
[generic]                 1160    2260  51.3% -lh5- e5ed Jul 26  2003 rman-3.2/Docs/README-rman.txt
[generic]                 5729   13618  42.1% -lh5- 4c62 Jul 26  2003 rman-3.2/Docs/ReadMe.html
[generic]                 5117   11935  42.9% -lh5- 992c Jul 26  2003 rman-3.2/Docs/rman.1
[generic]                44009  139770  31.5% -lh5- d608 Jul 26  2003 rman-3.2/Docs/rman.c
[generic]                 5213   11816  44.1% -lh5- 45f8 Nov 10 04:53 rman-3.2/README-AOS4
[generic]                87003  249432  34.9% -lh5- d532 Nov 10 04:53 rman-3.2/rman
[generic]                  402     911  44.1% -lh5- 8519 Jul 26  2003 rman-3.2/Source/contrib/authried.txt
[generic]                 4211   13609  30.9% -lh5- ceba Jul 26  2003 rman-3.2/Source/contrib/bennett.txt
[generic]                  624    1220  51.1% -lh5- 384b Jul 26  2003 rman-3.2/Source/contrib/gzip.patch
[generic]                  148     250  59.2% -lh5- ae11 Jul 26  2003 rman-3.2/Source/contrib/hman.cgi
[generic]                  214     359  59.6% -lh5- b23d Jul 26  2003 rman-3.2/Source/contrib/hman.ksh
[generic]                 3519    8005  44.0% -lh5- a5ca Jul 26  2003 rman-3.2/Source/contrib/hman.pl
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total        26 files  179658  502903  35.7%            Nov 10 06:15

Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>