less.man revision 161475
1LESS(1)                                                                LESS(1)
2
3
4
5NNAAMMEE
6       less - opposite of more
7
8SSYYNNOOPPSSIISS
9       lleessss --??
10       lleessss ----hheellpp
11       lleessss --VV
12       lleessss ----vveerrssiioonn
13       lleessss [[--[[++]]aaBBccCCddeeEEffFFggGGiiIIJJKKLLmmMMnnNNqqQQrrRRssSSuuUUVVwwWWXX~~]]
14            [[--bb _s_p_a_c_e]] [[--hh _l_i_n_e_s]] [[--jj _l_i_n_e]] [[--kk _k_e_y_f_i_l_e]]
15            [[--{{ooOO}} _l_o_g_f_i_l_e]] [[--pp _p_a_t_t_e_r_n]] [[--PP _p_r_o_m_p_t]] [[--tt _t_a_g]]
16            [[--TT _t_a_g_s_f_i_l_e]] [[--xx _t_a_b,,......]] [[--yy _l_i_n_e_s]] [[--[[zz]] _l_i_n_e_s]]
17            [[--## _s_h_i_f_t]] [[++[[++]]_c_m_d]] [[----]] [[_f_i_l_e_n_a_m_e]]......
18       (See  the  OPTIONS section for alternate option syntax with long option
19       names.)
20
21
22DDEESSCCRRIIPPTTIIOONN
23       _L_e_s_s is a program similar to _m_o_r_e (1), but which allows backward  move-
24       ment in the file as well as forward movement.  Also, _l_e_s_s does not have
25       to read the entire input file before  starting,  so  with  large  input
26       files  it  starts  up  faster than text editors like _v_i (1).  _L_e_s_s uses
27       termcap (or terminfo on some systems), so it can run on  a  variety  of
28       terminals.   There is even limited support for hardcopy terminals.  (On
29       a hardcopy terminal, lines which should be printed at the  top  of  the
30       screen are prefixed with a caret.)
31
32       Commands  are based on both _m_o_r_e and _v_i_.  Commands may be preceded by a
33       decimal number, called N in the descriptions below.  The number is used
34       by some commands, as indicated.
35
36
37CCOOMMMMAANNDDSS
38       In  the following descriptions, ^X means control-X.  ESC stands for the
39       ESCAPE  key;  for  example  ESC-v  means  the  two  character  sequence
40       "ESCAPE", then "v".
41
42       h or H Help:  display  a  summary of these commands.  If you forget all
43              the other commands, remember this one.
44
45       SPACE or ^V or f or ^F
46              Scroll forward N  lines,  default  one  window  (see  option  -z
47              below).   If  N  is  more  than  the screen size, only the final
48              screenful is displayed.  Warning: some systems use ^V as a  spe-
49              cial literalization character.
50
51       z      Like  SPACE,  but  if  N is specified, it becomes the new window
52              size.
53
54       ESC-SPACE
55              Like SPACE, but scrolls a full screenful,  even  if  it  reaches
56              end-of-file in the process.
57
58       RETURN or ^N or e or ^E or j or ^J
59              Scroll  forward N lines, default 1.  The entire N lines are dis-
60              played, even if N is more than the screen size.
61
62       d or ^D
63              Scroll forward N lines, default one half of the screen size.  If
64              N  is specified, it becomes the new default for subsequent d and
65              u commands.
66
67       b or ^B or ESC-v
68              Scroll backward N lines,  default  one  window  (see  option  -z
69              below).   If  N  is  more  than  the screen size, only the final
70              screenful is displayed.
71
72       w      Like ESC-v, but if N is specified, it  becomes  the  new  window
73              size.
74
75       y or ^Y or ^P or k or ^K
76              Scroll backward N lines, default 1.  The entire N lines are dis-
77              played, even if N is more than the screen size.   Warning:  some
78              systems use ^Y as a special job control character.
79
80       u or ^U
81              Scroll  backward  N  lines, default one half of the screen size.
82              If N is specified, it becomes the new default for  subsequent  d
83              and u commands.
84
85       ESC-) or RIGHTARROW
86              Scroll  horizontally right N characters, default half the screen
87              width (see the -# option).  If  a  number  N  is  specified,  it
88              becomes  the  default  for  future RIGHTARROW and LEFTARROW com-
89              mands.  While the text is scrolled, it acts  as  though  the  -S
90              option (chop lines) were in effect.
91
92       ESC-( or LEFTARROW
93              Scroll  horizontally  left N characters, default half the screen
94              width (see the -# option).  If  a  number  N  is  specified,  it
95              becomes  the  default  for  future RIGHTARROW and LEFTARROW com-
96              mands.
97
98       r or ^R or ^L
99              Repaint the screen.
100
101       R      Repaint the screen, discarding any buffered  input.   Useful  if
102              the file is changing while it is being viewed.
103
104       F      Scroll  forward, and keep trying to read when the end of file is
105              reached.  Normally this command would be used  when  already  at
106              the  end of the file.  It is a way to monitor the tail of a file
107              which is growing while it is being  viewed.   (The  behavior  is
108              similar to the "tail -f" command.)
109
110       g or < or ESC-<
111              Go to line N in the file, default 1 (beginning of file).  (Warn-
112              ing: this may be slow if N is large.)
113
114       G or > or ESC->
115              Go to line N in the file, default the end of the  file.   (Warn-
116              ing:  this  may  be slow if N is large, or if N is not specified
117              and standard input, rather than a file, is being read.)
118
119       p or % Go to a position N percent into the file.  N should be between 0
120              and 100.
121
122       {      If a left curly bracket appears in the top line displayed on the
123              screen, the { command  will  go  to  the  matching  right  curly
124              bracket.   The matching right curly bracket is positioned on the
125              bottom line of the screen.  If there is more than one left curly
126              bracket  on  the top line, a number N may be used to specify the
127              N-th bracket on the line.
128
129       }      If a right curly bracket appears in the bottom line displayed on
130              the  screen,  the  }  command will go to the matching left curly
131              bracket.  The matching left curly bracket is positioned  on  the
132              top  line  of the screen.  If there is more than one right curly
133              bracket on the top line, a number N may be used to  specify  the
134              N-th bracket on the line.
135
136       (      Like {, but applies to parentheses rather than curly brackets.
137
138       )      Like }, but applies to parentheses rather than curly brackets.
139
140       [      Like  {, but applies to square brackets rather than curly brack-
141              ets.
142
143       ]      Like }, but applies to square brackets rather than curly  brack-
144              ets.
145
146       ESC-^F Followed  by two characters, acts like {, but uses the two char-
147              acters as open and close brackets, respectively.   For  example,
148              "ESC  ^F < >" could be used to go forward to the > which matches
149              the < in the top displayed line.
150
151       ESC-^B Followed by two characters, acts like }, but uses the two  char-
152              acters  as  open and close brackets, respectively.  For example,
153              "ESC ^B < >" could be used to go backward to the < which matches
154              the > in the bottom displayed line.
155
156       m      Followed  by  any  lowercase  letter, marks the current position
157              with that letter.
158
159       '      (Single quote.)  Followed by any lowercase  letter,  returns  to
160              the position which was previously marked with that letter.  Fol-
161              lowed by another single quote, returns to the position at  which
162              the last "large" movement command was executed.  Followed by a ^
163              or $, jumps to the beginning or end of  the  file  respectively.
164              Marks  are  preserved when a new file is examined, so the ' com-
165              mand can be used to switch between input files.
166
167       ^X^X   Same as single quote.
168
169       /pattern
170              Search forward in the file for the N-th line containing the pat-
171              tern.  N defaults to 1.  The pattern is a regular expression, as
172              recognized by the regular expression library  supplied  by  your
173              system.  The search starts at the second line displayed (but see
174              the -a and -j options, which change this).
175
176              Certain characters are special if entered at  the  beginning  of
177              the  pattern;  they modify the type of search rather than become
178              part of the pattern:
179
180              ^N or !
181                     Search for lines which do NOT match the pattern.
182
183              ^E or *
184                     Search multiple files.  That is, if  the  search  reaches
185                     the  END of the current file without finding a match, the
186                     search continues in the next file  in  the  command  line
187                     list.
188
189              ^F or @
190                     Begin  the  search at the first line of the FIRST file in
191                     the command line list, regardless of  what  is  currently
192                     displayed  on  the screen or the settings of the -a or -j
193                     options.
194
195              ^K     Highlight any text which matches the pattern on the  cur-
196                     rent screen, but don't move to the first match (KEEP cur-
197                     rent position).
198
199              ^R     Don't interpret regular expression  metacharacters;  that
200                     is, do a simple textual comparison.
201
202       ?pattern
203              Search  backward  in  the  file for the N-th line containing the
204              pattern.  The search starts at the line immediately  before  the
205              top line displayed.
206
207              Certain characters are special as in the / command:
208
209              ^N or !
210                     Search for lines which do NOT match the pattern.
211
212              ^E or *
213                     Search  multiple  files.   That is, if the search reaches
214                     the beginning of  the  current  file  without  finding  a
215                     match,  the  search continues in the previous file in the
216                     command line list.
217
218              ^F or @
219                     Begin the search at the last line of the last file in the
220                     command  line  list, regardless of what is currently dis-
221                     played on the screen or the settings  of  the  -a  or  -j
222                     options.
223
224              ^K     As in forward searches.
225
226              ^R     As in forward searches.
227
228       ESC-/pattern
229              Same as "/*".
230
231       ESC-?pattern
232              Same as "?*".
233
234       n      Repeat  previous  search, for N-th line containing the last pat-
235              tern.  If the previous search was modified by ^N, the search  is
236              made  for the N-th line NOT containing the pattern.  If the pre-
237              vious search was modified by ^E, the  search  continues  in  the
238              next  (or  previous)  file if not satisfied in the current file.
239              If the previous search was modified by ^R, the  search  is  done
240              without  using  regular  expressions.  There is no effect if the
241              previous search was modified by ^F or ^K.
242
243       N      Repeat previous search, but in the reverse direction.
244
245       ESC-n  Repeat previous  search,  but  crossing  file  boundaries.   The
246              effect is as if the previous search were modified by *.
247
248       ESC-N  Repeat  previous search, but in the reverse direction and cross-
249              ing file boundaries.
250
251       ESC-u  Undo search highlighting.   Turn  off  highlighting  of  strings
252              matching the current search pattern.  If highlighting is already
253              off because of a previous ESC-u command, turn highlighting  back
254              on.   Any  search  command  will also turn highlighting back on.
255              (Highlighting can also be disabled by toggling the -G option; in
256              that case search commands do not turn highlighting back on.)
257
258       :e [filename]
259              Examine  a  new file.  If the filename is missing, the "current"
260              file (see the :n and :p commands below) from the list  of  files
261              in  the  command line is re-examined.  A percent sign (%) in the
262              filename is replaced by the name of the current file.   A  pound
263              sign  (#)  is  replaced  by  the name of the previously examined
264              file.   However,  two  consecutive  percent  signs  are   simply
265              replaced with a single percent sign.  This allows you to enter a
266              filename that contains a percent sign in the  name.   Similarly,
267              two  consecutive  pound  signs  are replaced with a single pound
268              sign.  The filename is inserted into the command  line  list  of
269              files  so  that it can be seen by subsequent :n and :p commands.
270              If the filename consists of several files, they are all inserted
271              into  the  list  of files and the first one is examined.  If the
272              filename contains one or more spaces, the entire filename should
273              be enclosed in double quotes (also see the -" option).
274
275       ^X^V or E
276              Same  as :e.  Warning: some systems use ^V as a special literal-
277              ization character.  On such systems, you may not be able to  use
278              ^V.
279
280       :n     Examine  the next file (from the list of files given in the com-
281              mand line).  If a number N is specified, the N-th next  file  is
282              examined.
283
284       :p     Examine the previous file in the command line list.  If a number
285              N is specified, the N-th previous file is examined.
286
287       :x     Examine the first file in the command line list.  If a number  N
288              is specified, the N-th file in the list is examined.
289
290       :d     Remove the current file from the list of files.
291
292       t      Go  to the next tag, if there were more than one matches for the
293              current tag.  See the -t option for more details about tags.
294
295       T      Go to the previous tag, if there were more than one matches  for
296              the current tag.
297
298       = or ^G or :f
299              Prints  some  information about the file being viewed, including
300              its name and the line number and byte offset of the bottom  line
301              being  displayed.  If possible, it also prints the length of the
302              file, the number of lines in the file and  the  percent  of  the
303              file above the last displayed line.
304
305       -      Followed  by one of the command line option letters (see OPTIONS
306              below), this will change the setting of that option and print  a
307              message  describing  the  new  setting.   If a ^P (CONTROL-P) is
308              entered immediately after the dash, the setting of the option is
309              changed  but  no message is printed.  If the option letter has a
310              numeric value (such as -b or -h), or a string value (such as  -P
311              or  -t), a new value may be entered after the option letter.  If
312              no new value is entered, a message describing the  current  set-
313              ting is printed and nothing is changed.
314
315       --     Like  the  -  command, but takes a long option name (see OPTIONS
316              below) rather than a  single  option  letter.   You  must  press
317              RETURN after typing the option name.  A ^P immediately after the
318              second dash suppresses printing of a message describing the  new
319              setting, as in the - command.
320
321       -+     Followed  by  one  of  the command line option letters this will
322              reset the option to its default  setting  and  print  a  message
323              describing  the  new  setting.  (The "-+_X" command does the same
324              thing as "-+_X" on the command line.)  This  does  not  work  for
325              string-valued options.
326
327       --+    Like  the -+ command, but takes a long option name rather than a
328              single option letter.
329
330       -!     Followed by one of the command line option  letters,  this  will
331              reset  the  option  to the "opposite" of its default setting and
332              print a message describing the new setting.  This does not  work
333              for numeric or string-valued options.
334
335       --!    Like  the -! command, but takes a long option name rather than a
336              single option letter.
337
338       _      (Underscore.)  Followed by one of the command line  option  let-
339              ters,  this  will print a message describing the current setting
340              of that option.  The setting of the option is not changed.
341
342       __     (Double underscore.)  Like the _ (underscore) command, but takes
343              a long option name rather than a single option letter.  You must
344              press RETURN after typing the option name.
345
346       +cmd   Causes the specified cmd to be executed each time a new file  is
347              examined.  For example, +G causes _l_e_s_s to initially display each
348              file starting at the end rather than the beginning.
349
350       V      Prints the version number of _l_e_s_s being run.
351
352       q or Q or :q or :Q or ZZ
353              Exits _l_e_s_s_.
354
355       The following four commands may or may not be valid, depending on  your
356       particular installation.
357
358
359       v      Invokes  an  editor  to edit the current file being viewed.  The
360              editor is taken from the environment variable VISUAL if defined,
361              or  EDITOR if VISUAL is not defined, or defaults to "vi" if nei-
362              ther VISUAL nor EDITOR is defined.  See also the  discussion  of
363              LESSEDIT under the section on PROMPTS below.
364
365       ! shell-command
366              Invokes  a shell to run the shell-command given.  A percent sign
367              (%) in the command is replaced by the name of the current  file.
368              A pound sign (#) is replaced by the name of the previously exam-
369              ined file.  "!!" repeats the last shell command.   "!"  with  no
370              shell  command  simply  invokes  a  shell.  On Unix systems, the
371              shell is taken from the environment variable SHELL, or  defaults
372              to  "sh".   On  MS-DOS and OS/2 systems, the shell is the normal
373              command processor.
374
375       | <m> shell-command
376              <m> represents any mark letter.  Pipes a section  of  the  input
377              file  to the given shell command.  The section of the file to be
378              piped is between the first line on the current  screen  and  the
379              position  marked by the letter.  <m> may also be ^ or $ to indi-
380              cate beginning or end of file respectively.  If <m> is . or new-
381              line, the current screen is piped.
382
383       s filename
384              Save  the  input  to  a file.  This only works if the input is a
385              pipe, not an ordinary file.
386
387
388OOPPTTIIOONNSS
389       Command line options are described below.  Most options may be  changed
390       while _l_e_s_s is running, via the "-" command.
391
392       Most  options  may be given in one of two forms: either a dash followed
393       by a single letter, or two dashes followed by a long  option  name.   A
394       long  option  name  may  be  abbreviated as long as the abbreviation is
395       unambiguous.  For example, --quit-at-eof may be abbreviated --quit, but
396       not --qui, since both --quit-at-eof and --quiet begin with --qui.  Some
397       long option names are in uppercase, such as --QUIT-AT-EOF, as  distinct
398       from  --quit-at-eof.   Such  option  names  need  only have their first
399       letter capitalized; the remainder of the name may be  in  either  case.
400       For example, --Quit-at-eof is equivalent to --QUIT-AT-EOF.
401
402       Options are also taken from the environment variable "LESS".  For exam-
403       ple, to avoid typing "less -options ..." each time _l_e_s_s is invoked, you
404       might tell _c_s_h_:
405
406       setenv LESS "-options"
407
408       or if you use _s_h_:
409
410       LESS="-options"; export LESS
411
412       On  MS-DOS,  you don't need the quotes, but you should replace any per-
413       cent signs in the options string by double percent signs.
414
415       The environment variable is parsed before the command line, so  command
416       line  options  override  the  LESS  environment variable.  If an option
417       appears in the LESS variable, it can be reset to its default  value  on
418       the command line by beginning the command line option with "-+".
419
420       For  options like -P or -D which take a following string, a dollar sign
421       ($) must be used to signal the end of the string.  For example, to  set
422       two  -D  options  on  MS-DOS, you must have a dollar sign between them,
423       like this:
424
425       LESS="-Dn9.1$-Ds4.1"
426
427
428       -? or --help
429              This option displays a summary of the commands accepted by  _l_e_s_s
430              (the  same  as  the  h  command).   (Depending on how your shell
431              interprets the question mark, it may be necessary to  quote  the
432              question mark, thus: "-\?".)
433
434       -a or --search-skip-screen
435              Causes  searches  to  start after the last line displayed on the
436              screen, thus skipping all lines displayed  on  the  screen.   By
437              default,  searches  start  at  the second line on the screen (or
438              after the last found line; see the -j option).
439
440       -b_n or --buffers=_n
441              Specifies the amount of buffer space  _l_e_s_s  will  use  for  each
442              file,  in  units  of  kilobytes (1024 bytes).  By default 64K of
443              buffer space is used for each file (unless the file is  a  pipe;
444              see  the  -B  option).   The  -b option specifies instead that _n
445              kilobytes of buffer space should be used for each file.  If _n is
446              -1,  buffer space is unlimited; that is, the entire file is read
447              into memory.
448
449       -B or --auto-buffers
450              By default, when data is read from a pipe, buffers are allocated
451              automatically as needed.  If a large amount of data is read from
452              the pipe, this can cause a large amount of memory  to  be  allo-
453              cated.   The  -B  option  disables  this automatic allocation of
454              buffers for pipes, so that only 64K  (or  the  amount  of  space
455              specified  by the -b option) is used for the pipe.  Warning: use
456              of -B can result in  erroneous  display,  since  only  the  most
457              recently  viewed part of the file is kept in memory; any earlier
458              data is lost.
459
460       -c or --clear-screen
461              Causes full screen repaints to be  painted  from  the  top  line
462              down.   By  default,  full screen repaints are done by scrolling
463              from the bottom of the screen.
464
465       -C or --CLEAR-SCREEN
466              The -C option is like -c, but the screen is cleared before it is
467              repainted.
468
469       -d or --dumb
470              The -d option suppresses the error message normally displayed if
471              the terminal is dumb; that is, lacks some important  capability,
472              such as the ability to clear the screen or scroll backward.  The
473              -d option does not otherwise change the behavior of  _l_e_s_s  on  a
474              dumb terminal.
475
476       -Dxx_c_o_l_o_r or --color=xx_c_o_l_o_r
477              [MS-DOS only] Sets the color of the text displayed.  xx is a sin-
478              gle character which selects the type  of  text  whose  color  is
479              being  set: n=normal, s=standout, d=bold, u=underlined, k=blink.
480              _c_o_l_o_r is a pair of numbers separated by  a  period.   The  first
481              number  selects  the foreground color and the second selects the
482              background color of the text.  A single number _N is the same  as
483              _N_._0.
484
485       -e or --quit-at-eof
486              Causes  _l_e_s_s  to  automatically  exit the second time it reaches
487              end-of-file.  By default, the only way to exit _l_e_s_s is  via  the
488              "q" command.
489
490       -E or --QUIT-AT-EOF
491              Causes _l_e_s_s to automatically exit the first time it reaches end-
492              of-file.
493
494       -f or --force
495              Forces non-regular files to be opened.  (A non-regular file is a
496              directory  or a device special file.)  Also suppresses the warn-
497              ing message when a binary file is opened.  By default, _l_e_s_s will
498              refuse to open non-regular files.
499
500       -F or --quit-if-one-screen
501              Causes _l_e_s_s to automatically exit if the entire file can be dis-
502              played on the first screen.
503
504       -g or --hilite-search
505              Normally, _l_e_s_s will highlight ALL strings which match  the  last
506              search  command.   The  -g option changes this behavior to high-
507              light only the particular string which was  found  by  the  last
508              search command.  This can cause _l_e_s_s to run somewhat faster than
509              the default.
510
511       -G or --HILITE-SEARCH
512              The -G option suppresses all highlighting of  strings  found  by
513              search commands.
514
515       -h_n or --max-back-scroll=_n
516              Specifies  a  maximum number of lines to scroll backward.  If it
517              is necessary to scroll backward more than _n lines, the screen is
518              repainted in a forward direction instead.  (If the terminal does
519              not have the ability to scroll backward, -h0 is implied.)
520
521       -i or --ignore-case
522              Causes searches to ignore case; that is, uppercase and lowercase
523              are  considered identical.  This option is ignored if any upper-
524              case letters appear in the search pattern; in other words, if  a
525              pattern  contains  uppercase  letters, then that search does not
526              ignore case.
527
528       -I or --IGNORE-CASE
529              Like -i, but searches ignore case even if the  pattern  contains
530              uppercase letters.
531
532       -j_n or --jump-target=_n
533              Specifies  a line on the screen where the "target" line is to be
534              positioned.  A target line is the object of a text  search,  tag
535              search,  jump  to  a  line number, jump to a file percentage, or
536              jump to a marked position.  The screen line is  specified  by  a
537              number:  the  top line on the screen is 1, the next is 2, and so
538              on.  The number may be negative to specify a  line  relative  to
539              the  bottom  of the screen: the bottom line on the screen is -1,
540              the second to the bottom is -2, and so on.  If the -j option  is
541              used,  searches  begin  at the line immediately after the target
542              line.  For example, if "-j4" is used, the  target  line  is  the
543              fourth  line  on the screen, so searches begin at the fifth line
544              on the screen.
545
546       -J or --status-column
547              Displays a status column at the left edge of  the  screen.   The
548              status  column  shows the lines that matched the current search.
549              The status column is also used if the -w  or  -W  option  is  in
550              effect.
551
552       -k_f_i_l_e_n_a_m_e or --lesskey-file=_f_i_l_e_n_a_m_e
553              Causes  _l_e_s_s  to  open and interpret the named file as a _l_e_s_s_k_e_y
554              (1) file.  Multiple -k options may be specified.  If the LESSKEY
555              or  LESSKEY_SYSTEM  environment variable is set, or if a lesskey
556              file is found in a standard place (see KEY BINDINGS), it is also
557              used as a _l_e_s_s_k_e_y file.
558
559       -K or --quit-on-intr
560              Causes  _l_e_s_s  to  exit  immediately  when an interrupt character
561              (usually ^C) is typed.  Normally, an interrupt character  causes
562              _l_e_s_s  to  stop  whatever  it  is doing and return to its command
563              prompt.
564
565       -L or --no-lessopen
566              Ignore the LESSOPEN environment variable (see the INPUT  PREPRO-
567              CESSOR section below).  This option can be set from within _l_e_s_s,
568              but it will apply only to files opened subsequently, not to  the
569              file which is currently open.
570
571       -m or --long-prompt
572              Causes  _l_e_s_s  to  prompt verbosely (like _m_o_r_e), with the percent
573              into the file.  By default, _l_e_s_s prompts with a colon.
574
575       -M or --LONG-PROMPT
576              Causes _l_e_s_s to prompt even more verbosely than _m_o_r_e_.
577
578       -n or --line-numbers
579              Suppresses line numbers.  The default (to use line numbers)  may
580              cause  _l_e_s_s  to run more slowly in some cases, especially with a
581              very large input file.  Suppressing line  numbers  with  the  -n
582              option  will  avoid this problem.  Using line numbers means: the
583              line number will be displayed in the verbose prompt and in the =
584              command,  and the v command will pass the current line number to
585              the editor (see also  the  discussion  of  LESSEDIT  in  PROMPTS
586              below).
587
588       -N or --LINE-NUMBERS
589              Causes  a  line  number to be displayed at the beginning of each
590              line in the display.
591
592       -o_f_i_l_e_n_a_m_e or --log-file=_f_i_l_e_n_a_m_e
593              Causes _l_e_s_s to copy its input to the named file as it  is  being
594              viewed.  This applies only when the input file is a pipe, not an
595              ordinary file.  If the file already exists, _l_e_s_s  will  ask  for
596              confirmation before overwriting it.
597
598       -O_f_i_l_e_n_a_m_e or --LOG-FILE=_f_i_l_e_n_a_m_e
599              The -O option is like -o, but it will overwrite an existing file
600              without asking for confirmation.
601
602              If no log file has been specified, the -o and -O options can  be
603              used  from  within  _l_e_s_s  to specify a log file.  Without a file
604              name, they will simply report the name of the log file.  The "s"
605              command is equivalent to specifying -o from within _l_e_s_s_.
606
607       -p_p_a_t_t_e_r_n or --pattern=_p_a_t_t_e_r_n
608              The  -p  option  on the command line is equivalent to specifying
609              +/_p_a_t_t_e_r_n; that is, it tells _l_e_s_s to start at the  first  occur-
610              rence of _p_a_t_t_e_r_n in the file.
611
612       -P_p_r_o_m_p_t or --prompt=_p_r_o_m_p_t
613              Provides  a  way  to  tailor the three prompt styles to your own
614              preference.  This option would normally be put in the LESS envi-
615              ronment variable, rather than being typed in with each _l_e_s_s com-
616              mand.  Such an option must either be the last option in the LESS
617              variable,  or be terminated by a dollar sign.  -Ps followed by a
618              string changes the default (short) prompt to that  string.   -Pm
619              changes  the  medium  (-m)  prompt.   -PM  changes the long (-M)
620              prompt.  -Ph changes  the  prompt  for  the  help  screen.   -P=
621              changes  the  message printed by the = command.  -Pw changes the
622              message printed while waiting for data (in the F command).   All
623              prompt  strings  consist  of  a  sequence of letters and special
624              escape sequences.  See the section on PROMPTS for more  details.
625
626       -q or --quiet or --silent
627              Causes  moderately  "quiet"  operation: the terminal bell is not
628              rung if an attempt is made to scroll past the end of the file or
629              before the beginning of the file.  If the terminal has a "visual
630              bell", it is used instead.  The bell will  be  rung  on  certain
631              other  errors, such as typing an invalid character.  The default
632              is to ring the terminal bell in all such cases.
633
634       -Q or --QUIET or --SILENT
635              Causes totally "quiet" operation: the  terminal  bell  is  never
636              rung.
637
638       -r or --raw-control-chars
639              Causes "raw" control characters to be displayed.  The default is
640              to display control characters  using  the  caret  notation;  for
641              example, a control-A (octal 001) is displayed as "^A".  Warning:
642              when the -r option is used, _l_e_s_s cannot keep track of the actual
643              appearance  of  the screen (since this depends on how the screen
644              responds to each type of control character).  Thus, various dis-
645              play  problems may result, such as long lines being split in the
646              wrong place.
647
648       -R or --RAW-CONTROL-CHARS
649              Like -r, but only ANSI "color" escape sequences  are  output  in
650              "raw" form.  Unlike -r, the screen appearance is maintained cor-
651              rectly  in  most  cases.   ANSI  "color"  escape  sequences  are
652              sequences of the form:
653
654                   ESC [ ... m
655
656              where  the  "..." is zero or more color specification characters
657              For the purpose of keeping  track  of  screen  appearance,  ANSI
658              color  escape sequences are assumed to not move the cursor.  You
659              can make _l_e_s_s think that characters other than "m" can end  ANSI
660              color  escape  sequences  by  setting  the  environment variable
661              LESSANSIENDCHARS to the list of characters which can end a color
662              escape  sequence.   And  you can make _l_e_s_s think that characters
663              other than the standard ones may appear between the ESC and  the
664              m  by  setting  the environment variable LESSANSIMIDCHARS to the
665              list of characters which can appear.
666
667       -s or --squeeze-blank-lines
668              Causes consecutive blank lines to  be  squeezed  into  a  single
669              blank line.  This is useful when viewing _n_r_o_f_f output.
670
671       -S or --chop-long-lines
672              Causes  lines  longer than the screen width to be chopped rather
673              than folded.  That is, the portion of a long line that does  not
674              fit  in  the  screen width is not shown.  The default is to fold
675              long lines; that is, display the remainder on the next line.
676
677       -t_t_a_g or --tag=_t_a_g
678              The -t option, followed immediately by a TAG, will edit the file
679              containing  that tag.  For this to work, tag information must be
680              available; for example, there may  be  a  file  in  the  current
681              directory called "tags", which was previously built by _c_t_a_g_s (1)
682              or an equivalent command.  If the environment variable LESSGLOB-
683              ALTAGS  is set, it is taken to be the name of a command compati-
684              ble with _g_l_o_b_a_l (1), and that command is executed  to  find  the
685              tag.  (See http://www.gnu.org/software/global/global.html).  The
686              -t option may also be specified from within _l_e_s_s  (using  the  -
687              command)  as a way of examining a new file.  The command ":t" is
688              equivalent to specifying -t from within _l_e_s_s_.
689
690       -T_t_a_g_s_f_i_l_e or --tag-file=_t_a_g_s_f_i_l_e
691              Specifies a tags file to be used instead of "tags".
692
693       -u or --underline-special
694              Causes backspaces and carriage returns to be treated  as  print-
695              able  characters;  that  is,  they are sent to the terminal when
696              they appear in the input.
697
698       -U or --UNDERLINE-SPECIAL
699              Causes backspaces, tabs and carriage returns to  be  treated  as
700              control  characters;  that  is, they are handled as specified by
701              the -r option.
702
703              By default, if neither -u nor  -U  is  given,  backspaces  which
704              appear  adjacent  to  an  underscore  character are treated spe-
705              cially: the underlined text is displayed  using  the  terminal's
706              hardware  underlining capability.  Also, backspaces which appear
707              between two identical  characters  are  treated  specially:  the
708              overstruck  text  is printed using the terminal's hardware bold-
709              face capability.  Other backspaces are deleted, along  with  the
710              preceding character.  Carriage returns immediately followed by a
711              newline are deleted.  other  carriage  returns  are  handled  as
712              specified  by the -r option.  Text which is overstruck or under-
713              lined can be searched for if neither -u nor -U is in effect.
714
715       -V or --version
716              Displays the version number of _l_e_s_s_.
717
718       -w or --hilite-unread
719              Temporarily highlights the first  "new"  line  after  a  forward
720              movement of a full page.  The first "new" line is the line imme-
721              diately following the line  previously  at  the  bottom  of  the
722              screen.  Also highlights the target line after a g or p command.
723              The highlight is removed at the next command which causes  move-
724              ment.   The  entire line is highlighted, unless the -J option is
725              in effect, in which case only the status column is  highlighted.
726
727       -W or --HILITE-UNREAD
728              Like -w, but temporarily highlights the first new line after any
729              forward movement command larger than one line.
730
731       -x_n,... or --tabs=_n,...
732              Sets tab stops.  If only one _n is specified, tab stops  are  set
733              at  multiples  of _n.  If multiple values separated by commas are
734              specified, tab stops are set at those positions, and  then  con-
735              tinue  with  the  same  spacing  as  the last two.  For example,
736              _-_x_9_,_1_7 will set tabs at positions  9,  17,  25,  33,  etc.   The
737              default for _n is 8.
738
739       -X or --no-init
740              Disables sending the termcap initialization and deinitialization
741              strings to the terminal.  This is  sometimes  desirable  if  the
742              deinitialization  string does something unnecessary, like clear-
743              ing the screen.
744
745       --no-keypad
746              Disables sending the keypad initialization and  deinitialization
747              strings to the terminal.  This is sometimes useful if the keypad
748              strings make the numeric keypad behave in an undesirable manner.
749
750       -y_n or --max-forw-scroll=_n
751              Specifies a maximum number of lines to scroll forward.  If it is
752              necessary to scroll forward more than _n  lines,  the  screen  is
753              repainted  instead.   The -c or -C option may be used to repaint
754              from the top of the screen if desired.  By default, any  forward
755              movement causes scrolling.
756
757       -[z]_n or --window=_n
758              Changes  the  default  scrolling  window  size  to _n lines.  The
759              default is one screenful.  The z and w commands can also be used
760              to  change the window size.  The "z" may be omitted for compati-
761              bility with _m_o_r_e_.  If the number _n is negative, it  indicates  _n
762              lines  less  than  the current screen size.  For example, if the
763              screen is 24 lines, _-_z_-_4 sets the scrolling window to 20  lines.
764              If the screen is resized to 40 lines, the scrolling window auto-
765              matically changes to 36 lines.
766
767       -_"_c_c or --quotes=_c_c
768              Changes the filename quoting character.  This may  be  necessary
769              if  you are trying to name a file which contains both spaces and
770              quote characters.  Followed by a single character, this  changes
771              the  quote  character to that character.  Filenames containing a
772              space should then be surrounded by that character rather than by
773              double  quotes.   Followed  by  two characters, changes the open
774              quote to the first character, and the close quote to the  second
775              character.  Filenames containing a space should then be preceded
776              by the open quote character and  followed  by  the  close  quote
777              character.   Note  that  even  after  the  quote  characters are
778              changed, this option remains -" (a dash  followed  by  a  double
779              quote).
780
781       -~ or --tilde
782              Normally lines after end of file are displayed as a single tilde
783              (~).  This option causes lines after end of file to be displayed
784              as blank lines.
785
786       -# or --shift
787              Specifies the default number of positions to scroll horizontally
788              in the RIGHTARROW and LEFTARROW commands.  If the number  speci-
789              fied  is  zero,  it  sets the default number of positions to one
790              half of the screen width.
791
792       --     A command line argument of "--" marks the end  of  option  argu-
793              ments.   Any  arguments  following this are interpreted as file-
794              names.  This can be useful when viewing a file whose name begins
795              with a "-" or "+".
796
797       +      If  a  command  line option begins with ++, the remainder of that
798              option is taken to be an initial command to _l_e_s_s_.  For  example,
799              +G  tells  _l_e_s_s  to start at the end of the file rather than the
800              beginning, and +/xyz tells it to start at the  first  occurrence
801              of  "xyz"  in  the file.  As a special case, +<number> acts like
802              +<number>g; that is, it starts the display at the specified line
803              number  (however,  see  the caveat under the "g" command above).
804              If the option starts with ++, the  initial  command  applies  to
805              every  file being viewed, not just the first one.  The + command
806              described previously may also be used to set (or change) an ini-
807              tial command for every file.
808
809
810LLIINNEE EEDDIITTIINNGG
811       When  entering command line at the bottom of the screen (for example, a
812       filename for the :e command, or the  pattern  for  a  search  command),
813       certain keys can be used to manipulate the command line.  Most commands
814       have an alternate form in [ brackets ] which can be used if a key  does
815       not  exist  on a particular keyboard.  (The bracketed forms do not work
816       in the MS-DOS version.)  Any of these special keys may be entered  lit-
817       erally  by  preceding it with the "literal" character, either ^V or ^A.
818       A backslash itself may also be entered literally by entering two  back-
819       slashes.
820
821       LEFTARROW [ ESC-h ]
822              Move the cursor one space to the left.
823
824       RIGHTARROW [ ESC-l ]
825              Move the cursor one space to the right.
826
827       ^LEFTARROW [ ESC-b or ESC-LEFTARROW ]
828              (That  is, CONTROL and LEFTARROW simultaneously.)  Move the cur-
829              sor one word to the left.
830
831       ^RIGHTARROW [ ESC-w or ESC-RIGHTARROW ]
832              (That is, CONTROL and RIGHTARROW simultaneously.)  Move the cur-
833              sor one word to the right.
834
835       HOME [ ESC-0 ]
836              Move the cursor to the beginning of the line.
837
838       END [ ESC-$ ]
839              Move the cursor to the end of the line.
840
841       BACKSPACE
842              Delete  the  character  to the left of the cursor, or cancel the
843              command if the command line is empty.
844
845       DELETE or [ ESC-x ]
846              Delete the character under the cursor.
847
848       ^BACKSPACE [ ESC-BACKSPACE ]
849              (That is, CONTROL and  BACKSPACE  simultaneously.)   Delete  the
850              word to the left of the cursor.
851
852       ^DELETE [ ESC-X or ESC-DELETE ]
853              (That  is,  CONTROL and DELETE simultaneously.)  Delete the word
854              under the cursor.
855
856       UPARROW [ ESC-k ]
857              Retrieve the previous command line.
858
859       DOWNARROW [ ESC-j ]
860              Retrieve the next command line.
861
862       TAB    Complete the partial filename to the left of the cursor.  If  it
863              matches  more than one filename, the first match is entered into
864              the command line.  Repeated  TABs  will  cycle  thru  the  other
865              matching filenames.  If the completed filename is a directory, a
866              "/" is appended to the filename.  (On MS-DOS systems, a  "\"  is
867              appended.)   The  environment variable LESSSEPARATOR can be used
868              to specify a different character to append to a directory  name.
869
870       BACKTAB [ ESC-TAB ]
871              Like, TAB, but cycles in the reverse direction thru the matching
872              filenames.
873
874       ^L     Complete the partial filename to the left of the cursor.  If  it
875              matches more than one filename, all matches are entered into the
876              command line (if they fit).
877
878       ^U (Unix and OS/2) or ESC (MS-DOS)
879              Delete the entire command line, or cancel  the  command  if  the
880              command line is empty.  If you have changed your line-kill char-
881              acter in Unix to something other than ^U, that character is used
882              instead of ^U.
883
884
885KKEEYY BBIINNDDIINNGGSS
886       You  may define your own _l_e_s_s commands by using the program _l_e_s_s_k_e_y (1)
887       to create a lesskey file.  This file specifies a set  of  command  keys
888       and  an  action  associated with each key.  You may also use _l_e_s_s_k_e_y to
889       change the line-editing keys (see LINE EDITING), and to set environment
890       variables.   If the environment variable LESSKEY is set, _l_e_s_s uses that
891       as the name of the lesskey file.  Otherwise, _l_e_s_s looks in  a  standard
892       place  for  the lesskey file: On Unix systems, _l_e_s_s looks for a lesskey
893       file called "$HOME/.less".  On MS-DOS and Windows systems,  _l_e_s_s  looks
894       for  a lesskey file called "$HOME/_less", and if it is not found there,
895       then looks for a lesskey file called "_less" in any directory specified
896       in  the  PATH  environment variable.  On OS/2 systems, _l_e_s_s looks for a
897       lesskey file called "$HOME/less.ini", and if  it  is  not  found,  then
898       looks  for  a lesskey file called "less.ini" in any directory specified
899       in the INIT environment variable, and if it not found there, then looks
900       for  a lesskey file called "less.ini" in any directory specified in the
901       PATH environment variable.   See  the  _l_e_s_s_k_e_y  manual  page  for  more
902       details.
903
904       A  system-wide lesskey file may also be set up to provide key bindings.
905       If a key is defined in both a local lesskey file and in the system-wide
906       file,  key bindings in the local file take precedence over those in the
907       system-wide file.  If the environment variable LESSKEY_SYSTEM  is  set,
908       _l_e_s_s uses that as the name of the system-wide lesskey file.  Otherwise,
909       _l_e_s_s looks in a standard place for the  system-wide  lesskey  file:  On
910       Unix  systems,  the system-wide lesskey file is /usr/local/etc/sysless.
911       (However, if _l_e_s_s was built with a  different  sysconf  directory  than
912       /usr/local/etc, that directory is where the sysless file is found.)  On
913       MS-DOS and Windows systems, the system-wide lesskey  file  is  c:\_sys-
914       less.  On OS/2 systems, the system-wide lesskey file is c:\sysless.ini.
915
916
917IINNPPUUTT PPRREEPPRROOCCEESSSSOORR
918       You may define an "input preprocessor" for _l_e_s_s_.  Before _l_e_s_s  opens  a
919       file, it first gives your input preprocessor a chance to modify the way
920       the contents of the file are displayed.  An input preprocessor is  sim-
921       ply  an executable program (or shell script), which writes the contents
922       of the file to a different file, called the replacement file.  The con-
923       tents  of  the replacement file are then displayed in place of the con-
924       tents of the original file.  However, it will appear to the user as  if
925       the  original  file  is opened; that is, _l_e_s_s will display the original
926       filename as the name of the current file.
927
928       An input preprocessor receives one command line argument, the  original
929       filename,  as  entered  by  the user.  It should create the replacement
930       file, and when finished, print the name of the replacement file to  its
931       standard  output.  If the input preprocessor does not output a replace-
932       ment filename, _l_e_s_s uses the original file, as normal.  The input  pre-
933       processor  is  not  called  when  viewing standard input.  To set up an
934       input preprocessor, set the LESSOPEN environment variable to a  command
935       line  which  will  invoke  your  input preprocessor.  This command line
936       should include one  occurrence  of  the  string  "%s",  which  will  be
937       replaced  by  the  filename  when  the  input  preprocessor  command is
938       invoked.
939
940       When _l_e_s_s closes a file opened in such a way, it will call another pro-
941       gram,  called  the  input  postprocessor, which may perform any desired
942       clean-up action (such as  deleting  the  replacement  file  created  by
943       LESSOPEN).  This program receives two command line arguments, the orig-
944       inal filename as entered by the user, and the name of  the  replacement
945       file.   To set up an input postprocessor, set the LESSCLOSE environment
946       variable to a command line which will invoke your input  postprocessor.
947       It  may  include  two  occurrences  of  the  string  "%s"; the first is
948       replaced with the original name of the file and  the  second  with  the
949       name of the replacement file, which was output by LESSOPEN.
950
951       For  example, on many Unix systems, these two scripts will allow you to
952       keep files in compressed format, but still let _l_e_s_s view them directly:
953
954       lessopen.sh:
955            #! /bin/sh
956            case "$1" in
957            *.Z) uncompress -
958                 if [ -s /tmp/less.$$ ]; then
959                      echo /tmp/less.$$
960                 else
961                      rm -f /tmp/less.$$
962                 fi
963                 ;;
964            esac
965
966       lessclose.sh:
967            #! /bin/sh
968            rm $2
969
970       To  use these scripts, put them both where they can be executed and set
971       LESSOPEN="lessopen.sh %s",  and  LESSCLOSE="lessclose.sh %s %s".   More
972       complex  LESSOPEN  and LESSCLOSE scripts may be written to accept other
973       types of compressed files, and so on.
974
975       It is also possible to set up an input preprocessor to  pipe  the  file
976       data  directly to _l_e_s_s_, rather than putting the data into a replacement
977       file.  This avoids the need to decompress the entire file before start-
978       ing to view it.  An input preprocessor that works this way is called an
979       input pipe.  An input pipe, instead of writing the name of  a  replace-
980       ment  file  on  its  standard output, writes the entire contents of the
981       replacement file on its standard output.  If the input  pipe  does  not
982       write  any characters on its standard output, then there is no replace-
983       ment file and _l_e_s_s uses the original file, as normal.  To use an  input
984       pipe,  make  the first character in the LESSOPEN environment variable a
985       vertical bar (|) to signify that the input  preprocessor  is  an  input
986       pipe.
987
988       For  example, on many Unix systems, this script will work like the pre-
989       vious example scripts:
990
991       lesspipe.sh:
992            #! /bin/sh
993            case "$1" in
994            *.Z) uncompress -c $1  2>/dev/null
995                 ;;
996            esac
997
998       To  use  this  script,  put  it  where  it  can  be  executed  and  set
999       LESSOPEN="|lesspipe.sh  %s".   When  an input pipe is used, a LESSCLOSE
1000       postprocessor can be used, but it is usually not necessary since  there
1001       is no replacement file to clean up.  In this case, the replacement file
1002       name passed to the LESSCLOSE postprocessor is "-".
1003
1004
1005NNAATTIIOONNAALL CCHHAARRAACCTTEERR SSEETTSS
1006       There are three types of characters in the input file:
1007
1008       normal characters
1009              can be displayed directly to the screen.
1010
1011       control characters
1012              should not be displayed directly, but are expected to  be  found
1013              in ordinary text files (such as backspace and tab).
1014
1015       binary characters
1016              should  not  be  displayed  directly  and are not expected to be
1017              found in text files.
1018
1019       A "character set" is simply a description of which characters are to be
1020       considered  normal,  control,  and binary.  The LESSCHARSET environment
1021       variable may be used to select a character set.   Possible  values  for
1022       LESSCHARSET are:
1023
1024       ascii  BS,  TAB, NL, CR, and formfeed are control characters, all chars
1025              with values between 32 and 126 are normal, and  all  others  are
1026              binary.
1027
1028       iso8859
1029              Selects  an  ISO 8859 character set.  This is the same as ASCII,
1030              except characters between 160 and  255  are  treated  as  normal
1031              characters.
1032
1033       latin1 Same as iso8859.
1034
1035       latin9 Same as iso8859.
1036
1037       dos    Selects a character set appropriate for MS-DOS.
1038
1039       ebcdic Selects an EBCDIC character set.
1040
1041       IBM-1047
1042              Selects  an  EBCDIC  character set used by OS/390 Unix Services.
1043              This is the EBCDIC analogue of latin1.  You get similar  results
1044              by setting either LESSCHARSET=IBM-1047 or LC_CTYPE=en_US in your
1045              environment.
1046
1047       koi8-r Selects a Russian character set.
1048
1049       next   Selects a character set appropriate for NeXT computers.
1050
1051       utf-8  Selects the UTF-8 encoding of the ISO 10646 character set.
1052
1053       windows
1054              Selects a character set appropriate for  Microsoft  Windows  (cp
1055              1251).
1056
1057       In  special  cases, it may be desired to tailor _l_e_s_s to use a character
1058       set other than the ones definable by LESSCHARSET.  In  this  case,  the
1059       environment variable LESSCHARDEF can be used to define a character set.
1060       It should be set to a string where each character in the string  repre-
1061       sents  one  character  in the character set.  The character "." is used
1062       for a normal character, "c" for control, and "b" for binary.  A decimal
1063       number  may  be used for repetition.  For example, "bccc4b." would mean
1064       character 0 is binary, 1, 2 and 3 are  control,  4,  5,  6  and  7  are
1065       binary, and 8 is normal.  All characters after the last are taken to be
1066       the same as the last, so characters 9  through  255  would  be  normal.
1067       (This  is an example, and does not necessarily represent any real char-
1068       acter set.)
1069
1070       This table shows the value of LESSCHARDEF which is equivalent  to  each
1071       of the possible values for LESSCHARSET:
1072
1073            ascii     8bcccbcc18b95.b
1074            dos       8bcccbcc12bc5b95.b.
1075            ebcdic    5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b
1076                      9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b.
1077            IBM-1047  4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc
1078                      191.b
1079            iso8859   8bcccbcc18b95.33b.
1080            koi8-r    8bcccbcc18b95.b128.
1081            latin1    8bcccbcc18b95.33b.
1082            next      8bcccbcc18b95.bb125.bb
1083
1084       If  neither  LESSCHARSET nor LESSCHARDEF is set, but any of the strings
1085       "UTF-8", "UTF8", "utf-8" or "utf8" is found in the LC_ALL,  LC_TYPE  or
1086       LANG environment variables, then the default character set is utf-8.
1087
1088       If  that  string  is  not found, but your system supports the _s_e_t_l_o_c_a_l_e
1089       interface, _l_e_s_s will use setlocale  to  determine  the  character  set.
1090       setlocale  is  controlled  by  setting the LANG or LC_CTYPE environment
1091       variables.
1092
1093       Finally, if the _s_e_t_l_o_c_a_l_e interface is also not available, the  default
1094       character set is latin1.
1095
1096       Control  and  binary  characters  are  displayed  in  standout (reverse
1097       video).  Each such character is displayed in caret notation if possible
1098       (e.g.  ^A for control-A).  Caret notation is used only if inverting the
1099       0100 bit results in a normal printable character.  Otherwise, the char-
1100       acter  is displayed as a hex number in angle brackets.  This format can
1101       be changed by setting the LESSBINFMT environment variable.   LESSBINFMT
1102       may begin with a "*" and one character to select the display attribute:
1103       "*k" is blinking, "*d" is bold, "*u" is underlined, "*s"  is  standout,
1104       and  "*n"  is  normal.  If LESSBINFMT does not begin with a "*", normal
1105       attribute is assumed.  The remainder of LESSBINFMT is  a  string  which
1106       may  include one printf-style escape sequence (a % followed by x, X, o,
1107       d, etc.).  For example, if LESSBINFMT is  "*u[%x]",  binary  characters
1108       are  displayed  in  underlined hexadecimal surrounded by brackets.  The
1109       default if no LESSBINFMT is specified is "*s<%X>".  The default  if  no
1110       LESSBINFMT  is specified is "*s<%02X>".  Warning: the result of expand-
1111       ing the character via LESSBINFMT must be less than 31 characters.
1112
1113       When the character set is utf-8, the LESSUTFBINFMT environment variable
1114       acts similarly to LESSBINFMT but it applies to Unicode code points that
1115       were successfully decoded but are unsuitable for display  (e.g.,  unas-
1116       signed  code  points).   Its  default  value is "<U+%04lX>".  Note that
1117       LESSUTFBINFMT and LESSBINFMT  share  their  display  attribute  setting
1118       ("*x")  so specifying one will affect both; LESSUTFBINFMT is read after
1119       LESSBINFMT so its setting, if any,  will  have  priority.   Problematic
1120       octets  in  a  UTF-8  file (octets of a truncated sequence, octets of a
1121       complete but non-shortest form  sequence,  illegal  octets,  and  stray
1122       trailing  octets)  are displayed individually using LESSBINFMT so as to
1123       facilitate diagnostic of how the UTF-8 file is ill-formed.
1124
1125
1126PPRROOMMPPTTSS
1127       The -P option allows you to tailor the prompt to your preference.   The
1128       string  given  to  the  -P option replaces the specified prompt string.
1129       Certain characters in the string are interpreted specially.  The prompt
1130       mechanism  is  rather complicated to provide flexibility, but the ordi-
1131       nary user need not understand the details of constructing  personalized
1132       prompt strings.
1133
1134       A  percent sign followed by a single character is expanded according to
1135       what the following character is:
1136
1137       %b_X    Replaced by the byte offset into the current input file.  The  b
1138              is followed by a single character (shown as _X above) which spec-
1139              ifies the line whose byte offset is to be used.  If the  charac-
1140              ter  is a "t", the byte offset of the top line in the display is
1141              used, an "m" means use the middle line, a "b" means use the bot-
1142              tom  line,  a "B" means use the line just after the bottom line,
1143              and a "j" means use the "target" line, as specified  by  the  -j
1144              option.
1145
1146       %B     Replaced by the size of the current input file.
1147
1148       %c     Replaced by the column number of the text appearing in the first
1149              column of the screen.
1150
1151       %d_X    Replaced by the page number of a line in the  input  file.   The
1152              line to be used is determined by the _X, as with the %b option.
1153
1154       %D     Replaced  by  the  number of pages in the input file, or equiva-
1155              lently, the page number of the last line in the input file.
1156
1157       %E     Replaced by the name of the editor (from the VISUAL  environment
1158              variable,  or  the  EDITOR environment variable if VISUAL is not
1159              defined).  See the discussion of the LESSEDIT feature below.
1160
1161       %f     Replaced by the name of the current input file.
1162
1163       %i     Replaced by the index of the current file in the list  of  input
1164              files.
1165
1166       %l_X    Replaced  by  the  line number of a line in the input file.  The
1167              line to be used is determined by the _X, as with the %b option.
1168
1169       %L     Replaced by the line number of the last line in the input  file.
1170
1171       %m     Replaced by the total number of input files.
1172
1173       %p_X    Replaced  by  the  percent into the current input file, based on
1174              byte offsets.  The line used is determined by the _X as with  the
1175              %b option.
1176
1177       %P_X    Replaced  by  the  percent into the current input file, based on
1178              line numbers.  The line used is determined by the _X as with  the
1179              %b option.
1180
1181       %s     Same as %B.
1182
1183       %t     Causes  any  trailing spaces to be removed.  Usually used at the
1184              end of the string, but may appear anywhere.
1185
1186       %x     Replaced by the name of the next input file in the list.
1187
1188       If any item is unknown (for example, the file size if input is a pipe),
1189       a question mark is printed instead.
1190
1191       The  format  of  the  prompt string can be changed depending on certain
1192       conditions.  A question mark followed by a single character  acts  like
1193       an  "IF":  depending  on the following character, a condition is evalu-
1194       ated.  If the condition is true, any characters following the  question
1195       mark  and  condition  character,  up  to  a period, are included in the
1196       prompt.  If the condition is false, such characters are  not  included.
1197       A  colon appearing between the question mark and the period can be used
1198       to establish an "ELSE": any characters between the colon and the period
1199       are  included  in  the string if and only if the IF condition is false.
1200       Condition characters (which follow a question mark) may be:
1201
1202       ?a     True if any characters have been included in the prompt so  far.
1203
1204       ?b_X    True if the byte offset of the specified line is known.
1205
1206       ?B     True if the size of current input file is known.
1207
1208       ?c     True if the text is horizontally shifted (%c is not zero).
1209
1210       ?d_X    True if the page number of the specified line is known.
1211
1212       ?e     True if at end-of-file.
1213
1214       ?f     True  if  there is an input filename (that is, if input is not a
1215              pipe).
1216
1217       ?l_X    True if the line number of the specified line is known.
1218
1219       ?L     True if the line number of the last line in the file is known.
1220
1221       ?m     True if there is more than one input file.
1222
1223       ?n     True if this is the first prompt in a new input file.
1224
1225       ?p_X    True if the percent into the current input file, based  on  byte
1226              offsets, of the specified line is known.
1227
1228       ?P_X    True  if  the percent into the current input file, based on line
1229              numbers, of the specified line is known.
1230
1231       ?s     Same as "?B".
1232
1233       ?x     True if there is a next input file  (that  is,  if  the  current
1234              input file is not the last one).
1235
1236       Any  characters  other  than  the  special  ones (question mark, colon,
1237       period, percent, and backslash) become literally part  of  the  prompt.
1238       Any  of  the special characters may be included in the prompt literally
1239       by preceding it with a backslash.
1240
1241       Some examples:
1242
1243       ?f%f:Standard input.
1244
1245       This prompt prints the filename, if known; otherwise the string  "Stan-
1246       dard input".
1247
1248       ?f%f .?ltLine %lt:?pt%pt\%:?btByte %bt:-...
1249
1250       This  prompt  would print the filename, if known.  The filename is fol-
1251       lowed by the line number, if known, otherwise  the  percent  if  known,
1252       otherwise  the  byte  offset  if  known.  Otherwise, a dash is printed.
1253       Notice how each question mark has a matching  period,  and  how  the  %
1254       after the %pt is included literally by escaping it with a backslash.
1255
1256       ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x..%t
1257
1258       This  prints  the  filename if this is the first prompt in a file, fol-
1259       lowed by the "file N of N" message if there  is  more  than  one  input
1260       file.   Then,  if  we are at end-of-file, the string "(END)" is printed
1261       followed by the name of the next file, if there is one.   Finally,  any
1262       trailing spaces are truncated.  This is the default prompt.  For refer-
1263       ence, here are the defaults for  the  other  two  prompts  (-m  and  -M
1264       respectively).   Each  is  broken  into  two lines here for readability
1265       only.
1266
1267       ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x.:
1268            ?pB%pB\%:byte %bB?s/%s...%t
1269
1270       ?f%f .?n?m(file %i of %m) ..?ltlines %lt-%lb?L/%L. :
1271            byte %bB?s/%s. .?e(END) ?x- Next\: %x.:?pB%pB\%..%t
1272
1273       And here is the default message produced by the = command:
1274
1275       ?f%f .?m(file %i of %m) .?ltlines %lt-%lb?L/%L. .
1276            byte %bB?s/%s. ?e(END) :?pB%pB\%..%t
1277
1278       The prompt expansion features are also used for another purpose: if  an
1279       environment  variable LESSEDIT is defined, it is used as the command to
1280       be executed when the v command is  invoked.   The  LESSEDIT  string  is
1281       expanded  in the same way as the prompt strings.  The default value for
1282       LESSEDIT is:
1283
1284            %E ?lm+%lm. %f
1285
1286       Note that this expands to the editor name, followed by a + and the line
1287       number,  followed by the file name.  If your editor does not accept the
1288       "+linenumber" syntax, or has other differences  in  invocation  syntax,
1289       the LESSEDIT variable can be changed to modify this default.
1290
1291
1292SSEECCUURRIITTYY
1293       When  the  environment  variable LESSSECURE is set to 1, _l_e_s_s runs in a
1294       "secure" mode.  This means these features are disabled:
1295
1296              !      the shell command
1297
1298              |      the pipe command
1299
1300              :e     the examine command.
1301
1302              v      the editing command
1303
1304              s  -o  log files
1305
1306              -k     use of lesskey files
1307
1308              -t     use of tags files
1309
1310                     metacharacters in filenames, such as *
1311
1312                     filename completion (TAB, ^L)
1313
1314       Less can also be compiled to be permanently in "secure" mode.
1315
1316
1317EENNVVIIRROONNMMEENNTT VVAARRIIAABBLLEESS
1318       Environment variables may be specified either in the system environment
1319       as  usual,  or  in  a  _l_e_s_s_k_e_y  (1) file.  If environment variables are
1320       defined in more than one place, variables defined in  a  local  lesskey
1321       file  take precedence over variables defined in the system environment,
1322       which take precedence over variables defined in the system-wide lesskey
1323       file.
1324
1325       COLUMNS
1326              Sets the number of columns on the screen.  Takes precedence over
1327              the number of columns specified by the TERM variable.   (But  if
1328              you  have  a  windowing  system  which  supports  TIOCGWINSZ  or
1329              WIOCGETD, the window system's idea  of  the  screen  size  takes
1330              precedence over the LINES and COLUMNS environment variables.)
1331
1332       EDITOR The name of the editor (used for the v command).
1333
1334       HOME   Name  of  the user's home directory (used to find a lesskey file
1335              on Unix and OS/2 systems).
1336
1337       HOMEDRIVE, HOMEPATH
1338              Concatenation of the HOMEDRIVE and  HOMEPATH  environment  vari-
1339              ables is the name of the user's home directory if the HOME vari-
1340              able is not set (only in the Windows version).
1341
1342       INIT   Name of the user's init directory (used to find a  lesskey  file
1343              on OS/2 systems).
1344
1345       LANG   Language for determining the character set.
1346
1347       LC_CTYPE
1348              Language for determining the character set.
1349
1350       LESS   Options which are passed to _l_e_s_s automatically.
1351
1352       LESSANSIENDCHARS
1353              Characters  which may end an ANSI color escape sequence (default
1354              "m").
1355
1356       LESSANSIMIDCHARS
1357              Characters which may appear between the ESC  character  and  the
1358              end   character  in  an  ANSI  color  escape  sequence  (default
1359              "0123456789;[?!"'#%()*+ ".
1360
1361       LESSBINFMT
1362              Format for displaying non-printable, non-control characters.
1363
1364       LESSCHARDEF
1365              Defines a character set.
1366
1367       LESSCHARSET
1368              Selects a predefined character set.
1369
1370       LESSCLOSE
1371              Command line to invoke the (optional) input-postprocessor.
1372
1373       LESSECHO
1374              Name of the lessecho program (default "lessecho").  The lessecho
1375              program  is needed to expand metacharacters, such as * and ?, in
1376              filenames on Unix systems.
1377
1378       LESSEDIT
1379              Editor prototype string (used for the v command).   See  discus-
1380              sion under PROMPTS.
1381
1382       LESSGLOBALTAGS
1383              Name  of  the command used by the -t option to find global tags.
1384              Normally should be set to "global" if your system has the _g_l_o_b_a_l
1385              (1) command.  If not set, global tags are not used.
1386
1387       LESSHISTFILE
1388              Name  of  the  history file used to remember search commands and
1389              shell commands between invocations of _l_e_s_s_.  If set  to  "-",  a
1390              history  file  is  not used.  The default is "$HOME/.lesshst" on
1391              Unix systems, "$HOME/_lesshst" on DOS and  Windows  systems,  or
1392              "$HOME/lesshst.ini" or "$INIT/lesshst.ini" on OS/2 systems.
1393
1394       LESSHISTSIZE
1395              The maximum number of commands to save in the history file.  The
1396              default is 100.
1397
1398       LESSKEY
1399              Name of the default lesskey(1) file.
1400
1401       LESSKEY_SYSTEM
1402              Name of the default system-wide lesskey(1) file.
1403
1404       LESSMETACHARS
1405              List of characters which are considered "metacharacters" by  the
1406              shell.
1407
1408       LESSMETAESCAPE
1409              Prefix  which  less will add before each metacharacter in a com-
1410              mand sent to the shell.  If LESSMETAESCAPE is an  empty  string,
1411              commands  containing  metacharacters  will  not be passed to the
1412              shell.
1413
1414       LESSOPEN
1415              Command line to invoke the (optional) input-preprocessor.
1416
1417       LESSSECURE
1418              Runs less in "secure" mode.  See discussion under SECURITY.
1419
1420       LESSSEPARATOR
1421              String to be appended to a directory name  in  filename  comple-
1422              tion.
1423
1424       LESSUTFBINFMT
1425              Format for displaying non-printable Unicode code points.
1426
1427       LINES  Sets  the  number of lines on the screen.  Takes precedence over
1428              the number of lines specified by the TERM variable.  (But if you
1429              have  a  windowing system which supports TIOCGWINSZ or WIOCGETD,
1430              the window system's idea of the  screen  size  takes  precedence
1431              over the LINES and COLUMNS environment variables.)
1432
1433       PATH   User's  search  path  (used to find a lesskey file on MS-DOS and
1434              OS/2 systems).
1435
1436       SHELL  The shell used to execute the ! command, as well  as  to  expand
1437              filenames.
1438
1439       TERM   The type of terminal on which _l_e_s_s is being run.
1440
1441       VISUAL The name of the editor (used for the v command).
1442
1443
1444SSEEEE AALLSSOO
1445       lesskey(1)
1446
1447
1448WWAARRNNIINNGGSS
1449       The  =  command and prompts (unless changed by -P) report the line num-
1450       bers of the lines at the top and bottom of the screen, but the byte and
1451       percent of the line after the one at the bottom of the screen.
1452
1453       If  the  :e  command is used to name more than one file, and one of the
1454       named files has been viewed previously, the new files  may  be  entered
1455       into the list in an unexpected order.
1456
1457       On  certain  older  terminals (the so-called "magic cookie" terminals),
1458       search highlighting will cause an erroneous display.   On  such  termi-
1459       nals,  search  highlighting  is  disabled  by default to avoid possible
1460       problems.
1461
1462       In certain cases, when search highlighting is enabled and a search pat-
1463       tern  begins  with a ^, more text than the matching string may be high-
1464       lighted.  (This problem does not occur when less is compiled to use the
1465       POSIX regular expression package.)
1466
1467       When  viewing  text containing ANSI color escape sequences using the -R
1468       option, searching will not find  text  containing  an  embedded  escape
1469       sequence.   Also,  search  highlighting may change the color of some of
1470       the text which follows the highlighted text.
1471
1472       On some systems, _s_e_t_l_o_c_a_l_e claims that ASCII characters 0 thru  31  are
1473       control  characters rather than binary characters.  This causes _l_e_s_s to
1474       treat some binary files as ordinary, non-binary files.   To  workaround
1475       this  problem,  set the environment variable LESSCHARSET to "ascii" (or
1476       whatever character set is appropriate).
1477
1478       This manual is too long.
1479
1480       See http://www.greenwoodsoftware.com/less for the list of known bugs in
1481       all versions of less.
1482
1483
1484CCOOPPYYRRIIGGHHTT
1485       Copyright (C) 1984-2005  Mark Nudelman
1486
1487       less  is  part of the GNU project and is free software.  You can redis-
1488       tribute it and/or modify it under the terms of either (1) the GNU  Gen-
1489       eral  Public  License  as published by the Free Software Foundation; or
1490       (2) the Less License.  See the file README in the less distribution for
1491       more details regarding redistribution.  You should have received a copy
1492       of the GNU General Public License along with the source for  less;  see
1493       the  file  COPYING.   If not, write to the Free Software Foundation, 59
1494       Temple Place, Suite 330, Boston, MA  02111-1307, USA.  You should  also
1495       have received a copy of the Less License; see the file LICENSE.
1496
1497       less is distributed in the hope that it will be useful, but WITHOUT ANY
1498       WARRANTY; without even the implied warranty of MERCHANTABILITY or  FIT-
1499       NESS  FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
1500       more details.
1501
1502
1503AAUUTTHHOORR
1504       Mark Nudelman <markn@greenwoodsoftware.com>
1505       Send  bug  reports  or  comments  to  the  above  address  or  to  bug-
1506       less@gnu.org.
1507       For  more  information,  see the less homepage at http://www.greenwood-
1508       software.com/less.
1509
1510
1511
1512                           Version 394: 03 Dec 2005                    LESS(1)
1513