Commit Graph

41 Commits

Author SHA1 Message Date
christos e2d47bd7fa get the value of the entry for the class not the key. 2010-07-07 21:24:34 +00:00
christos cbc22ad229 - centralize the snprintf code.
- use err where appropriate.
- add machclass which should be x86 when i386 and amd64 and can be specified
  in man.conf as:
	_i386	x86
	_amd64	x86
  so that we can support merged pages. Nothing uses this yet.
2010-05-23 22:04:36 +00:00
cegger 656e85b2f1 Mimic OSX behaviour:
On OS X it is possible to specify the manpage filename
with a full or relative path like this:

   man ./foo.5

or

   man /cd/foo/bar.1.gz

This is really helpful to view the manpage quickly while editing it.

patch presented on current-users@ and tech-userlevel@:
http://mail-index.netbsd.org/current-users/2009/10/06/msg010767.html
http://mail-index.netbsd.org/tech-userlevel/2009/10/06/msg002675.html

No objections
2009-10-07 08:30:31 +00:00
cegger 58b5db465d - use EXIT_FAILURE/EXIT_SUCCESS
- whitespace nits
- ansify cleanup()/usage()
- remove pointless parenthesis on return
2009-10-06 06:43:15 +00:00
lukem 98e5374ccb Remove the \n and tabs from the __COPYRIGHT() strings.
Tweak to use a consistent format.
2008-07-21 14:19:20 +00:00
lukem c9c455bf1d Convert to using raise_default_signal(3). 2007-10-05 07:36:45 +00:00
jwise b6bad2e5f2 Since MAN_DEBUG is constant, go from if (MAN_DEBUG) to #if MAN_DEBUG 2007-02-05 19:46:24 +00:00
christos 83d63c0a25 Coverity CID 2996: Don't return without closing fp. 2006-05-01 23:22:48 +00:00
chuck d09fe2c467 modified man(1):
- avoid double slashes when displaying man pages (got tired
   of '/usr/share/man//cat1/man.0').
 - got rid of __P() while working on it.
 - incorporate some of my old notes explaining how manpath works into the
   comments of the code itself.
 - renamed some of the vars so that the code is consistent throughout
   (and hopefully clearer and easier to understand)
 - fixed relative man paths for multiple man pages (man did a chdir()
   on the first man page it had to format --- this broke any remaining
   relative path man pages left to process).   save old directory and
   fchdir() back to it after formatting.
 - improved doc on "man -h" which does more than just whatis(1) [e.g.
   "man -h fopen" prints the required include files and the prototypes
   rather than just the one-liner you get with whatis(1)]
 - manconf.c now fills in the "len" length field in the TAG/ENTRY
   structures (man now uses len).

revise man.conf file reading stuff to return error on failure in
addentry/gettag (fka getlist) rather than just err()ing out.   this
allows man(1) to call cleanup and delete its tmp files rather than
just leave them floating.  revise other apps using this code
(makewhatis, apropos, catman, whatis) to expect this.  also remove
__P on updated files.
2006-04-10 14:39:06 +00:00
christos 03c0fd3fc6 change an int to size_t 2006-04-08 23:27:03 +00:00
jmmv b635f565e7 Homogenize usage messages: make the 'usage' word all lowercase, as this seems
to be the most common practice in our tree.
2004-01-05 23:23:32 +00:00
agc 89aaa1bb64 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
2003-08-07 11:13:06 +00:00
thorpej 7c96dd1581 Rename man/config.{c,h} to man/manconf.{c,h}, so we don't have to
worry about problems including "config.h" when building as a host
tool.
2002-09-13 15:56:37 +00:00
lukem 334bc46aa5 - getlist(): add "int create" arg, which creates list if it's not present
(using guts of now defunct addlist())
- use TAILQ_*() macros appropriately when manipulating tailqs
2002-06-11 04:39:52 +00:00
groo 004beaa10c Fix longstanding misuse of glob(3) and fnmatch(3) in man page search.
glob(3)-special characters are now escaped in the supplied man page names.

Makes ``man ['' work without mysterious quoting.
2002-03-14 05:24:14 +00:00
cgd a8ec668ddf convert to use getprogname() 2001-02-19 23:03:42 +00:00
simonb a097e35162 Allow "-s" to specify a section name, ala the SysV man command.
Unlike the SysV man command, this doesn't allow for the -s argument
to be a list.
2000-06-12 14:53:48 +00:00
thorpej c57ef7446d check_pager() was using an uninitialized variable; fix it. 2000-06-07 18:52:31 +00:00
jdolecek c1f28b097c allow to specify relative paths for sections in man.conf - they are used
similarily to _subdir, but only when appropriate
fix -m handling, so that e.g. "man -m . 3 printf" works as it should
add new -S flag, to specify a string the result path has to contain
g/c some unused stuff

Written by Chuck Cranor, with only cosmetic changes & const poisoning by me.
2000-05-27 21:33:26 +00:00
tsutsui 5cb06e6456 Use uname(3) to determine MACHINE type. 2000-01-09 04:54:53 +00:00
lukem 3f8c4dac86 revert previous 1999-11-02 10:55:47 +00:00
lukem 0895d2339e remove superfluous '-' in getopt string 1999-11-02 10:52:49 +00:00
kleink 6546b1feed Try $TMPDIR first, then fall back to _PATH_TMP. 1999-07-22 15:09:45 +00:00
itohy b70a1b7220 A caught signal is blocked in the handler and
must be unblocked to do the default action.
The old code may generate weird exit status
on signals.
1999-07-22 03:02:36 +00:00
itohy 0953ea242f Remove temp file on SIGPIPE (such as "man sh | head"). 1999-06-19 05:25:31 +00:00
kleink ad4023c857 Fall back to more(1) if PAGER is set but null. 1999-06-13 19:38:04 +00:00
christos 1a67b18deb char -> unsigned char 1998-11-06 22:29:44 +00:00
wsanchez 76c99f3c0a We can't define MACHINE from a makefile in Rhapsody, because you might be cross
compiling, or building a fat (multi-architecture) binary.  Our compiler
  defines __ARCHITECTURE__ for this use.
Fixed an off-by-one error that may occasionally cause man to seg fault. Found
  by using a special strict malloc() implementation.
1998-10-08 01:36:04 +00:00
ross f670fa10c5 Add { and } to shut up egcs. Reformat the more questionable code. 1998-08-25 20:59:36 +00:00
kleink d39ba37ccb Since GLOB_NOCHECK is not set, explicitly check for a return value of
GLOB_NOMATCH from glob().  Noticed by Juergen Hannken-Illjes.
1998-07-06 14:23:31 +00:00
kleink fc5d36f8e4 GLOB_QUOTE is dead; per POSIX, backslash quoting of special characters being
enabled is the default behaviour.
1998-06-19 22:58:04 +00:00
tv 13b09649c2 When man was "fixed" to chdir() to the man root as historical man does,
it broke the -M option on relative paths (the chdir works as it should,
but the relative man page path is still used whole in nroff).  This
repairs the situation by chopping the full pathname in half--one part
for the chdir, one part for the filename.
1997-11-23 23:24:14 +00:00
mikel 78b44c8f92 cleanup for WARNS=1 1997-10-17 06:42:09 +00:00
mikel 37c88d8964 resize a pathname buffer to MAXPATHLEN; from Matthias Scheler in PR 4101 1997-09-10 07:13:51 +00:00
tls 7f429c3306 Sync with 4.4BSD-Lite2 1995-09-28 06:05:11 +00:00
mycroft c79429853d Pay attention to the section number, even if MANPATH or -M is specified. 1995-04-20 04:09:32 +00:00
mycroft db6e530eb0 Sync with 4.4-Lite, plus local changes. 1995-01-16 09:29:08 +00:00
jtc dfab265f6e Fix from Christos Zoulas which makes relative paths in .so lines work when
man pages are formatted.
1994-06-03 22:38:11 +00:00
cgd 75556c7593 fix from bostic for multiple match problem 1994-04-17 02:15:13 +00:00
cgd 7b3c4a81f6 fix from Keith White <kwhite@csi.UOttawa.CA>, to DTRT when man -w's output
is redirected.
1994-03-18 00:46:49 +00:00
cgd 091f0a7a58 add man(1) ; part of new man(1) package from Bostic 1993-12-21 02:59:25 +00:00