more(1p) - phpMan

MORE(1P)                   POSIX Programmer's Manual                  MORE(1P)

PROLOG
       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
       implementation of this interface may differ (consult the  corresponding
       Linux  manual page for details of Linux behavior), or the interface may
       not be implemented on Linux.
NAME
       more - display files on a page-by-page basis
SYNOPSIS
       more [-ceisu][-n number][-p command][-t tagstring][file ...]
DESCRIPTION
       The more utility shall read files and either write them to the terminal
       on  a page-by-page basis or filter them to standard output. If standard
       output is not a terminal device, all input files  shall  be  copied  to
       standard  output  in  their  entirety,  without modification, except as
       specified for the -s option.  If standard output is a terminal  device,
       the  files shall be written a number of lines (one screenful) at a time
       under the control of user commands. See the EXTENDED  DESCRIPTION  sec-
       tion.
       Certain block-mode terminals do not have all the capabilities necessary
       to support the complete more definition; they are incapable of  accept-
       ing commands that are not terminated with a <newline>.  Implementations
       that support such terminals shall provide an operating mode to more  in
       which  all  commands can be terminated with a <newline> on those termi-
       nals. This mode:
        * Shall be documented in the system documentation
        * Shall, at invocation, inform the user  of  the  terminal  deficiency
          that  requires  the  <newline> usage and provide instructions on how
          this warning can be suppressed in future invocations
        * Shall not be required  for  implementations  supporting  only  fully
          capable terminals
        * Shall not affect commands already requiring <newline>s
        * Shall  not  affect users on the capable terminals from using more as
          described in this volume of IEEE Std 1003.1-2001
OPTIONS
       The more utility shall  conform  to  the  Base  Definitions  volume  of
       IEEE Std 1003.1-2001, Section 12.2, Utility Syntax Guidelines.
       The following options shall be supported:
       -c     If  a  screen  is to be written that has no lines in common with
              the current screen, or more is writing its  first  screen,  more
              shall  not scroll the screen, but instead shall redraw each line
              of the screen in turn, from the top of the screen to the bottom.
              In  addition,  if  more  is writing its first screen, the screen
              shall be cleared. This option may be silently ignored on devices
              with insufficient terminal capabilities.
       -e     By  default,  more shall exit immediately after writing the last
              line of the last file in the argument list. If the -e option  is
              specified:
               1. If there is only a single file in the argument list and that
                  file was completely displayed on a single screen, more shall
                  exit immediately after writing the last line of that file.
               2. Otherwise,  more  shall exit only after reaching end-of-file
                  on the last file in  the  argument  list  twice  without  an
                  intervening operation. See the EXTENDED DESCRIPTION section.
       -i     Perform pattern matching in searches without regard to case; see
              the Base Definitions  volume  of  IEEE Std 1003.1-2001,  Section
              9.2, Regular Expression General Requirements.
       -n  number
              Specify  the  number of lines per screenful. The number argument
              is a positive decimal integer. The -n option shall override  any
              values obtained from any other source.
       -p  command
              Each  time  a screen from a new file is displayed or redisplayed
              (including as a result of more commands; for example, :p),  exe-
              cute  the  more command(s) in the command arguments in the order
              specified, as if entered by the user after the first screen  has
              been displayed. No intermediate results shall be displayed (that
              is, if the command is a movement to a screen different from  the
              normal  first screen, only the screen resulting from the command
              shall be displayed.) If any of the commands fail for any reason,
              an informational message to this effect shall be written, and no
              further commands specified using the -p option shall be executed
              for this file.
       -s     Behave as if consecutive empty lines were a single empty line.
       -t  tagstring
              Write  the screenful of the file containing the tag named by the
              tagstring argument. See the ctags utility. The tags feature rep-
              resented  by  -t  tagstring  and  the :t command is optional. It
              shall be provided on any system that also provides a  conforming
              implementation of ctags; otherwise, the use of -t produces unde-
              fined results.
       The filename resulting from the -t option shall be logically added as a
       prefix  to the list of command line files, as if specified by the user.
       If the tag named by the tagstring argument is not found, it shall be an
       error, and more shall take no further action.
       If the tag specifies a line number, the first line of the display shall
       contain the beginning of that line. If the tag specifies a pattern, the
       first  line  of the display shall contain the beginning of the matching
       text from the first line of the file that contains that pattern. If the
       line  does  not  exist  in  the  file or matching text is not found, an
       informational message to this effect shall be displayed, and more shall
       display the default screen as if -t had not been specified.
       If  both  the  -t  tagstring  and  -p command options are given, the -t
       tagstring shall be processed first; that is, the file and starting line
       for  the display shall be as specified by -t, and then the -p more com-
       mand shall be executed. If the line (matching text) specified by the -t
       command does not exist (is not found), no -p more command shall be exe-
       cuted for this file at any time.
       -u     Treat a <backspace> as a printable control character,  displayed
              as   an   implementation-defined  character  sequence  (see  the
              EXTENDED DESCRIPTION section), suppressing backspacing  and  the
              special  handling that produces underlined or standout mode text
              on some terminal types. Also, do not ignore a  <carriage-return>
              at the end of a line.

OPERANDS
       The following operand shall be supported:
       file   A  pathname of an input file. If no file operands are specified,
              the standard input shall be used. If a file is '-', the standard
              input shall be read at that point in the sequence.

STDIN
       The  standard  input  shall be used only if no file operands are speci-
       fied, or if a file operand is '-' .
INPUT FILES
       The input files being examined shall be text files. If standard  output
       is  a  terminal, standard error shall be used to read commands from the
       user. If standard output is a terminal, standard error is not readable,
       and  command  input is needed, more may attempt to obtain user commands
       from the controlling terminal (for example, /dev/tty); otherwise,  more
       shall  terminate  with  an  error indicating that it was unable to read
       user commands. If standard output is not a  terminal,  no  error  shall
       result if standard error cannot be opened for reading.
ENVIRONMENT VARIABLES
       The following environment variables shall affect the execution of more:
       COLUMNS
              Override  the  system-selected horizontal display line size. See
              the Base Definitions volume of IEEE Std 1003.1-2001, Chapter  8,
              Environment  Variables  for  valid values and results when it is
              unset or null.
       EDITOR Used by the v command to select  an  editor.  See  the  EXTENDED
              DESCRIPTION section.
       LANG   Provide  a  default value for the internationalization variables
              that are unset or null. (See  the  Base  Definitions  volume  of
              IEEE Std 1003.1-2001,  Section  8.2,  Internationalization Vari-
              ables for the precedence of internationalization variables  used
              to determine the values of locale categories.)
       LC_ALL If  set  to a non-empty string value, override the values of all
              the other internationalization variables.
       LC_COLLATE
              Determine the locale for the  behavior  of  ranges,  equivalence
              classes,  and  multi-character collating elements within regular
              expressions.
       LC_CTYPE
              Determine the locale for  the  interpretation  of  sequences  of
              bytes  of  text  data as characters (for example, single-byte as
              opposed to multi-byte characters in arguments and  input  files)
              and  the  behavior  of  character classes within regular expres-
              sions.
       LC_MESSAGES
              Determine the locale that should be used to  affect  the  format
              and  contents  of  diagnostic messages written to standard error
              and informative messages written to standard output.
       NLSPATH
              Determine the location of message catalogs for the processing of
              LC_MESSAGES .
       LINES  Override  the  system-selected vertical screen size, used as the
              number of lines in a screenful. See the Base Definitions  volume
              of  IEEE Std 1003.1-2001,  Chapter  8, Environment Variables for
              valid values and results when it is unset or null. The -n option
              shall  take  precedence  over the LINES variable for determining
              the number of lines in a screenful.
       MORE   Determine a string containing options described in  the  OPTIONS
              section  preceded  with  hyphens and <blank>-separated as on the
              command line. Any command line options shall be processed  after
              those in the MORE variable, as if the command line were:

              more $MORE options operands
       The  MORE  variable shall take precedence over the TERM and LINES vari-
       ables for determining the number of lines in a screenful.
       TERM   Determine the name of the terminal type.  If  this  variable  is
              unset or null, an unspecified default terminal type is used.

ASYNCHRONOUS EVENTS
       Default.
STDOUT
       The  standard  output  shall be used to write the contents of the input
       files.
STDERR
       The standard error shall be used for diagnostic messages and user  com-
       mands  (see the INPUT FILES section), and, if standard output is a ter-
       minal device, to write a prompting string. The prompting  string  shall
       appear  on the screen line below the last line of the file displayed in
       the current screenful. The prompt shall contain the name  of  the  file
       currently  being  examined  and shall contain an end-of-file indication
       and the name of the next file, if any, when prompting  at  the  end-of-
       file. If an error or informational message is displayed, it is unspeci-
       fied whether it is contained in the prompt. If it is not  contained  in
       the  prompt,  it shall be displayed and then the user shall be prompted
       for a continuation character, at which point  another  message  or  the
       user  prompt  may be displayed. The prompt is otherwise unspecified. It
       is unspecified whether informational messages  are  written  for  other
       user commands.
OUTPUT FILES
       None.
EXTENDED DESCRIPTION
       The  following section describes the behavior of more when the standard
       output is a terminal device. If the standard output is not  a  terminal
       device,  no  options other than -s shall have any effect, and all input
       files shall be copied to standard output otherwise unmodified, at which
       time more shall exit without further action.
       The  number of lines available per screen shall be determined by the -n
       option, if present, or by examining values in the environment (see  the
       ENVIRONMENT  VARIABLES  section). If neither method yields a number, an
       unspecified number of lines shall be used.
       The maximum number of lines written shall be one less than this number,
       because  the  screen  line after the last line written shall be used to
       write a user prompt and user input. If  the  number  of  lines  in  the
       screen  is  less than two, the results are undefined. It is unspecified
       whether user input is permitted to be longer than the remainder of  the
       single line where the prompt has been written.
       The number of columns available per line shall be determined by examin-
       ing values in the environment (see the ENVIRONMENT VARIABLES  section),
       with  a  default  value  as described in the Base Definitions volume of
       IEEE Std 1003.1-2001, Chapter 8, Environment Variables.
       Lines that are longer than the display shall be folded; the  length  at
       which  folding occurs is unspecified, but should be appropriate for the
       output device. Folding may occur between glyphs  of  single  characters
       that take up multiple display columns.
       When  standard output is a terminal and -u is not specified, more shall
       treat <backspace>s and <carriage-return>s specially:
        * A character, followed first by a sequence of n <backspace>s (where n
          is  the  same  as  the number of column positions that the character
          occupies), then by n underscore characters ( '_' ), shall cause that
          character  to  be  written  as underlined text, if the terminal type
          supports that. The n underscore  characters,  followed  first  by  n
          <backspace>s, then any character with n column positions, shall also
          cause that character to be written as underlined text, if the termi-
          nal type supports that.
        * A  sequence  of n <backspace>s (where n is the same as the number of
          column positions that the previous character occupies) that  appears
          between  two identical printable characters shall cause the first of
          those two characters to be written as emboldened text (that is, vis-
          ually brighter, standout mode, or inverse-video mode), if the termi-
          nal type supports that, and the second to be discarded.  Immediately
          subsequent occurrences of <backspace>/ character pairs for that same
          character shall  also  be  discarded.  (For  example,  the  sequence
          "a\ba\ba\ba" is interpreted as a single emboldened 'a' .)
        * The more utility shall logically discard all other <backspace>s from
          the line as well as the character which precedes them, if any.
        * A <carriage-return> at the end of a line shall  be  ignored,  rather
          than being written as a non-printable character, as described in the
          next paragraph.
       It is implementation-defined how  other  non-printable  characters  are
       written.  Implementations  should use the same format that they use for
       the ex print command; see the OPTIONS section within the ed utility. It
       is  unspecified  whether a multi-column character shall be separated if
       it crosses a display line boundary; it  shall  not  be  discarded.  The
       behavior is unspecified if the number of columns on the display is less
       than the number of columns any single character in the line being  dis-
       played would occupy.
       When  each new file is displayed (or redisplayed), more shall write the
       first screen of the file. Once the initial  screen  has  been  written,
       more shall prompt for a user command. If the execution of the user com-
       mand results in a screen that has lines  in  common  with  the  current
       screen, and the device has sufficient terminal capabilities, more shall
       scroll the screen; otherwise, it is unspecified whether the  screen  is
       scrolled or redrawn.
       For  all  files  but  the last (including standard input if no file was
       specified, and for the last file as well, if  the  -e  option  was  not
       specified), when more has written the last line in the file, more shall
       prompt for a user command.  This prompt shall contain the name  of  the
       next  file  as well as an indication that more has reached end-of-file.
       If the user command is f, <control>-F, <space>, j, <newline>, d,  <con-
       trol>-D, or s, more shall display the next file. Otherwise, if display-
       ing the last file, more shall exit. Otherwise, more shall  execute  the
       user command specified.
       Several  of  the  commands described in this section display a previous
       screen from the input stream. In the case that text is being taken from
       a  non-rewindable  stream, such as a pipe, it is implementation-defined
       how much backwards motion is supported. If a command cannot be executed
       because  of  a limitation on backwards motion, an error message to this
       effect shall be displayed, the current screen shall not change, and the
       user shall be prompted for another command.
       If  a  command cannot be performed because there are insufficient lines
       to display, more shall alert the terminal. If a command cannot be  per-
       formed  because  there are insufficient lines to display or a / command
       fails: if the input is the standard input, the last screen in the  file
       may  be  displayed;  otherwise,  the  current file and screen shall not
       change, and the user shall be prompted for another command.
       The interactive commands in the following sections shall be  supported.
       Some commands can be preceded by a decimal integer, called count in the
       following descriptions. If not specified with the command, count  shall
       default to 1. In the following descriptions, pattern is a basic regular
       expression,  as  described  in   the   Base   Definitions   volume   of
       IEEE Std 1003.1-2001,  Section 9.3, Basic Regular Expressions. The term
       "examine" is historical usage meaning "open the file for viewing''; for
       example, more foo would be expressed as examining file foo.
       In  the  following  descriptions, unless otherwise specified, line is a
       line in the more display, not a line from the file being examined.
       In the following descriptions,  the  current  position  refers  to  two
       things:
        1. The position of the current line on the screen
        2. The line number (in the file) of the current line on the screen
       Usually,  the  line on the screen corresponding to the current position
       is the third line on the screen. If this is  not  possible  (there  are
       fewer  than  three  lines  to  display or this is the first page of the
       file, or it is the last page of the file), then the current position is
       either the first or last line on the screen as described later.
   Help
       Synopsis:

              h

       Write a summary of these commands and other implementation-defined com-
       mands. The behavior shall be as if the more utility were executed  with
       the  -e  option  on  a file that contained the summary information. The
       user shall be prompted as described earlier in this section  when  end-
       of-file  is  reached.  If the user command is one of those specified to
       continue to the next file, more shall return to  the  file  and  screen
       state from which the h command was executed.
   Scroll Forward One Screenful
       Synopsis:

              [count]f
              [count]<control>-F

       Scroll  forward count lines, with a default of one screenful.  If count
       is more than the screen size, only the final screenful shall  be  writ-
       ten.
   Scroll Backward One Screenful
       Synopsis:

              [count]b
              [count]<control>-B

       Scroll  backward  count lines, with a default of one screenful (see the
       -n option). If count is more than  the  screen  size,  only  the  final
       screenful shall be written.
   Scroll Forward One Line
       Synopsis:

              [count]<space>
              [count]j
              [count]<newline>

       Scroll  forward count lines. The default count for the <space> shall be
       one screenful; for j and <newline>, one line. The  entire  count  lines
       shall be written, even if count is more than the screen size.
   Scroll Backward One Line
       Synopsis:

              [count]k

       Scroll  backward  count lines. The entire count lines shall be written,
       even if count is more than the screen size.
   Scroll Forward One Half Screenful
       Synopsis:

              [count]d
              [count]<control>-D

       Scroll forward count lines, with a default of one half  of  the  screen
       size. If count is specified, it shall become the new default for subse-
       quent d, <control>-D, and u commands.
   Skip Forward One Line
       Synopsis:

              [count]s

       Display the screenful beginning with the line  count  lines  after  the
       last line on the current screen. If count would cause the current posi-
       tion to be such that less than one screenful would be written, the last
       screenful in the file shall be written.
   Scroll Backward One Half Screenful
       Synopsis:

              [count]u
              [count]<control>-U

       Scroll  backward  count lines, with a default of one half of the screen
       size. If count is specified, it shall become the new default for subse-
       quent  d,  <control>-D,  u,  and <control>-U commands. The entire count
       lines shall be written, even if count is more than the screen size.
   Go to Beginning of File
       Synopsis:

              [count]g

       Display the screenful beginning with line count.
   Go to End-of-File
       Synopsis:

              [count]G

       If count is specified, display the screenful beginning  with  the  line
       count. Otherwise, display the last screenful of the file.
   Refresh the Screen
       Synopsis:

              r
              <control>-L

       Refresh the screen.
   Discard and Refresh
       Synopsis:

              R

       Refresh  the screen, discarding any buffered input. If the current file
       is non-seekable, buffered input shall not be discarded and the  R  com-
       mand shall be equivalent to the r command.
   Mark Position
       Synopsis:

              mletter

       Mark the current position with the letter named by letter, where letter
       represents the name of one of the lowercase  letters  of  the  portable
       character set. When a new file is examined, all marks may be lost.
   Return to Mark
       Synopsis:

              'letter

       Return to the position that was previously marked with the letter named
       by letter, making that line the current position.
   Return to Previous Position
       Synopsis:

              ''

       Return to the position from which the last large movement  command  was
       executed  (where  a "large movement" is defined as any movement of more
       than a screenful of lines). If no such movements have been made, return
       to the beginning of the file.
   Search Forward for Pattern
       Synopsis:

              [count]/[!]pattern<newline>

       Display  the  screenful  beginning with the countth line containing the
       pattern. The search shall start after the  first  line  currently  dis-
       played.  The  null  regular  expression  ( '/' followed by a <newline>)
       shall repeat the search using the previous regular expression,  with  a
       default  count.  If  the  character '!' is included, the matching lines
       shall be those that do not contain the pattern. If no  match  is  found
       for the pattern, a message to that effect shall be displayed.
   Search Backward for Pattern
       Synopsis:

              [count]?[!]pattern<newline>

       Display the screenful beginning with the countth previous line contain-
       ing the pattern. The search shall start on the  last  line  before  the
       first  line currently displayed. The null regular expression ( '?' fol-
       lowed by a <newline>) shall repeat the search using the previous  regu-
       lar expression, with a default count. If the character '!' is included,
       matching lines shall be those that do not contain the pattern.   If  no
       match  is found for the pattern, a message to that effect shall be dis-
       played.
   Repeat Search
       Synopsis:

              [count]n

       Repeat the previous search for countth line containing the last pattern
       (or not containing the last pattern, if the previous search was "/!" or
       "?!"  ).
   Repeat Search in Reverse
       Synopsis:

              [count]N

       Repeat the search in the opposite direction of the previous search  for
       the  countth  line  containing  the last pattern (or not containing the
       last pattern, if the previous search was "/!" or "?!" ).
   Examine New File
       Synopsis:

              :e [filename]<newline>

       Examine a new file. If the filename argument is not specified, the cur-
       rent  file (see the :n and :p commands below) shall be re-examined. The
       filename shall be subjected to the process  of  shell  word  expansions
       (see  Word  Expansions  );  if more than a single pathname results, the
       effects are unspecified.  If filename is a number sign  (  '#'  ),  the
       previously  examined  file  shall  be  re-examined.  If filename is not
       accessible for any reason (including that it is a  non-seekable  file),
       an error message to this effect shall be displayed and the current file
       and screen shall not change.
   Examine Next File
       Synopsis:

              [count]:n

       Examine the next file. If a number count is specified, the countth next
       file  shall be examined. If filename refers to a non-seekable file, the
       results are unspecified.
   Examine Previous File
       Synopsis:

              [count]:p

       Examine the previous file. If a number count is specified, the  countth
       previous  file  shall be examined. If filename refers to a non-seekable
       file, the results are unspecified.
   Go to Tag
       Synopsis:

              :t tagstring<newline>

       If the file containing the tag named by the tagstring argument  is  not
       the  current  file, examine the file, as if the :e command was executed
       with that file as the argument. Otherwise, or in addition, display  the
       screenful  beginning  with the tag, as described for the -t option (see
       the OPTIONS section).  If the ctags utility is  not  supported  by  the
       system, the use of :t produces undefined results.
   Invoke Editor
       Synopsis:

              v

       Invoke  an  editor to edit the current file being examined. If standard
       input is being examined, the results are unspecified. The name  of  the
       editor  shall  be taken from the environment variable EDITOR , or shall
       default to vi. If the last pathname component in EDITOR is either vi or
       ex, the editor shall be invoked with a -c linenumber command line argu-
       ment, where linenumber is the line number of the file  line  containing
       the  display  line currently displayed as the first line of the screen.
       It is implementation-defined whether line-setting options are passed to
       editors other than vi and ex.
       When  the editor exits, more shall resume with the same file and screen
       as when the editor was invoked.
   Display Position
       Synopsis:

              =
              <control>-G

       Write a message for which the information references the first byte  of
       the  line  after the last line of the file on the screen.  This message
       shall include the name of the file currently being examined, its number
       relative  to  the  total number of files there are to examine, the line
       number in the file, the byte number and the total bytes  in  the  file,
       and  what percentage of the file precedes the current position. If more
       is reading from standard input, or the file is shorter  than  a  single
       screen, the line number, the byte number, the total bytes, and the per-
       centage need not be written.
   Quit
       Synopsis:

              q
              :q
              ZZ

       Exit more.
EXIT STATUS
       The following exit values shall be returned:
        0     Successful completion.
       >0     An error occurred.

CONSEQUENCES OF ERRORS
       If an error is encountered accessing a file when using the :n  command,
       more  shall  attempt to examine the next file in the argument list, but
       the final exit status shall be affected.  If an  error  is  encountered
       accessing  a file via the :p command, more shall attempt to examine the
       previous file in the argument list, but the final exit status shall  be
       affected.   If an error is encountered accessing a file via the :e com-
       mand, more shall remain in the current file and the final  exit  status
       shall not be affected.
       The following sections are informative.
APPLICATION USAGE
       When  the standard output is not a terminal, only the -s filter-modifi-
       cation option is effective. This is based on historical  practice.  For
       example,  a typical implementation of man pipes its output through more
       -s to squeeze excess white space for terminal users. When man is  piped
       to lp, however, it is undesirable for this squeezing to happen.
EXAMPLES
       The  -p  allows  arbitrary commands to be executed at the start of each
       file. Examples are:
       more  -p G  file1 file2
              Examine each file starting with its last screenful.
       more  -p  100 file1 file2
              Examine each file starting with line 100 in the current position
              (usually  the  third  line,  so  line 98 would be the first line
              written).
       more  -p  /100 file1 file2
              Examine each file starting with the first  line  containing  the
              string "100" in the current position

RATIONALE
       The  more utility, available in BSD and BSD-derived systems, was chosen
       as the prototype for the POSIX file display program since  it  is  more
       widely available than either the public-domain program less or than pg,
       a pager provided in System V. The 4.4 BSD more is  the  model  for  the
       features  selected;  it is almost fully upwards-compatible from the 4.3
       BSD version in wide use and has become  more  amenable  for  vi  users.
       Several features originally derived from various file editors, found in
       both   less   and   pg,   have   been   added   to   this   volume   of
       IEEE Std 1003.1-2001 as they have proved extremely popular with users.
       There are inconsistencies between more and vi that result from histori-
       cal practice. For example, the single-character commands h, f,  b,  and
       <space>  are  screen  movers  in  more,  but cursor movers in vi. These
       inconsistencies were maintained because the cursor  movements  are  not
       applicable  to more and the powerful functionality achieved without the
       use of the control key justifies the differences.
       The tags interface has been included in a program that is  not  a  text
       editor  because it promotes another degree of consistent operation with
       vi. It is conceivable that the paging  environment  of  more  would  be
       superior for browsing source code files in some circumstances.
       The  operating  mode  referred  to for block-mode terminals effectively
       adds a <newline> to each Synopsis line that currently has none. So, for
       example, d <newline> would page one screenful.  The mode could be trig-
       gered by a command line option, environment  variable,  or  some  other
       method.   The   details   are   not   imposed   by   this   volume   of
       IEEE Std 1003.1-2001 because there are so few systems known to  support
       such terminals. Nevertheless, it was considered that all systems should
       be able to support more given the exception cited for this small commu-
       nity  of  terminals  because, in comparison to vi, the cursor movements
       are few and the command set relatively amenable to the  optional  <new-
       line>s.
       Some versions of more provide a shell escaping mechanism similar to the
       ex ! command. The standard developers did not consider  that  this  was
       necessary  in  a  paginator,  particularly given the wide acceptance of
       multiple window terminals and job control  features.   (They  chose  to
       retain  such features in the editors and mailx because the shell inter-
       action also gives an opportunity to modify the editing buffer, which is
       not applicable to more.)
       The  -p (position) option replaces the + command because of the Utility
       Syntax Guidelines. In early proposals, it took a pattern argument,  but
       historical  less  provided  the  more general facility of a command. It
       would have been desirable to use the same -c as ex and vi, but the let-
       ter was already in use.
       The  text stating "from a non-rewindable stream ... implementations may
       limit the amount of backwards motion supported" would allow  an  imple-
       mentation that permitted no backwards motion beyond text already on the
       screen. It was not possible to require a minimum  amount  of  backwards
       motion  that  would  be effective for all conceivable device types. The
       implementation should allow the user to back up  as  far  as  possible,
       within device and reasonable memory allocation constraints.
       Historically,  non-printable  characters  were displayed using the ARPA
       standard mappings, which are as follows:
        1. Printable characters are left alone.
        2. Control characters less than \177 are represented  as  followed  by
           the  character  offset from the '@' character in the ASCII map; for
           example, \007 is represented as 'G' .
        3. \177 is represented as followed by '?' .
       The display of characters having their eighth bit set  was  less  stan-
       dard.   Existing  implementations  use  hex (0x00), octal (\000), and a
       meta-bit display. (The latter displayed characters  with  their  eighth
       bit  set  as the two characters "M-", followed by the seven-bit display
       as described previously.) The latter probably has  the  best  claim  to
       historical practice because it was used with the -v option of 4 BSD and
       4 BSD-derived versions of the cat utility since 1980.
       No specific display format is required by IEEE Std 1003.1-2001.  Imple-
       mentations  are  encouraged  to  conform  to  historic  practice in the
       absence of any strong reason to diverge.
FUTURE DIRECTIONS
       None.
SEE ALSO
       Shell Command Language, ctags, ed, ex, vi
COPYRIGHT
       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the  referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .

IEEE/The Open Group                  2003                             MORE(1P)