Man page problems

Man page problems

Post by Tom Sorens » Fri, 10 May 1996 04:00:00



I've been having a problem with some user-installed man pages for awhile, and
it's come to a head with the installation of Perl and TCL/TK. Any man page with
capital letters in it (e.g.- /usr/local/man/man3/Name.3 or Time::Local.3)
doesn't show up correctly in the windex database. I get entries like the
following:

"NAME"          .IX (3)         - methods used by ExtUtils::MakeMaker
..IX             .IX (1)         - Manipulating Lists of Lists in Perl
..na             .na (3)         - link Tcl variable to C variable .ad

For some man pages, I get replicated indices for different pages:

ExtUtils        .IX (3)         - create an extension Makefile
ExtUtils        .IX (3)         - determine libraries to use and how to use them

All of these cause man to fail miserably of course. To make it even more fun,
however, there are some programs whose man pages steadfastly refuse to even
show up in windex - like ncftp 1.9.3 (2.3.0 won't go through our firewall
easily). No matter what I do to the man page, windex won't index it. I
regularly update windex with a "catman -w /usr/local/man" run by root.

Anyone know how to convince Solaris 2.4 to either index these correctly, or
ditch windex altogether and use a brute-force man search?

--

If I managed to represent TI in this post, then I'm    | Responsibility | () |
probably far more surprised than TI is.                | Starts at Home | /\ |

 
 
 

Man page problems

Post by Gerard Trom » Sat, 11 May 1996 04:00:00



>I've been having a problem with some user-installed man pages for awhile, and
>it's come to a head with the installation of Perl and TCL/TK. Any man page with
>capital letters in it (e.g.- /usr/local/man/man3/Name.3 or Time::Local.3)
>doesn't show up correctly in the windex database. I get entries like the
>following:

>"NAME"          .IX (3)         - methods used by ExtUtils::MakeMaker
>..IX             .IX (1)         - Manipulating Lists of Lists in Perl
>..na             .na (3)         - link Tcl variable to C variable .ad

>For some man pages, I get replicated indices for different pages:

>ExtUtils        .IX (3)         - create an extension Makefile
>ExtUtils        .IX (3)         - determine libraries to use and how to use them

>All of these cause man to fail miserably of course. To make it even more fun,
>however, there are some programs whose man pages steadfastly refuse to even
>show up in windex - like ncftp 1.9.3 (2.3.0 won't go through our firewall
>easily). No matter what I do to the man page, windex won't index it. I
>regularly update windex with a "catman -w /usr/local/man" run by root.

>Anyone know how to convince Solaris 2.4 to either index these correctly, or
>ditch windex altogether and use a brute-force man search?

>--

>If I managed to represent TI in this post, then I'm    | Responsibility | () |
>probably far more surprised than TI is.                | Starts at Home | /\ |

Although I get duplicated entries from some of the packages, I haven't had the
trouble you show with your first examples. The duplication may have to to with
how the index terms are indicated --

a small sample from my system.

IPC::Open2      IPC::Open2 (3)  - open a process for both reading and writing
IPC::Open3      IPC::Open3 (3)  - open a process for reading, writing, and error
handling
Tk_FreeGC       Tk_GetGC (3)    - maintain database of read-only graphics contexts
Tk_GetGC        Tk_GetGC (3)    - maintain database of read-only graphics contexts
fileevent       fileevent (n)   - Execute a script when a file becomes readable or
writable
open2           IPC::Open2 (3)  - open a process for both reading and writing
open3           IPC::Open3 (3)  - open a process for reading, writing, and error handling

sanger 402# man open2
windex entry incorrect:  open2(3) not found.
No manual entry for open2.
sanger 403# man open3
windex entry incorrect:  open3(3) not found.
No manual entry for open3.
sanger 404# man IPC::Open2
Reformatting page.  Wait... done

IPC/OPEN2(1)              User Commands              IPC/OPEN2(1)

usually the index term is a valid man entry, here open2 and open3 don't work.

Gerard
--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Gerard Tromp, Ph.D.
CMMG, Wayne State University    vox:    313-577-8773
3116, Scott Hall                fax:    313-577-5218



 
 
 

Man page problems

Post by Ben Tayl » Thu, 16 May 1996 04:00:00


: I've been having a problem with some user-installed man pages for awhile, and
: it's come to a head with the installation of Perl and TCL/TK. Any man page with
: capital letters in it (e.g.- /usr/local/man/man3/Name.3 or Time::Local.3)
: doesn't show up correctly in the windex database. I get entries like the
: following:
:
: "NAME"          .IX (3)         - methods used by ExtUtils::MakeMaker
: ..IX             .IX (1)         - Manipulating Lists of Lists in Perl
: ..na             .na (3)         - link Tcl variable to C variable .ad

Yep.  Ain't catman great.  Trying to /usr/lib/makewhatis a little more
useful turned out to be a bust.  After getting some of the indexes
corrected, there were still alot of pages missing.  Most of the tcl
derivitive pages use .HS instead of .TH, and /usr/lib/getNAME only looks
for .TH lines.  As is, I was able to make it clean up a few things, but
not enough.

: For some man pages, I get replicated indices for different pages:
:
: ExtUtils        .IX (3)         - create an extension Makefile
: ExtUtils        .IX (3)         - determine libraries to use and how to use them

That more-less depends on how the man page is written.  Some things
do generate multiple indices.  However, catman/makewhatis/getNAME
break in rather predictable and unpredictable ways.

: All of these cause man to fail miserably of course. To make it even more fun,
: however, there are some programs whose man pages steadfastly refuse to even
: show up in windex - like ncftp 1.9.3 (2.3.0 won't go through our firewall
: easily). No matter what I do to the man page, windex won't index it. I
: regularly update windex with a "catman -w /usr/local/man" run by root.
:
: Anyone know how to convince Solaris 2.4 to either index these correctly, or
: ditch windex altogether and use a brute-force man search?

After working on makewhatis, I decided to look elsewhere.  I found an
old version of perlman which did a decent job.  I've hacked it up a bit
to make it recognize the TCL variants, and clean up a couple of perl
pages it mangles.  I'm still testing it to make sure that the indexes
it generates are pretty close to true.  It does work better than the
Solaris way.

I can make the patches available on request.

: --

: If I managed to represent TI in this post, then I'm    | Responsibility | () |
: probably far more surprised than TI is.                | Starts at Home | /\ |

Ben Taylor
Smoke N' Mirrors, Inc.

 
 
 

Man page problems

Post by Scott Giffo » Fri, 17 May 1996 04:00:00


: I've been having a problem with some user-installed man pages for awhile, and
: it's come to a head with the installation of Perl and TCL/TK. Any man page with
: capital letters in it (e.g.- /usr/local/man/man3/Name.3 or Time::Local.3)
: doesn't show up correctly in the windex database. I get entries like the
: following:
:
: "NAME"          .IX (3)         - methods used by ExtUtils::MakeMaker
: ..IX             .IX (1)         - Manipulating Lists of Lists in Perl
: ..na             .na (3)         - link Tcl variable to C variable .ad

  The problem isn't capital letters, it's the colons.  makewhatis treats
colons as seperators, so if the page is called ExtUtils::MakeMaker, it
thinks that ExtUtils::MakeMaker is the manpage for both ExtUtils and MakeMaker.

  The .IX thing also seems to be a Perlism, but Makewhatis can be taught to ignore it.

  I had the same problem, and ended up making some changes to
/usr/lib/makewhatis that fixed all of my serious problems.  Here's a patch to
the one that came with our copy of Solaris 2.4...Install it with Larry
Wall's Patch program.

---BEGIN patch
*** makewhatis  Thu May 16 02:01:00 1996
--- makewhatis.good     Thu May 16 02:00:52 1996
***************
*** 35,40 ****
--- 35,41 ----
        fi
  done >/tmp/whatisx.$$
  sed  </tmp/whatisx.$$ \
+       -e 's/.IX Header "NAME" //' \
        -e 's/\\-/-/' \
        -e 's/\\\*-/-/' \
        -e 's/ VAX-11//' \
***************
*** 47,53 ****
        synop = substr($0, index($0, "- "))
        count = split(title, n, " ")
        for (i=1; i<count; i++) {
!               if ( (pos = index(n[i], ",")) || (pos = index(n[i], ":")) )
                        n[i] = substr(n[i], 1, pos-1)
                printf("%s\t%s %s\t%s\n", n[i], n[1], n[count], synop)
        }
--- 48,54 ----
        synop = substr($0, index($0, "- "))
        count = split(title, n, " ")
        for (i=1; i<count; i++) {
!               if ( (pos = index(n[i], ",")) )
                        n[i] = substr(n[i], 1, pos-1)
                printf("%s\t%s %s\t%s\n", n[i], n[1], n[count], synop)
        }
---END patch

Basically you add

       -e 's/.IX Header "NAME" //' \

with all of the other -e's, and you remove the

        || (pos = index(n[i], ":"))

from the awk program.

  Somebody else suggested perlman, which may solve more problems than this
patch does.  I'm curious about how the rest of the Perl community deals
with this horrible manpage mangling...

  Hope this helps.  Somebody posted that they also had some diffs against
makewhatis, I'd be curious to see if theirs make more improvements...

----Scott.

 
 
 

1. Man Pages problem

: fg: no job control
: apropos: manpath is null
: Error executing formatting or display command.
: System command exited with status 256.

This is a very well-known bug in certain Slackware distributions.
Either get the original man-1.4d distribution (say, from sunsite),
or have a look at the simple_fixes directory that zenon is
maintaining - you may well have a handful of other problems,
also caused by flaws in this same distribution.

2. Wacom Graphic-Tabs

3. Yggdrasil man page problems

4. [Billy O. Howard <AS.PLN.PI@SIMTEL20.ARPA>: Sperry 5000/80 or 5000/90 using Oracle DBMS]

5. Man Pages Problem

6. upgrading Glibc to 2.2 in RedHat 6.2

7. Man page problems when not root

8. lost+found dir./files question

9. Man Pages Problem

10. man page problems.

11. mwm man page problems in SWIM Motif

12. Printing man page problem

13. man page problem