home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / os2 / elvis / options.doc < prev    next >
Encoding:
Text File  |  1992-06-20  |  28.0 KB  |  793 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. _5.  _O_P_T_I_O_N_S
  8.  
  9.      Options may be set or examined via  the  colon  command
  10. "set".   The  values of options will affect the operation of
  11. later commands.
  12.  
  13.      For convenience, options have both a  long  descriptive
  14. name  and  a  short name which is easy to type.  You may use
  15. either name interchangably.  I like the short names, myself.
  16.  
  17.      There are three types of options: Boolean, string,  and
  18. numeric.   Boolean  options are made TRUE by giving the name
  19. of the option as an argument to the "set" command; they  are
  20. made  FALSE  by  prefixing the name with "no".  For example,
  21. "set autoindent" makes the autoindent option TRUE, and  "set
  22. noautoindent"  makes  it  FALSE.   Elvis also allows boolean
  23. options to be toggled by prefixing the name with "neg".  So,
  24. ":map  g  :set  neglist^M"  will cause the <g> key to alter-
  25. nately toggle the "list" option on and off.  (The "neg" pre-
  26. fix is an extension; the real vi doesn't support it.)
  27.  
  28.      To change the value of a string or numeric option, pass
  29. the "set" command the name of the option, followed by an "="
  30. sign  and  the  option's  new  value.   For  example,   "set
  31. tabstop=8"  will  give the tabstop option a value of 8.  For
  32. string options, you may enclose the new value in quotes.
  33.  
  34. NNNNAAAAMMMMEEEESSSS              TTTTYYYYPPPPEEEE DDDDEEEEFFFFAAAAUUUULLLLTTTT       MMMMEEEEAAAANNNNIIIINNNNGGGG
  35. autoindent, ai     Bool noai          auto-indent during input
  36. autoprint, ap      Bool ap            in EX, print the current line
  37. autotab, at        Bool at            auto-indent allowed to use tabs?
  38. autowrite, aw      Bool noaw          auto-write when switching files
  39. beautify,  bf      Bool nobf          strip control chars from file?
  40. charattr, ca       Bool noca          interpret \fX sequences?
  41. cc, cc             Str  cc="cc -c"    name of the C compiler
  42. columns, co        Num  co=80         width of the screen
  43. digraph, dig       Bool nodig         recognize digraphs?
  44. directory, dir     Str  dir="/usr/tmp"where tmp files are kept
  45. edcompatible, ed   Bool noed          remember ":s//" options
  46. equalprg, ep       Bool ep="fmt"      program to run for = operator
  47. errorbells, eb     Bool eb            ring bell on error
  48. exrc, exrc         Bool noexrc        read "./.exrc" file?
  49. exrefresh, er      Bool er            write lines indiviually in EX
  50. flash, vbell       Bool flash         use visible alternative to bell
  51. flipcase, fc       Str  fc=""         non-ASCII chars flipped by ~
  52. hideformat, hf     Bool hf            hide text formatter commands
  53. ignorecase, ic     Bool noic          upper/lowercase match in search
  54. inputmode, im      Bool noim          start vi in insert mode?
  55. keytime, kt        Num  kt=2          timeout for mapped key entry
  56. keywordprg, kp     Str  kp="ref"      full pathname of shift-K prog
  57. lines, ln          Num  ln=25         number of lines on the screen
  58. list, li           Bool noli          display lines in "list" mode
  59. magic, ma          Bool ma            use regular expression in search
  60. make, mk           Str  mk="make"     name of the "make" program
  61.  
  62.  
  63.  
  64.                        June 13, 1992
  65.  
  66.  
  67.  
  68.  
  69.  
  70. 5-2                       OPTIONS                        5-2
  71.  
  72.  
  73. mesg, ms           Bool ms            allow messages from other users?
  74. modelines, ml      Bool noml          are modelines processed?
  75. more, more         Bool more          pause between messages?
  76. nearscroll, ns     Num  ns=15         when to scroll vs. redraw
  77. novice, nov        Bool nonovice      set options for ease of use
  78. number, nu         Bool nonumber      show line numbers
  79. paragraphs, para   Str  para="PPppIPLPQP"names of "paragraph" nroff cmd
  80. prompt, pr         Bool pr            show ':' prompt in _e_x mode
  81. readonly, ro       Bool noro          prevent overwriting of orig file
  82. remap, rem         Bool remap         allow key maps to call key maps
  83. report, re         Num  re=5          report when 5 or more changes
  84. ruler, ru          Bool noru          display line/column numbers
  85. scroll, sc         Num  sc=12         scroll amount for ^U and ^D
  86. sections, sect     Str  sect="NHSHSSSEse"names of "section" nroff cmd
  87. shell, sh          Str  sh="/bin/sh"  full pathname of the shell
  88. showmatch, sm      Bool nosm          show matching ()[]{}
  89. showmode, smd      Bool nosmd         say when we're in input mode
  90. shiftwidth, sw     Num  sw=8          shift amount for < and >
  91. sidescroll, ss     Num  ss=8          amount of sideways scrolling
  92. sync, sy           Bool nosy          call sync() often
  93. tabstop, ts        Num  ts=8          width of tab characters
  94. taglength, tl      Num  tl=0          significant chars in tag name
  95. term, te           Str  te="$TERM"    name of the termcap entry
  96. terse, tr          Bool notr          give shorter error messages
  97. timeout, to        Bool to            distinguish <esc> from <arrow>?
  98. warn, wa           Bool wa            warn for ! if file modified
  99. window, wi         Num  wi=24         lines to redraw after long move
  100. wrapmargin, wm     Num  wm=0          wrap long lines in input mode
  101. wrapscan, ws       Bool ws            at EOF, searches wrap to line 1
  102. writeany, wr       Bool nowr          allow :w to clobber files
  103.  
  104.  
  105. autoindent, ai
  106.      During input mode, the  autoindent  option  will  cause
  107.      each  added line to begin with the same amount of lead-
  108.      ing whitespace as the line above it.   Without  autoin-
  109.      dent, added lines are initially empty.
  110.  
  111. autoprint, ap
  112.      This option only affects EX  mode.   If  the  autoprint
  113.      option  on,  and  either the cursor has moved to a dif-
  114.      ferent line or the previous command modified the  file,
  115.      then Elvis will print the current line.
  116.  
  117. autotab, at
  118.      This option affects the  behaviour  of  the  autoindent
  119.      mode.  If autoindent is turned off, then autotab has no
  120.      effect.
  121.  
  122.      When autotab is turned on, elvis will use a mixture  of
  123.      spaces and tabs to create the proper amount of indenta-
  124.      tion.  This is the default.
  125.  
  126.      When autotab is turned off, elvis will only use  spaces
  127.  
  128.  
  129.  
  130.                        June 13, 1992
  131.  
  132.  
  133.  
  134.  
  135.  
  136. 5-3                       OPTIONS                        5-3
  137.  
  138.  
  139.      for  auto-indent.   Elvis  will still insert a real tab
  140.      character when you hit the <Tab> key, though; the auto-
  141.      tab option only affects _a_u_t_o_m_a_t_i_c indentation.
  142.  
  143. autowrite, aw
  144.      When you're editing one file and decide  to  switch  to
  145.      another  -  via  the  :tag  command,  or :next command,
  146.      perhaps - if your current file has been modified,  then
  147.      Elvis  will  normally print an error message and refuse
  148.      to switch.
  149.  
  150.      However, if the autowrite option is on, then Elvis will
  151.      write the modified version of the current file and suc-
  152.      cessfully switch to the new file.
  153.  
  154. beautify, bf
  155.      This option causes all control characters to be deleted
  156.      from  the text file, at the time when you start editing
  157.      it.  If you're already editing a file when you turn  on
  158.      the beautify option, then that file won't be affected.
  159.  
  160. cc   The :cc command  runs  the  C  compiler.   This  option
  161.      should be set to the name of your compiler.
  162.  
  163. charattr, ca
  164.      Many text formatting programs allow  you  to  designate
  165.      portions  of your text to be underlined, italicized, or
  166.      boldface by embedding the special strings \fU, \fI, and
  167.      \fB in your text.  The special string \fP marks the end
  168.      of underlined or boldface text.
  169.  
  170.      Elvis normally treats those special strings  just  like
  171.      any other text.
  172.  
  173.      However, if the charattr option is on, then Elvis  will
  174.      interpret  those  special strings correctly, to display
  175.      underlined or boldface text on the screen.  (This  only
  176.      works,  of  course, if your terminal can display under-
  177.      lined and boldface, and if the TERMCAP entry  says  how
  178.      to do it.)
  179.  
  180. columns, co
  181.      This option shows how wide your screen is.
  182.  
  183. digraph, dig
  184.      This option is used to  enable/disable  recognition  of
  185.      digraphs.   The default value is nodigraph, which means
  186.      that digraphs will not be recognized.
  187.  
  188. directory, dir
  189.      Elvis stores text  in  temporary  files.   This  option
  190.      allows  you  to control which directory those temporary
  191.      files will appear in.  The default is /usr/tmp.
  192.  
  193.  
  194.  
  195.  
  196.                        June 13, 1992
  197.  
  198.  
  199.  
  200.  
  201.  
  202. 5-4                       OPTIONS                        5-4
  203.  
  204.  
  205.      This option can only be set  in  a  .exrc  file;  after
  206.      that,  Elvis will have already started making temporary
  207.      files in some other directory, so it would be too late.
  208.  
  209. edcompatible, ed
  210.      This   option   affects   the    behaviour    of    the
  211.      ":s/regexp/text/options"  command.   It is normally off
  212.      (:se noed) which causes all of the substitution options
  213.      to be off unless explicitly given.
  214.  
  215.      However, with edcompatible on (:se ed),  the  substitu-
  216.      tion  command  remembers  which  options  you used last
  217.      time.  Those same options  will  continue  to  be  used
  218.      until  you change them.  In edcompatible mode, when you
  219.      explicitly give the name of a substitution option,  you
  220.      will toggle the state of that option.
  221.  
  222.      This all seems very strange to me, but its  implementa-
  223.      tion  was  almost free when I added the ":&" command to
  224.      repeat the previous substitution, so there it is.
  225.  
  226. equalprg, ep
  227.      This holds the name & arguments of the external  filter
  228.      program  used  the  the visual = operator.  The defualt
  229.      value is "fmt", so the  =  operator  will  adjust  line
  230.      breaks in text.
  231.  
  232. errorbells, eb
  233.      Elvis normally rings  a  bell  when  you  do  something
  234.      wrong.  This option lets you disable the bell.
  235.  
  236. exrc This option specifies  whether  a  .exrc  file  in  the
  237.      current directory should be executed.  By default, this
  238.      option is off (":set noexrc") which prevents elvis from
  239.      executing .exrc in the current directory.  If the .exrc
  240.      file in your home directory turns this option on (":set
  241.      exrc") then the Elvis will attempt to execute the .exrc
  242.      file in the current directory.
  243.  
  244.      This option  exist  mainly  for  security  reasons.   A
  245.      mean-spirited person could do something like
  246.           echo >/tmp/.exrc '!rm -rf $HOME'
  247.      and then anybody who attempted to edit or view  a  file
  248.      in  the  /tmp directory would lose most of their files.
  249.      With the exrc option turned off, this  couldn't  happen
  250.      to you.
  251.  
  252. exrefresh, er
  253.      The EX mode of Elvis writes many lines to  the  screen.
  254.      You can make Elvis either write each line to the screen
  255.      separately, or save up many lines and write them all at
  256.      once.
  257.  
  258.      The exrefresh option is normally on, so  each  line  is
  259.  
  260.  
  261.  
  262.                        June 13, 1992
  263.  
  264.  
  265.  
  266.  
  267.  
  268. 5-5                       OPTIONS                        5-5
  269.  
  270.  
  271.      written to the screen separately.
  272.  
  273.      You may wish to turn  the  exrefresh  option  off  (:se
  274.      noer)  if  the  "write"  system  call is costly on your
  275.      machine, or if you're using  a  windowing  environment.
  276.      (Windowing  environments  scroll text a lot faster when
  277.      you write many lines at once.)
  278.  
  279.      This option has no effect in  visual  command  mode  or
  280.      input mode.
  281.  
  282. flash, vbell
  283.      If your termcap entry describes a  visible  alternative
  284.      to  ringing your terminal's bell, then this option will
  285.      say whether the visible version gets used or not.  Nor-
  286.      mally it will be.
  287.  
  288.      If your termcap does NOT include a visible  bell  capa-
  289.      bility,  then  the  flash  option  will be off, and you
  290.      can't turn it on.
  291.  
  292. flipcase, fc
  293.      The flipcase option allows you to control how the  non-
  294.      ASCII characters are altered by the "~" command.
  295.  
  296.      The string is divided into pairs of  characters.   When
  297.      "~" is applied to a non-ASCII character, Elvis looks up
  298.      the character in the flipcase string to see which  pair
  299.      it's  in, and replaces it by the other character of the
  300.      pair.
  301.  
  302. hideformat, hf
  303.      Many text formatters require you to embed  format  com-
  304.      mands  in  your  text,  on  lines that start with a "."
  305.      character.  Elvis normally displays  these  lines  like
  306.      any  other  text,  but  if the hideformat option is on,
  307.      then format lines are displayed as blank lines.
  308.  
  309. ignorecase, ic
  310.      Normally, when  Elvis  searches  for  text,  it  treats
  311.      uppercase  letters  as  being  different  for lowercase
  312.      letters.
  313.  
  314.      When the ignorecase option is on, uppercase and  lower-
  315.      case are treated as equal.
  316.  
  317. inputmode, im
  318.      This option allows you to have Elvis start up in insert
  319.      mode.   You  can  still exit insert mode at any time by
  320.      hitting the ESC key, as usual.   Usually,  this  option
  321.      would be set in your ".exrc" file.
  322.  
  323. keytime, kt
  324.      The arrow keys of most terminals send a multi-character
  325.  
  326.  
  327.  
  328.                        June 13, 1992
  329.  
  330.  
  331.  
  332.  
  333.  
  334. 5-6                       OPTIONS                        5-6
  335.  
  336.  
  337.      sequence.   It  takes  a  measurable amount of time for
  338.      these sequences to be transmitted.  The keytime  option
  339.      allows  you  to  control  the maximum amount of time to
  340.      allow for an arrow key (or  other  mapped  key)  to  be
  341.      received in full.
  342.  
  343.      On most systems, the setting is the number of tenths of
  344.      a  second  to  allow between characters.  On some other
  345.      systems, the setting is in whole seconds.
  346.  
  347.      Try to avoid  setting  keytime=1.   Most  systems  just
  348.      count  clock beats, so if you tried to read a character
  349.      shortly before a clock beat, you could allow almost  no
  350.      time  at  all  for  reading the characters.  For higher
  351.      keytime settings, the difference is less critical.
  352.  
  353.      If your system's response time is poor, you might  want
  354.      to  increase  the  keytime.   In particular, I've found
  355.      that when keystrokes must be  sent  through  a  network
  356.      (via  X  windows,  rlogin,  or telnet, for example) the
  357.      keytime should be set to at least 1 second.
  358.  
  359.      As a special case, you can set keytime to 0 to  disable
  360.      this time limit stuff altogether.  The big problem here
  361.      is: If your arrow keys' sequences start  with  an  ESC,
  362.      then every time you hit your ESC key Elvis will wait...
  363.      and wait...  to see if maybe that ESC was  part  of  an
  364.      arrow key's sequence.
  365.  
  366.      NOTE: this option is a generalization  of  the  timeout
  367.      option of the real vi.
  368.  
  369. keywordprg, kp
  370.      Elvis has a special keyword lookup feature.   You  move
  371.      the cursor onto a word, and hit shift-K, and Elvis uses
  372.      another program to look up the word and display  infor-
  373.      mation about it.
  374.  
  375.      This option says which program gets run.
  376.  
  377.      The default value of this option is "ref", which  is  a
  378.      program  that  looks up the definition of a function in
  379.      C.  It looks up the function  name  in  a  file  called
  380.      "refs" which is created by ctags.
  381.  
  382.      You can subtitute other programs, such  as  an  English
  383.      dictionary  program  or  the online manual.  Elvis runs
  384.      the program, using the keyword as  its  only  argument.
  385.      The  program  should  write information to stdout.  The
  386.      program's exit status should  be  0,  unless  you  want
  387.      Elvis to print "<<< failed >>>".
  388.  
  389. lines, ln
  390.      This option says how many lines you screen has.
  391.  
  392.  
  393.  
  394.                        June 13, 1992
  395.  
  396.  
  397.  
  398.  
  399.  
  400. 5-7                       OPTIONS                        5-7
  401.  
  402.  
  403. list, li
  404.      In nolist mode (the default), Elvis displays text in  a
  405.      "normal" manner -- with tabs expanded to an appropriate
  406.      number of spaces, etc.
  407.  
  408.      However, sometimes it is useful to have tab  characters
  409.      displayed   differently.    In   list  mode,  tabs  are
  410.      displayed as "^I", and a "$" is displayed at the end of
  411.      each line.
  412.  
  413. magic, ma
  414.      The search  mechanism  in  Elvis  can  accept  "regular
  415.      expressions"  --  strings  in  which certain characters
  416.      have special meaning.
  417.  
  418.      The magic option is normally  on,  which  causes  these
  419.      characters to be treated specially.
  420.  
  421.      If you turn the magic option off (:se noma),  then  all
  422.      characters except ^ and $ are treated literally.  ^ and
  423.      $ retain their special meanings regardless of the  set-
  424.      ting of magic.
  425.  
  426. make, mk
  427.      The :make  command  runs  your  "make"  program.   This
  428.      option defines the name of your "make" program.
  429.  
  430. mesg With the  real  vi,  running  under  real  UNIX,  ":set
  431.      nomesg" would prevent other users from sending you mes-
  432.      sages.  Elvis ignores it, though.
  433.  
  434. modelines, ml
  435.      Elvis supports modelines.  Modelines are lines near the
  436.      beginning  or  end  of  your  text  file  which contain
  437.      "ex:yowza:", where "yowza" is any EX command.  A  typi-
  438.      cal  "yowza"  would  be  something  like  "set  ts=5 ca
  439.      kp=spell wm=15".  Other text may also appear on a mode-
  440.      line, so you can place the "ex:yowza:" in a comment:
  441.  
  442.              /* ex:set sw=4 ai: */
  443.  
  444.  
  445.      Normally these lines are ignored, for security reasons,
  446.      but if you have "set modelines" in your .exrc file then
  447.      "yowza" is executed.
  448.  
  449. nearscroll, ns
  450.      The line that contains the cursor will always be on the
  451.      screen.  If you move the cursor to a line that isn't on
  452.      the screen, then  elvis  will  either  scroll  (if  the
  453.      cursor's  line  is  nearly  on  the  screen already) or
  454.      redraw the screen completely  with  the  cursor's  line
  455.      centered  (if  the  cursor  line is _n_o_t near the screen
  456.      already).
  457.  
  458.  
  459.  
  460.                        June 13, 1992
  461.  
  462.  
  463.  
  464.  
  465.  
  466. 5-8                       OPTIONS                        5-8
  467.  
  468.  
  469.      This option  allows  you  to  control  elvis'  idea  of
  470.      "near".   A value of 15 is typical.  A value of 1 would
  471.      cause elvis to scroll no more that one line.   A  value
  472.      of 0 disables scrolling.
  473.  
  474. novice, nov
  475.      The  command  ":set  novice"  is  equivelent  to  ":set
  476.      nomagic report=1 showmode".
  477.  
  478. number, nu
  479.      The  "number"  option  causes  Elvis  to  display  line
  480.      numbers at the start of each line.  The numbers are not
  481.      actually part of the text; when  the  file  is  written
  482.      out, it will be written without line numbers.
  483.  
  484. paragraphs, pa
  485.      The { and } commands move the cursor forward  or  back-
  486.      ward in increments of one paragraph.  Paragraphs may be
  487.      separated by blank lines, or by a "dot"  command  of  a
  488.      text  formatter.   Different  text  formatters use dif-
  489.      ferent "dot" commands.  This option allows you to  con-
  490.      figure Elvis to work with your text formatter.
  491.  
  492.      It is assumed that your formatter  uses  commands  that
  493.      start  with a "." character at the front of a line, and
  494.      then have a one- or two-character command name.
  495.  
  496.      The value of the paragraphs option is a string in which
  497.      each  pair  of  characters is one possible form of your
  498.      text formatter's paragraph command.
  499.  
  500. more When Elvis must display a sequence of messages  at  the
  501.      bottom  line  of the screen in visual mode, it normally
  502.      pauses after all but the last one, so you have time  to
  503.      read them all.
  504.  
  505.      If you turn off the "more" option, then Elvis will  not
  506.      pause.   This means you can only read the last message,
  507.      but it is usually the most important one anyway.
  508.  
  509. prompt, pr
  510.      If you ":set noprompt", then Elvis will no longer  emit
  511.      a  ':'  when  it  expects you to type in an _e_x command.
  512.      This is slightly useful if you're  using  an  astonish-
  513.      ingly  slow  UNIX  machine, but the rest of us can just
  514.      ignore this one.
  515.  
  516. readonly, ro
  517.      Normally, Elvis will let you write  back  any  file  to
  518.      which  you  have  write  permission.  If you don't have
  519.      write permission, then you can only write  the  changed
  520.      version of the file to a _d_i_f_f_e_r_e_n_t file.
  521.  
  522.      If you set the readonly option, then Elvis will pretend
  523.  
  524.  
  525.  
  526.                        June 13, 1992
  527.  
  528.  
  529.  
  530.  
  531.  
  532. 5-9                       OPTIONS                        5-9
  533.  
  534.  
  535.      you  don't  have write permission to _a_n_y file you edit.
  536.      It is useful when you really only mean to use Elvis  to
  537.      look  at  a file, not to change it.  This way you can't
  538.      change it accidentally.
  539.  
  540.      This option is normally off, unless you use the  "view"
  541.      alias  of  Elvis.   "View" is like "vi" except that the
  542.      readonly option is on.
  543.  
  544. remapThe ":map"  command  allows  you  to  convert  one  key
  545.      sequence  into another.  The remap option allows you to
  546.      specify what should happen if portions  of  that  other
  547.      sequence  are  also  in the map table.  If remap is on,
  548.      then those portions will also be  mapped,  just  as  if
  549.      they  had been typed on the keyboard.  If remap is off,
  550.      then the matching portions will not be mapped.
  551.  
  552.      For example, if you enter the commands ":map A  B"  and
  553.      ":map  B C", then when remap is on, A will be converted
  554.      to C.  But when remap is off, A will be converted  only
  555.      to B.
  556.  
  557. report, re
  558.      Commands in Elvis may affect many lines.  For  commands
  559.      that affect a lot of lines, Elvis will output a message
  560.      saying what was done and how many lines were  affected.
  561.      This  option allows you to define what "a lot of lines"
  562.      means.  The default is 5, so any command which  affects
  563.      5 or more lines will cause a message to be shown.
  564.  
  565. ruler, ru
  566.      This option is normally off.  If you turn it  on,  then
  567.      Elvis  will  constantly display the line/column numbers
  568.      of the cursor, at the bottom of the screen.
  569.  
  570. scroll, sc
  571.      The ^U and ^D keys normally scroll backward or  forward
  572.      by half a screenful, but this is adjustable.  The value
  573.      of this option says how many lines  those  keys  should
  574.      scroll  by.   If you invoke ^U or ^D with a count argu-
  575.      ment (for example, "33^D") then this option's value  is
  576.      set to the count.
  577.  
  578. sections, se
  579.      The [[ and ]] commands move the cursor backward or for-
  580.      ward  in increments of 1 section.  Sections may be del-
  581.      imited by a { character in column 1  (which  is  useful
  582.      for  C  source  code) or by means of a text formatter's
  583.      "dot" commands.
  584.  
  585.      This option allows you to configure Elvis to work  with
  586.      your text formatter's "section" command, in exectly the
  587.      same way that the paragraphs option makes it work  with
  588.      the formatter's "paragraphs" command.
  589.  
  590.  
  591.  
  592.                        June 13, 1992
  593.  
  594.  
  595.  
  596.  
  597.  
  598. 5-10                      OPTIONS                       5-10
  599.  
  600.  
  601. shell, sh
  602.      When Elvis forks a shell (perhaps for the :! or  :shell
  603.      commands)  this is the program that is uses as a shell.
  604.      This is "/bin/sh" by default, unless you have  set  the
  605.      SHELL (or COMSPEC, for MS-DOS) environment variable, it
  606.      which  case  the  default  value  is  copied  from  the
  607.      environment.
  608.  
  609. shiftwidth, sw
  610.      The < and > commands shift text left or right  by  some
  611.      uniform  number  of  columns.   The  shiftwidth  option
  612.      defines that "uniform number".  The default is 8.
  613.  
  614. showmatch, sm
  615.      With showmatch set, in input mode every  time  you  hit
  616.      one  of  )}], Elvis will momentarily move the cursor to
  617.      the matching ({[.
  618.  
  619. showmode, smd
  620.      In visual mode, it is easy to forget whether you're  in
  621.      the  visual  command  mode or input/replace mode.  Nor-
  622.      mally, the showmode option is off, and  you  haven't  a
  623.      clue  as  to  which  mode  you're  in.  If you turn the
  624.      showmode option  on,  though,  a  little  message  will
  625.      appear  in  the lower right-hand corner of your screen,
  626.      telling you which mode you're in.
  627.  
  628. sidescroll, ss
  629.      For long lines, Elvis scrolls sideways.  (This is  dif-
  630.      ferent from the real vi, which wraps a single long line
  631.      onto several rows of the screen.)
  632.  
  633.      To minimize the number of scrolls needed,  Elvis  moves
  634.      the  screen  sideways  by several characters at a time.
  635.      The value of this  option  says  how  many  characters'
  636.      widths to scroll at a time.
  637.  
  638.      Generally, the faster your screen can be  redrawn,  the
  639.      lower the value you will want in this option.
  640.  
  641. sync, sy
  642.      If the system crashes during an edit session, then most
  643.      of  your  work can be recovered from the temporary file
  644.      that Elvis uses to store changes.   However,  sometimes
  645.      the  OS  will not copy changes to the hard disk immedi-
  646.      ately, so recovery might not be possible.  The [no]sync
  647.      option lets you control this.
  648.  
  649.      In nosync mode (which is the default, for UNIX),  Elvis
  650.      lets  the operating system control when data is written
  651.      to the disk.  This is generally faster.
  652.  
  653.      In sync mode (which is the default for  MS-DOS,  Amiga-
  654.      Dos,  and  Atari  TOS), Elvis forces all changes out to
  655.  
  656.  
  657.  
  658.                        June 13, 1992
  659.  
  660.  
  661.  
  662.  
  663.  
  664. 5-11                      OPTIONS                       5-11
  665.  
  666.  
  667.      disk every time you make a change.  This  is  generally
  668.      safer,  but slower.  It can also be a rather rude thing
  669.      to do on a multi-user system.
  670.  
  671. tabstop, ts
  672.      Tab characters are normally 8 characters wide, but  you
  673.      can change their widths by means of this option.
  674.  
  675. taglength, tl
  676.      This option allows you to specify how  many  characters
  677.      of  a tag's name must match when performing tag lookup.
  678.      As a special case, ":set taglength=0"  means  that  all
  679.      characters of a tag's name must match.
  680.  
  681.      Note: some configurations of Elvis don't  support  this
  682.      option.
  683.  
  684. term, te
  685.      This read-only option shows the  name  of  the  termcap
  686.      entry that Elvis is using for your terminal.
  687.  
  688. terse, tr
  689.      The real vi uses  this  option  to  select  longer  vs.
  690.      shorter  error  messages.   Elvis  has  only one set of
  691.      error messages, though, so this option has no effect.
  692.  
  693. timeout, to
  694.      The command ":set notimeout"  is  equivelent  to  ":set
  695.      keytime=0",  and  ":set timeout" is equivelent to ":set
  696.      keytime=1".  This affects the behaviour  of  the  <Esc>
  697.      key.   See  the  discussion of the "keytime" option for
  698.      more information.
  699.  
  700. warn, wa
  701.      If you have modified a file but not yet written it back
  702.      to  disk,  then  Elvis  will  normally  print a warning
  703.      before executing a ":!cmd" command.  However, in nowarn
  704.      mode, this warning is not given.
  705.  
  706.      Elvis also normally prints a message after a successful
  707.      search  that  wrapped  at EOF.  The [no]warn option can
  708.      also disable this warning.
  709.  
  710. window, wi
  711.      This option controls how many lines are redrawn after a
  712.      long move.
  713.  
  714.      On fast terminals, this is usually set to the number of
  715.      rows  that  the  terminal can display, minus one.  This
  716.      causes the entire screen to be filled with text  around
  717.      the cursor.
  718.  
  719.      On slow terminals, you may wish to reduce this value to
  720.      about  7  or  so.   That way, if you're doing something
  721.  
  722.  
  723.  
  724.                        June 13, 1992
  725.  
  726.  
  727.  
  728.  
  729.  
  730. 5-12                      OPTIONS                       5-12
  731.  
  732.  
  733.      like  repeatedly  hitting  'n'  to  search   for   each
  734.      occurrence of some string and trying to find a particu-
  735.      lar occurrence, then you don't need to wait as long for
  736.      Elvis to redraw the screen after each search.
  737.  
  738. wrapmargin, wm
  739.      Normally (with wrapmargin=0) Elvis will let you type in
  740.      extremely long lines, if you wish.
  741.  
  742.      However, with warpmargin set to something other that  0
  743.      (wrapmargin=10 is nice), Elvis will automatically cause
  744.      long lines to be "wrapped" on a word  break  for  lines
  745.      come  too close to the right-hand margin.  For example:
  746.      On an 80-column screen, ":set wm=10" will  cause  lines
  747.      to wrap when their length exceeds 70 columns.
  748.  
  749. wrapscan, ws
  750.      Normally, when you search  for  something,  Elvis  will
  751.      find  it  no  matter  where  it  is in the file.  Elvis
  752.      starts at the cursor position,  and  searches  forward.
  753.      If  Elvis  hits EOF without finding what you're looking
  754.      for, then it wraps around to  continue  searching  from
  755.      line  1.   If  you  turn  off  the wrapscan option (:se
  756.      nows), then when Elvis hits EOF  during  a  search,  it
  757.      will stop and say so.
  758.  
  759. writeany, wr
  760.      With "writeany" turned off, elvis will prevent you from
  761.      accidentally overwriting a file.  For example, if "foo"
  762.      exists then ":w foo" will fail.  If  you  turn  on  the
  763.      "writeany" option, then ":w foo" will work.
  764.  
  765.      Regardless of the setting of "writeany",  though,  ":w!
  766.      foo"  will  work.   The  '!' forces the ":w" command to
  767.      write the file unless the operating system won't  allow
  768.      it.
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.                        June 13, 1992
  791.  
  792.  
  793.