[BACK]Return to apropos.1 CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/apropos.1 between version 1.2 and 1.37

version 1.2, 2011/10/08 12:24:40 version 1.37, 2015/02/16 16:23:54
Line 1 
Line 1 
 .\"     $Id$  .\"     $Id$
 .\"  .\"
 .\" Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>  .\" Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
   .\" Copyright (c) 2011, 2012, 2014 Ingo Schwarze <schwarze@openbsd.org>
 .\"  .\"
 .\" Permission to use, copy, modify, and distribute this software for any  .\" Permission to use, copy, modify, and distribute this software for any
 .\" purpose with or without fee is hereby granted, provided that the above  .\" purpose with or without fee is hereby granted, provided that the above
Line 18 
Line 19 
 .Dt APROPOS 1  .Dt APROPOS 1
 .Os  .Os
 .Sh NAME  .Sh NAME
 .Nm apropos  .Nm apropos ,
 .Nd search the manual page database  .Nm whatis
   .Nd search manual page databases
 .Sh SYNOPSIS  .Sh SYNOPSIS
 .Nm  .Nm
 .Op Fl eIr  .Op Fl acfhklw
 .Op Fl a Ar arch  .Op Fl C Ar file
 .Op Fl c Ar cat  .Op Fl M Ar path
 .Op Fl s Ar sort  .Op Fl m Ar path
 .Op Fl t Ar types  .Op Fl O Ar outkey
 .Ar key  .Op Fl S Ar arch
   .Op Fl s Ar section
   .Ar expression ...
 .Sh DESCRIPTION  .Sh DESCRIPTION
 The  The
   .Nm apropos
   and
   .Nm whatis
   utilities query manual page databases generated by
   .Xr makewhatis 8 ,
   evaluating
   .Ar expression
   for each file in each database.
   By default, they display the names, section numbers, and description lines
   of all matching manuals.
   .Pp
   By default,
 .Nm  .Nm
 utility queries the manual page database.  searches for
 Its arguments are as follows:  .Xr makewhatis 8
   databases in the default paths stipulated by
   .Xr man 1
   and uses case-insensitive substring matching
   .Pq the Cm = No operator
   over manual names and descriptions
   .Pq the Li \&Nm No and Li \&Nd No macro keys .
   Multiple terms imply pairwise
   .Fl o .
   .Pp
   .Nm whatis
   is a synonym for
   .Nm
   .Fl f .
   .Pp
   The options are as follows:
 .Bl -tag -width Ds  .Bl -tag -width Ds
 .It Fl a Ar arch  .It Fl a
 Search only for a particular architecture.  Instead of showing only the title lines, show the complete manual pages,
 .It Fl c Ar cat  just like
 Search only for a category (manual section).  .Xr man 1
   .Fl a
   would.
   If the standard output is a terminal device and
   .Fl c
   is not specified, use
   .Xr more 1
   to paginate them.
   In
   .Fl a
   mode, the options
   .Fl IKOTW
   described in the
   .Xr mandoc 1
   manual are also available.
   .It Fl C Ar file
   Specify an alternative configuration
   .Ar file
   in
   .Xr man.conf 5
   format.
   .It Fl c
   In
   .Fl a
   mode, copy the formatted manual pages to the standard output without using
   .Xr more 1
   to paginate them.
   .It Fl f
   Search for all words in
   .Ar expression
   in manual page names only.
   The search is case insensitive and matches whole words only.
   In this mode, macro keys, comparison operators, and logical operators
   are not available.
   This overrides any earlier
   .Fl k
   and
   .Fl l
   options.
   .It Fl h
   Instead of showing the title lines, show the SYNOPSIS sections, just like
   .Xr man 1
   .Fl h
   would.
   .It Fl k
   Support the full
   .Ar expression
   syntax.
   This overrides any earlier
   .Fl f
   and
   .Fl l
   options.
   It is the default for
   .Nm .
   .It Fl l
   An alias for
   .Xr mandoc 1
   .Fl a .
   This overrides any earlier
   .Fl f ,
   .Fl k ,
   and
   .Fl w
   options.
   .It Fl M Ar path
   Use the colon-separated path instead of the default list of paths
   searched for
   .Xr makewhatis 8
   databases.
   Invalid paths, or paths without manual databases, are ignored.
   .It Fl m Ar path
   Prepend the colon-separated paths to the list of paths searched
   for
   .Xr makewhatis 8
   databases.
   Invalid paths, or paths without manual databases, are ignored.
   .It Fl O Ar outkey
   Show the values associated with the key
   .Ar outkey
   instead of the manual descriptions.
   .It Fl S Ar arch
   Restrict the search to pages for the specified
   .Xr machine 1
   architecture.
   .Ar arch
   is case insensitive.
   By default, pages for all architectures are shown.
   .It Fl s Ar section
   Restrict the search to the specified section of the manual.
   By default, pages from all sections are shown.
 See  See
 .Xr man 1  .Xr man 1
 for a listing of categories.  for a listing of sections.
 .It Fl e  .It Fl w
 Search only for exact matches (subject to  Instead of showing title lines, show the pathnames of the matching
 .Fl I ) .  manual pages, just like
 .It Fl I  .Xr man 1
 Case-insensitive matching.  .Fl w
 .It Fl r  would.
 Consider  .El
   .Pp
   An
   .Ar expression
   consists of search terms joined by logical operators
   .Fl a
   .Pq and
   and
   .Fl o
   .Pq or .
   The
   .Fl a
   operator has precedence over
   .Fl o
   and both are evaluated left-to-right.
   .Bl -tag -width Ds
   .It \&( Ar expr No \&)
   True if the subexpression
   .Ar expr
   is true.
   .It Ar expr1 Fl a Ar expr2
   True if both
   .Ar expr1
   and
   .Ar expr2
   are true (logical
   .Sq and ) .
   .It Ar expr1 Oo Fl o Oc Ar expr2
   True if
   .Ar expr1
   and/or
   .Ar expr2
   evaluate to true (logical
   .Sq or ) .
   .It Ar term
   True if
   .Ar term
   is satisfied.
   This has syntax
   .Sm off
   .Oo
   .Op Ar key Op , Ar key ...
   .Pq Cm = | ~
   .Oc
   .Ar val ,
   .Sm on
   where
 .Ar key  .Ar key
 to be a POSIX regular expression (subject to  is an
 .Fl I ) .  .Xr mdoc 7
   macro to query and
   .Ar val
   is its value.
 See  See
 .Xr re_format 7  .Sx Macro Keys
 for a description of regular expressions.  for a list of available keys.
 .It Fl s Ar sort  Operator
 Sorting type.  .Cm =
 Accepts  evaluates a substring, while
 .Ar cat  .Cm ~
 to sort by category and then by title or  evaluates a regular expression.
 .Ar title  .It Fl i Ar term
 to sort by title (which is the default).  If
 .It Fl t Ar types  .Ar term
 Consider only types of keyword match, where  is a regular expression, it
 .Ar types  is evaluated case-insensitively.
 is a comma-separated list consisting of the following:  Has no effect on substring terms.
 .Ar name ,  
 manual names;  
 .Ar func ,  
 function names;  
 .Ar utility ,  
 utility names;  
 .Ar incl ,  
 include files;  
 .Ar var ,  
 variable names;  
 .Ar stand ,  
 standards ;  
 .Ar auth ,  
 authors;  
 .Ar conf ,  
 configuration strings;  
 .Ar desc ,  
 descriptive text;  
 .Ar xref ,  
 cross-references.  
 .Ar path ,  
 file pathnames;  
 .Ar env ,  
 environment variables; or  
 .Ar err ,  
 error codes.  
 Specifying  
 .Ar all  
 will search for all types.  
 .It Ar key  
 The search key.  
 .El  .El
 .Pp  .Pp
 By default,  Results are sorted by manual sections and names, with output formatted as
 .Nm  
 searches for substring matches of  
 .Ar key  
 in manual names and descriptions  
 and displays results by manual title.  
 Output is formatted as  
 .Pp  .Pp
 .D1 title(cat) \- description  .D1 name[, name...](sec) \- description
 .Pp  .Pp
 Where  Where
 .Qq title  .Dq name
 is the manual's title (note multiple manual names may exist for one  is the manual's name,
 title),  .Dq sec
 .Qq cat  is the manual section, and
 is the category, and  .Dq description
 .Qq description  
 is the manual's short description.  is the manual's short description.
 If an architecture is specified for the manual, it is displayed as  If an architecture is specified for the manual, it is displayed as
 .Pp  .Pp
 .D1 title(cat/arch) \- description  .D1 name(sec/arch) \- description
 .Pp  .Pp
 Resulting manuals may be accessed as  Resulting manuals may be accessed as
 .Pp  .Pp
 .Dl $ man -s cat title  .Dl $ man \-s sec name
 .Pp  .Pp
 If an architecture is specified in the output, use  If an architecture is specified in the output, use
 .Pp  .Pp
 .Dl $ man -s cat -S arch title  .Dl $ man \-s sec \-S arch name
 .\" .Sh IMPLEMENTATION NOTES  .Ss Macro Keys
 .\" Not used in OpenBSD.  Queries evaluate over a subset of
 .\" .Sh RETURN VALUES  .Xr mdoc 7
 .\" For sections 2, 3, & 9 only.  macros indexed by
 .\" .Sh ENVIRONMENT  .Xr makewhatis 8 .
 .\" For sections 1, 6, 7, & 8 only.  In addition to the macro keys listed below, the special key
 .\" .Sh FILES  .Cm any
   may be used to match any available macro key.
   .Pp
   Names and description:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&Nm Ta manual name
   .It Li \&Nd Ta one-line manual description
   .It Li arch Ta machine architecture (case-insensitive)
   .It Li sec  Ta manual section number
   .El
   .Pp
   Sections and cross references:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&Sh Ta section header (excluding standard sections)
   .It Li \&Ss Ta subsection header
   .It Li \&Xr Ta cross reference to another manual page
   .It Li \&Rs Ta bibliographic reference
   .El
   .Pp
   Semantic markup for command line utilities:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&Fl Ta command line options (flags)
   .It Li \&Cm Ta command modifier
   .It Li \&Ar Ta command argument
   .It Li \&Ic Ta internal or interactive command
   .It Li \&Ev Ta environmental variable
   .It Li \&Pa Ta file system path
   .El
   .Pp
   Semantic markup for function libraries:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&Lb Ta function library name
   .It Li \&In Ta include file
   .It Li \&Ft Ta function return type
   .It Li \&Fn Ta function name
   .It Li \&Fa Ta function argument type and name
   .It Li \&Vt Ta variable type
   .It Li \&Va Ta variable name
   .It Li \&Dv Ta defined variable or preprocessor constant
   .It Li \&Er Ta error constant
   .It Li \&Ev Ta environmental variable
   .El
   .Pp
   Various semantic markup:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&An Ta author name
   .It Li \&Lk Ta hyperlink
   .It Li \&Mt Ta Do mailto Dc hyperlink
   .It Li \&Cd Ta kernel configuration declaration
   .It Li \&Ms Ta mathematical symbol
   .It Li \&Tn Ta tradename
   .El
   .Pp
   Physical markup:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&Em Ta italic font or underline
   .It Li \&Sy Ta boldface font
   .It Li \&Li Ta typewriter font
   .El
   .Pp
   Text production:
   .Bl -column "xLix" description -offset indent -compact
   .It Li \&St Ta reference to a standards document
   .It Li \&At Ta At No version reference
   .It Li \&Bx Ta Bx No version reference
   .It Li \&Bsx Ta Bsx No version reference
   .It Li \&Nx Ta Nx No version reference
   .It Li \&Fx Ta Fx No version reference
   .It Li \&Ox Ta Ox No version reference
   .It Li \&Dx Ta Dx No version reference
   .El
   .Sh ENVIRONMENT
   .Bl -tag -width MANPAGER
   .It Ev MANPAGER
   Any non-empty value of the environment variable
   .Ev MANPAGER
   will be used instead of the standard pagination program,
   .Xr more 1 .
   .It Ev MANPATH
   The standard search path used by
   .Xr man 1
   may be changed by specifying a path in the
   .Ev MANPATH
   environment variable.
   Invalid paths, or paths without manual databases, are ignored.
   Overridden by
   .Fl M .
   If
   .Ev MANPATH
   begins with a colon, it is appended to the default list;
   if it ends with a colon, it is prepended to the default list;
   or if it contains two adjacent colons,
   the standard search path is inserted between the colons.
   If none of these conditions are met, it overrides the
   standard search path.
   .It Ev PAGER
   Specifies the pagination program to use when
   .Ev MANPAGER
   is not defined.
   If neither PAGER nor MANPAGER is defined,
   .Pa /usr/bin/more Fl s
   will be used.
   .El
   .Sh FILES
   .Bl -tag -width "/etc/man.conf" -compact
   .It Pa mandoc.db
   name of the
   .Xr makewhatis 8
   keyword database
   .It Pa /etc/man.conf
   default
   .Xr man 1
   configuration file
   .El
 .Sh EXIT STATUS  .Sh EXIT STATUS
 .Ex -std  .Ex -std
 .Sh EXAMPLES  .Sh EXAMPLES
 Search for  Search for
   .Qq .cf
   as a substring of manual names and descriptions:
   .Pp
   .Dl $ apropos .cf
   .Pp
   Include matches for
   .Qq .cnf
   and
   .Qq .conf
   as well:
   .Pp
   .Dl $ apropos .cf .cnf .conf
   .Pp
   Search in names and descriptions using a regular expression:
   .Pp
   .Dl $ apropos '~set.?[ug]id'
   .Pp
   Search for manuals in the library section mentioning both the
 .Qq optind  .Qq optind
 as a variable name in the library category:  and the
   .Qq optarg
   variables:
 .Pp  .Pp
 .Dl $ apropos -tvar -c 3 optind  .Dl $ apropos \-s 3 Va=optind \-a Va=optarg
 .Pp  .Pp
 Search for all manuals referencing the term  Do exactly the same as calling
 .Qq POSIX  .Xr whatis 1
 in any letter case:  with the argument
   .Qq ssh :
 .Pp  .Pp
 .Dl $ apropos -tall -I posix  .Dl $ apropos \-\- \-i 'Nm~[[:<:]]ssh[[:>:]]'
 .\" .Sh DIAGNOSTICS  .Pp
 .\" For sections 1, 4, 6, 7, & 8 only.  The following two invocations are equivalent:
 .\" .Sh ERRORS  .Pp
 .\" For sections 2, 3, & 9 only.  .D1 Li $ apropos -S Ar arch Li -s Ar section expression
   .Bd -ragged -offset indent
   .Li $ apropos \e( Ar expression Li \e)
   .Li -a arch~^( Ns Ar arch Ns Li |any)$
   .Li -a sec~^ Ns Ar section Ns Li $
   .Ed
 .Sh SEE ALSO  .Sh SEE ALSO
 .Xr man 1 ,  .Xr man 1 ,
 .Xr mandoc 1 ,  .Xr re_format 7 ,
 .Xr re_format 7  .Xr makewhatis 8
 .\" .Sh STANDARDS  .Sh HISTORY
 .\" .Sh HISTORY  Part of the functionality of
 .Sh AUTHORS  .Nm whatis
   was already provided by the former
   .Nm manwhere
   utility in
   .Bx 1 .
 The  The
 .Nm  .Nm
 utility was written by  and
 .An Kristaps Dzonsons ,  .Nm whatis
 .Mt kristaps@bsd.lv .  utilities first appeared in
 .\" .Sh CAVEATS  .Bx 2 .
 .\" .Sh BUGS  They were rewritten from scratch for
 .\" .Sh SECURITY CONSIDERATIONS  .Ox 5.6 .
 .\" Not used in OpenBSD.  .Pp
   The
   .Fl M
   option and the
   .Ev MANPATH
   variable first appeared in
   .Bx 4.3 ;
   .Fl m
   in
   .Bx 4.3 Reno ;
   .Fl C
   in
   .Bx 4.4 Lite1 ;
   and
   .Fl S
   and
   .Fl s
   in
   .Ox 4.5
   for
   .Nm
   and in
   .Ox 5.6
   for
   .Nm whatis .
   .Sh AUTHORS
   .An -nosplit
   .An Bill Joy
   wrote
   .Nm manwhere
   in 1977 and the original
   .Bx
   .Nm
   and
   .Nm whatis
   in February 1979.
   The current version was written by
   .An Kristaps Dzonsons Aq Mt kristaps@bsd.lv
   and
   .An Ingo Schwarze Aq Mt schwarze@openbsd.org .

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.37

CVSweb