home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / elvos221.zip / lib / elvis.INF (.txt) < prev    next >
OS/2 Help File  |  1998-12-10  |  339KB  |  10,480 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Elvis 2.1 Documentation ΓòÉΓòÉΓòÉ
  3.  
  4.  
  5.  
  6. TABLE OF CONTENTS 
  7.  
  8.      1. What is elvis? 
  9.      2. Visual command mode     (by function     or name) 
  10.      3. Input mode 
  11.      4. EX command mode     (by function     or name) 
  12.      5. Regular expressions (searches and substitutions) 
  13.      6. Options     (by function     or name) 
  14.      7. Display modes 
  15.      8. User interfaces 
  16.      9. Operating systems 
  17.      10. Sessions, initialization, and recovery 
  18.      11. Cut buffers 
  19.      12. Messages 
  20.      13. Arithmetic expressions (arithmetic, tests, and functions) 
  21.      14. Tags 
  22.      15. The Internet 
  23.      16. Tips 
  24.      A. List of terse messages (not in here, see elvistrs.msg) 
  25.      B. Quick Reference 
  26.      C. How To... 
  27.      elvis(1) Man-page for elvis (not in here, see elvis.man) 
  28.      ctags(1) Man-page for ctags (not in here, see ctags.man) 
  29.      ref(1) Man-page for ref (not in here, see ref.man) 
  30.      fmt(1) Man-page for fmt (not in here, see fmt.man) 
  31.  
  32.  HINT: If you're reading this via elvis' built-in :help command, then you 
  33.  should probably begin by reading about :help itself.  To do that, move the 
  34.  cursor onto the word ":help" and press the Enter key. 
  35.  
  36.   .--------------------------------------------------------------.
  37.   | Copyright (C) 1995 by Steve Kirkendall.  Permission is granted |
  38.   | to use and distribute this software in either source code    |
  39.   | form, or executable form, under the terms described in the   |
  40.   | license.  The license is in the file "lib/license".  This    |
  41.   | software is provided with no warranty of any kind.  The      |
  42.   | author is not liable for any consequences arising from the   |
  43.   | use of this software.                                        |
  44.   ^--------------------------------------------------------------^
  45.  
  46.  You can contact the author via e-mail at kirkenda@cs.pdx.edu, or via postal 
  47.  mail at: 
  48.  
  49.  Steve Kirkendall 
  50.  1500 SW Park Avenue, #326 
  51.  Portland OR 97201 
  52.  USA 
  53.  
  54.  
  55. ΓòÉΓòÉΓòÉ 1.1. What is elvis? ΓòÉΓòÉΓòÉ
  56.  
  57.  
  58. 1. WHAT IS ELVIS? 
  59.  
  60. Elvis is a clone of vi/ex, the standard UNIX editor. Elvis supports nearly all 
  61. of the vi/ex commands, in both visual mode and ex mode. Elvis adds support for 
  62. multiple files, multiple windows, a variety of display modes, on-line help, and 
  63. other miscellaneous extensions. 
  64.  
  65. Like vi/ex, Elvis stores most of the text in a temporary file, instead of RAM. 
  66. This allows it to edit files that are too large to fit in a single process' 
  67. data space. Also, the edit buffer can survive a power failure or crash. 
  68.  
  69. Elvis 2.1 runs under the following operating systems: 
  70.  
  71.      UNIX. If you have X-windows, elvis can use a graphical interface, in 
  72.       addition to the traditional text-based interface. 
  73.      MS-Windows/95 and Windows/NT. Both a console (text-based) and a graphical 
  74.       version are available. 
  75.      MS-DOS. It can also run in a DOS window under Windows 3.1. However, there 
  76.       is no graphic 16-bit version of elvis. 
  77.      OS/2. The basic OS/2 port only supports a text-mode interface using VIO 
  78.       calls; it acts exactly like the termcap interface. There is also a real 
  79.       port of the termcap version which requires the EMX library, and a version 
  80.       which uses the graphical "x11" interface which requires XFree86. 
  81.  
  82.  Elvis is freely redistributable, in either source form or executable form. 
  83.  There are very few restrictions on how you may use it. 
  84.  
  85.  1.1 About this manual 
  86.  
  87.  This document is written in HTML. You should be able to view it with any Web 
  88.  browser, such as Mosaic or Netscape. These browsers also allow you to print 
  89.  the manual, if you prefer. 
  90.  
  91.  You can also use elvis to view it or print it; elvis has a built-in HTML 
  92.  display mode. To print this document using elvis, you must first set some 
  93.  printer options. After that, you can just load any of these files, maybe set 
  94.  the display mode to HTML via the command ":display html" (if elvis doesn't set 
  95.  the display mode automatically), and then give the command ":lp". 
  96.  
  97.  Each chapter is stored in a separate file; you'll need to print each one 
  98.  separately. A shell script/batch file named printdoc.bat is provided to help 
  99.  you do this. 
  100.  
  101.  1.2 Overview of Elvis 
  102.  
  103.  The user interface of Elvis/vi/ex is weird. There are two major command modes 
  104.  in Elvis, and a few text input modes as well. Each command mode has a command 
  105.  which allows you to switch to the other mode. 
  106.  
  107.   You will probably use the visual command mode most of the time. This is the 
  108.  mode that Elvis normally starts up in. 
  109.  
  110.   In visual command mode, the entire screen is filled with lines of text from 
  111.  your file. Each keystroke is interpreted as part of a visual command. If you 
  112.  start typing text, it will not be inserted, it will be treated as part of a 
  113.  command. To insert text, you must first give an "insert text" command, such as 
  114.  i. This will take some getting used to. (An alternative exists. Look up the 
  115.  initialstate option.) 
  116.  
  117.   The ex mode is quite different. Elvis displays a ":" character on the bottom 
  118.  line of the screen, as a prompt. You are then expected to type in a command 
  119.  line and hit the Enter key. The set of commands recognized in the ex mode is 
  120.  different from visual mode's. 
  121.  
  122.  1.3 Special features of Elvis 
  123.  
  124.  Compared to the traditional ex/vi, elvis supports the following major new 
  125.  features: 
  126.  
  127.  Multiple edit buffers 
  128.            You can edit several files at the same time. The :buffer ex command 
  129.            lists the current edit buffers. You can switch to a different buffer 
  130.            by typing :(buffername or :buffer buffername. 
  131.  Multiple windows 
  132.            The :split ex command or ^Ws visual command will create a new window 
  133.            showing the same edit buffer. You can use :split filename to edit a 
  134.            different file in a new window. Related commands allow you to do 
  135.            things like search for a tag and display it in a new window, or move 
  136.            among windows. 
  137.  Multiple user interfaces 
  138.            In addition to the traditional termcap user interface, elvis also 
  139.            supports graphical interfaces for X11 and Windows95, plus some other 
  140.            stripped-down interfaces. 
  141.  A variety of display modes 
  142.            The :display command lists the available display modes, and can set 
  143.            the display to a particular mode. The ^Wd visual command toggles 
  144.            between display modes. 
  145.  Online help 
  146.            This uses elvis' built-in "html" display mode to display the manual, 
  147.            which uses multiple fonts and hypertext links to improve 
  148.            readability. To access it, give the command :help. (But you already 
  149.            figured that out, didn't you?) 
  150.  Highly configurable 
  151.            Elvis has a set of configuration scripts, each of which is run at a 
  152.            specific time.  For example, elvis.ini is run when elvis starts up, 
  153.            and elvis.arf is run after reading a file.  See the chapter on 
  154.            sessions for a discussion of these. 
  155.  
  156.            There is also an elvis.msg file which can be used to translate the 
  157.            built-in messages into another language. 
  158.  
  159.            The X11 interface has a fully configurable toolbar. 
  160.  
  161.            The elvis.syn file contains descriptions of various languages, for 
  162.            use with the syntax-coloring display mode. 
  163.  Enhanced tags 
  164.            The tags feature has been extended to support overloaded tags, which 
  165.            C++ tends to use a lot.  See the tags chapter. 
  166.  Macro debugger 
  167.            To help you develop keyboard macros (and also report 
  168.            incompatibilities between elvis and vi), elvis has a built-in macro 
  169.            debugger.  The the article in the Tips chapter. 
  170.  Network support 
  171.            Elvis can read via the http protocol, and read/write via the ftp 
  172.            protocol. See the Internet chapter. 
  173.  Aliases 
  174.            You can construct csh-style aliases for the ex commands, via the 
  175.            :alias command. See the article in the Tips chapter. 
  176.  New options 
  177.            Elvis has roughly 200 different options.  See the Options chapter 
  178.            for a list. 
  179.  Built-in calculator 
  180.            Elvis has a : calc command which evaluates C-like expressions. 
  181.            These expressions are also used for some other commands, such as :if 
  182.            and :eval, among other things. See the Arithmetic expressions 
  183.            chapter. 
  184.  
  185.  
  186. ΓòÉΓòÉΓòÉ 1.2. Elvis 2.1 Visual Command Mode ΓòÉΓòÉΓòÉ
  187.  
  188.  
  189.  
  190. 2. VISUAL COMMAND MODE 
  191.  
  192. Most visual mode commands are one keystroke long. The following tables list the 
  193. operation performed by each keystroke, and also denotes any options or 
  194. arguments that it accepts. 
  195.  
  196.  In addition to the keys listed here, your keyboard's "arrow" keys will be 
  197. interpreted as the appropriate cursor movement commands. The same goes for 
  198. (PgUp) and (PgDn), if your keyboard has them. The (Insert) key will toggle 
  199. between insert mode and replace mode. There is a colon mode command (":map", to 
  200. be described later) which will allow you to define other keys, such as function 
  201. keys. 
  202.  
  203.  A tip: visual command mode looks a lot like text input mode. If you forget 
  204. which mode you're in, just hit the (Esc) key. If Elvis beeps, then you're in 
  205. visual command mode. If Elvis does not beep, then you were in input mode, but 
  206. by hitting (Esc) you will have switched to visual command mode. So, one way or 
  207. another, after (Esc) Elvis will be ready for a command. 
  208.  
  209. 2.1 Notation 
  210.  
  211. The following notation is used in the tables that follow... 
  212.  
  213.  count 
  214.            Many commands may be preceded by a count. This is a sequence of 
  215.            digits representing a decimal number. For most commands that use a 
  216.            count, the command is repeated count times, but a few commands use 
  217.            the count value for some completely different purpose. The count is 
  218.            always optional, and usually defaults to 1. 
  219.  key 
  220.            Some commands require two keystrokes.  The first key always 
  221.            determines which command is to be executed.  The second key is used 
  222.            as a parameter to the command. 
  223.  mv 
  224.            Some commands (! < > = c d y) operate on text between the cursor and 
  225.            some other position. Usually, the other position is specified by 
  226.            typing a movement command after the operator command, but there are 
  227.            other options. See the section on operators for more information. 
  228.  inp 
  229.            Many commands allow the user to interactively enter text. See the 
  230.            discussion of "input mode" in the following chapter. 
  231.  
  232.  
  233.  2.2 Visual Commands, Grouped by Function 
  234.  
  235.      2.2.1 Edit commands 
  236.      2.2.2 Edit commands which are operators 
  237.      2.2.3 Edit commands which are shortcuts for operators 
  238.      2.2.4 Movement commands which move by a line or column 
  239.      2.2.5 Movement commands which are window-relative 
  240.      2.2.6 Movement commands which search for strings 
  241.      2.2.7 Movement commands which search for characters 
  242.      2.2.8 Movement commands which move by words 
  243.      2.2.9 Movement commands which move by sentences or sections 
  244.      2.2.10 Movement/mark commands 
  245.      2.2.11 Scrolling commands 
  246.      2.2.12 Window commands 
  247.      2.2.13 Other commands 
  248.  
  249.  
  250.  2.2.1 Edit commands 
  251.  
  252.   .--------------.------------------------------------------------------.
  253.   |    COMMAND   | DESCRIPTION                                          |
  254.   |--------------|------------------------------------------------------|
  255.   |       P      | Paste text before the cursor                         |
  256.   |       p      | Paste text after the cursor                          |
  257.   | count J      | Join lines, to form one big line                     |
  258.   | count X      | Delete the character(s) to the left of the cursor    |
  259.   | count x      | Delete the character that the cursor's on            |
  260.   | count ~      | Switch a character between uppercase & lowercase     |
  261.   | count r key  | Replace "count" chars by a given character           |
  262.   |       R inp  | Overtype                                             |
  263.   | count a inp  | Insert text after the cursor                         |
  264.   | count A inp  | Append at end of the line                            |
  265.   | count i inp  | Insert text at the cursor                            |
  266.   | count I inp  | Insert at the front of the line (after indents)      |
  267.   | count o inp  | Open a new line below the current line               |
  268.   | count O inp  | Open up a new line above the current line            |
  269.   | count .      | Repeat the previous "edit" command                   |
  270.   | count u      | Undo the previous edit command                       |
  271.   | count ^R     | Redo commands which were undone by the u command     |
  272.   |       U      | Undo all recent changes to the current line          |
  273.   ^--------------^------------------------------------------------------^
  274.  
  275.  P 
  276.  p 
  277.            The P and p commands paste text from a cut buffer. The difference 
  278.            between them is that p pastes after the cursor, and P pastes before 
  279.            it. See the section on cut buffers for more information. 
  280.  count J 
  281.            The J command joins the current line with the following line. If you 
  282.            supply a count argument, then it will joint that many lines 
  283.            together, starting at the current line. 
  284.  count X 
  285.  count x 
  286.            The X and x commands delete characters. The difference between them 
  287.            is that x deletes the character at the cursor, and X deletes the 
  288.            character before the cursor. If you supply a count, then it will 
  289.            delete that many characters. The deleted characters are copied into 
  290.            a cut buffer. The X and x commands never delete newline characters. 
  291.  count ~ 
  292.            The ~ command changes uppercase letters to lowercase, or vice versa, 
  293.            and moves the cursor forward. Non-letters are unaffected, but the 
  294.            cursor will still be moved forward. 
  295.  count r key 
  296.            The r command replaces a single character in the edit buffer with a 
  297.            single character read from the keyboard. If you supply a count, then 
  298.            it will replace that many characters in the edit buffer with 
  299.            multiple copies of a single character from the keyboard. 
  300.  R inp 
  301.            The R command switches the window to "replace mode" which is a 
  302.            variation of input mode. 
  303.  count a inp 
  304.            The a command switches to input mode with the cursor starting 
  305.            immediately after its previous position. If a count is supplied, 
  306.            then after you manually insert the first copy of the new text, elvis 
  307.            will automatically insert count-1 additional copies. 
  308.  count A inp 
  309.            The A command switches to input mode with the cursor starting at the 
  310.            end of the current line. If a count is supplied, then after you 
  311.            manually insert the first copy of the new text, elvis will 
  312.            automatically insert count-1 additional copies. 
  313.  count i inp 
  314.            The i command switches to input mode with the cursor starting at its 
  315.            current position. If a count is supplied, then after you manually 
  316.            insert the first copy of the new text, elvis will automatically 
  317.            insert count-1 additional copies. 
  318.  count I inp 
  319.            The I command switches to input mode with the cursor starting at the 
  320.            beginning of the current line. If a count is supplied, then after 
  321.            you manually insert the first copy of the new text, elvis will 
  322.            automatically insert count-1 additional copies. 
  323.  count o inp 
  324.            The o command switches to input mode. A new, blank line is created 
  325.            after the current line, and the cursor starts at the beginning of 
  326.            that new line. If a count is supplied, then after you manually 
  327.            insert the first copy of the new text, elvis will automatically 
  328.            insert count-1 additional copies. 
  329.  count O inp 
  330.            The O command switches to input mode. A new, blank line is created 
  331.            before the current line, and the cursor starts at the beginning of 
  332.            that new line. If a count is supplied, then after you manually 
  333.            insert the first copy of the new text, elvis will automatically 
  334.            insert count-1 additional copies. 
  335.  count . 
  336.            The . command repeats the previous command which changed text. If a 
  337.            count is supplied, it overrides count of the original command. 
  338.  count u 
  339.            The u command undoes the previous edit command. If a count is 
  340.            supplied, then it will undo that many changes, within the limit 
  341.            defined by the undolevels option. 
  342.  count ^R 
  343.            The ^R command redoes commands which were undone by the u command. 
  344.            Essentially it undoes the "undo". 
  345.  U 
  346.            The U command undoes all changes which were made to the current line 
  347.            since the cursor was moved onto it. 
  348.  
  349.  
  350.   2.2.2 Edit commands which  are operators 
  351.  
  352.   .--------------.------------------------------------------------------.
  353.   |    COMMAND   | DESCRIPTION                                          |
  354.   |--------------|------------------------------------------------------|
  355.   |     < mv     | Shift text left                                      |
  356.   |     > mv     | Shift text right                                     |
  357.   |     ! mv text| Run selected lines thru an external filter program   |
  358.   |     = mv     | Reformat                                             |
  359.   |     c mv inp | Change text                                          |
  360.   |     d mv     | Delete text                                          |
  361.   |     y mv     | Yank text (copy it into a cut buffer)                |
  362.   ^--------------^------------------------------------------------------^
  363.   These commands all affect text between the cursor's current position and some 
  364.  other position. There are three ways that you can specify that other position: 
  365.  
  366.      Follow the command keystroke with a movement command. For example, dw 
  367.       deletes a single word. d3w and 3dw both delete three words. 
  368.      Type the command keystroke twice. This causes whole lines to be acted 
  369.       upon. For example, >> indents the current line. 3>> indents the current 
  370.       line and the following two lines. 
  371.      Move the cursor to one end of the text, type v, V, or ^V to start 
  372.       marking, move the cursor to the other end, and then type the desired 
  373.       command key. 
  374.  
  375.  < mv 
  376.  > mv 
  377.            These commands adjust the indentation of lines. The < command 
  378.            reduces indentation by shiftwidth columns, and the > command 
  379.            increases indentation by the same amount. The type of whitespace 
  380.            used for the new indentation is determined by the autotab option. 
  381.            The doubled-up << and >> commands reduce or increase the indentation 
  382.            for the current line, respectively. 
  383.  !  mv text 
  384.            This command prompts you to enter a shell command line at the bottom 
  385.            of the window. When you've entered the command line, that command is 
  386.            executed and the selected text is piped through it. The resulting 
  387.            text replaces the original selected text. For example, 10!!sort will 
  388.            send 10 lines through the sort program. 
  389.  = mv 
  390.            When applied to lines, this command resembles the ! command, except 
  391.            that instead of prompting for a command line, the = command will 
  392.            always execute the program specified via the equalprg option. If you 
  393.            expect to be running the same filter program over and over again, 
  394.            then = is more convenient. 
  395.  
  396.            When applied to characters selected via the v command, the = command 
  397.            uses elvis' built-in calculator to evaluate the characters, and then 
  398.            replaces the original text with the result of that evaluation. For 
  399.            example, if you move the cursor to the start of a parenthesized 
  400.            arithmetic expression and hit v%= then the expression will be 
  401.            simplified. 
  402.  c mv inp 
  403.            This command puts you in input mode so you can replace the selected 
  404.            text with new, manually-entered text. The doubled-up cc command 
  405.            changes the current line. 
  406.  d mv 
  407.  y mv 
  408.            These commands copy the selected text into a cut buffer. The d 
  409.            command then deletes the text from the edit buffer, but y leaves the 
  410.            original text intact. The doubled-up dd and yy commands delete or 
  411.            yank the current line, respectively. 
  412.  
  413.  
  414.  2.2.3 Edit commands which are shortcuts for operators 
  415.  
  416.   .--------------.------------------------------------------------------.
  417.   |    COMMAND   | DESCRIPTION                                          |
  418.   |--------------|------------------------------------------------------|
  419.   |       C inp  | Change text from the cursor to the end of the line   |
  420.   |       D      | Delete text from the cursor to the end of the line   |
  421.   | count S inp  | Change lines, like "count" cc                        |
  422.   | count s inp  | Replace characters, like "count" cl                  |
  423.   | count Y      | Yank text line(s) (copy them into a cut buffer)      |
  424.   ^--------------^------------------------------------------------------^
  425.  
  426.  C inp 
  427.  D 
  428.  count S inp 
  429.  count s int 
  430.  count Y 
  431.            All of these commands are shortcuts for particular operator/movement 
  432.            command combinations. C is short for c$, D is short for d$, 
  433.            uppercase S is short for cc, lowercase s is short for cl, and Y is 
  434.            short for yy. 
  435.  
  436.  
  437.  2.2.4 Movement commands which move by a line or column 
  438.  
  439.   .--------------.------------------------------------------------------.
  440.   |    COMMAND   | DESCRIPTION                                          |
  441.   |--------------|------------------------------------------------------|
  442.   |       0      | If not part of count, move to 1st char of this line  |
  443.   |       ^      | Move to the front of the current line (after indent) |
  444.   |       $      | Move to the rear of the current line                 |
  445.   | count |      | Move to column "count" (defaulting to column 1)      |
  446.   | count ^X     | Move to column "count" (defaulting to the right edge)|
  447.   | count ^M     | Move to the front of the next line                   |
  448.   | count +      | Move to the front of the next line                   |
  449.   | count -      | Move to the front of the preceding line              |
  450.   | count G      | Move to line #"count" (default is the bottom line)   |
  451.   | count h      | Move left                                            |
  452.   | count ^H     | Move left                                            |
  453.   | count l      | Move right                                           |
  454.   | count Space  | Move right                                           |
  455.   | count j      | Move down                                            |
  456.   | count ^J     | Move down                                            |
  457.   | count ^N     | Move down                                            |
  458.   | count k      | Move up                                              |
  459.   | count ^P     | Move up                                              |
  460.   | count _      | Move to the current line                             |
  461.   ^--------------^------------------------------------------------------^
  462.  
  463.  0 
  464.            The 0 command moves the cursor to the first character in the current 
  465.            line. 
  466.  ^ 
  467.            The ^ command moves the cursor to the first non-whitespace character 
  468.            in the current line. If the current line doesn't contain any 
  469.            non-whitespace characters, then the cursor is moved to the end of 
  470.            the line. 
  471.  $ 
  472.            The $ command moves the cursor to the last character in the line. 
  473.  count | 
  474.  count ^X 
  475.            These commands move the cursor to a given column. The leftmost 
  476.            column is designated "column 1." If the cursor can't be moved to the 
  477.            exact column number requested (e.g., because the line isn't that 
  478.            long, or the requested column falls in the middle of a tab 
  479.            character), then elvis will move the cursor as close as possible. If 
  480.            no count is given, then the | command moves the cursor to column 1 
  481.            and the ^X move the cursor to the rightmost visible column (taking 
  482.            side scrolling into account). 
  483.  count ^M 
  484.  count + 
  485.            The ^M and + commands move the cursor down count lines (or 1 line if 
  486.            no count is given), and then to the first non-whitespace character 
  487.            in that destination line. It is equivalent to a j command followed 
  488.            by a ^ command. 
  489.  count - 
  490.            The - command moves the cursor up count lines (or 1 line if no count 
  491.            is given), and then to the first non-whitespace character in that 
  492.            destination line. It is equivalent to a k command followed by a ^ 
  493.            command. 
  494.  count G 
  495.            The G command moves the cursor directly to the start of a given 
  496.            line, or to the last line if no count is given. 
  497.  
  498.            For the purposes of this command, the "line number" of the cursor 
  499.            position is defined to be one plus the number of newline characters 
  500.            which precede it in the buffer. This definition is used regardless 
  501.            of what display mode you happen to be using. The number and ruler 
  502.            options use the same definition. 
  503.  count h 
  504.  count ^H 
  505.            The h and ^H commands move the cursor count characters to the left, 
  506.            or 1 character leftward if no count is given. They won't move the 
  507.            cursor past the beginning of the line. 
  508.  count l 
  509.  count Space 
  510.            The h and Space commands move the cursor count characters to the 
  511.            right, or 1 character rightward if no count is given. They won't 
  512.            move the cursor past the end of the line. 
  513.  count j 
  514.  count ^J 
  515.  count ^N 
  516.            These commands all move the cursor down count lines (or 1 line if no 
  517.            count is given), without changing the column of the cursor if 
  518.            possible. 
  519.  count k 
  520.  count ^P 
  521.            These commands all move the cursor up count lines (or 1 line if no 
  522.            count is given), without changing the column of the cursor if 
  523.            possible. 
  524.  count _ 
  525.            The _ command moves the cursor down count-1 lines. This command is 
  526.            used internally to implement the double-operators; for example, << 
  527.            is interpreted as <_. By itself the _ command is pretty useless. 
  528.  
  529.  
  530.  2.2.5 Movement commands which are window-relative 
  531.  
  532.   .--------------.------------------------------------------------------.
  533.   |    COMMAND   | DESCRIPTION                                          |
  534.   |--------------|------------------------------------------------------|
  535.   | count H      | Move to home row (the line at the top of the screen) |
  536.   |       M      | Move to middle row                                   |
  537.   | count L      | Move to last row (i.e., line at bottom of window)    |
  538.   ^--------------^------------------------------------------------------^
  539.  
  540.  count H 
  541.            The H command moves the cursor to the front of the first line that 
  542.            is currently visible in the window. If a count is given, then it 
  543.            will move down count-1 lines from the top of the window. 
  544.  M 
  545.            The M command moves the cursor to the front of the line in the 
  546.            middle of the window. 
  547.  count L 
  548.            The L command moves the cursor to the front of the line line that is 
  549.            currently visible in the window. If a count is given, then it will 
  550.            move up count-1 lines from the bottom of the window. 
  551.  
  552.  
  553.  2.2.6 Movement commands which search for strings 
  554.  
  555.   .--------------.------------------------------------------------------.
  556.   |    COMMAND   | DESCRIPTION                                          |
  557.   |--------------|------------------------------------------------------|
  558.   |       / text | Search forward for a given regular expression        |
  559.   |       ? text | Search backward for a given regular expression       |
  560.   |       ^A     | Search for next occurrence of word at cursor         |
  561.   |       n      | Repeat the previous search                           |
  562.   |       N      | Repeat previous search, but in the opposite direction|
  563.   ^--------------^------------------------------------------------------^
  564.   All of these search commands are affected by the magic, ignorecase, wrapscan, 
  565.  and autoselect options. 
  566.  
  567.  / text 
  568.  ? text 
  569.            These commands prompt you to enter a regular expression at the 
  570.            bottom of the window. When you have entered it, elvis will search 
  571.            forward (for /) or backward (for ?) for text which matches the 
  572.            regular expression. Normally the cursor is positioned at the start 
  573.            of the matching text. If you want to include a / or ? character in 
  574.            the regular expression, you must precede it with a backslash; 
  575.            otherwise it will be interpreted as a closing delimiter. 
  576.  
  577.            When entering the regular expression, you can append a closing 
  578.            delimiter (/ or ?, as appropriate) followed by a line delta (+ or - 
  579.            followed by a line number) to move the cursor to the start of a line 
  580.            after or before the matching text. You can also use v or n flags to 
  581.            temporarily force the autoselect option on or off for that one 
  582.            search. 
  583.  ^A 
  584.            This command searches forward for the next instance of the word 
  585.            under the cursor. It is a shortcut for the /\<\@\> Enter command. 
  586.  n 
  587.  N 
  588.            These commands repeat the previous /, ?,  or ^A command. The n 
  589.            command repeats it in the same direction as the original search, and 
  590.            N repeats it in the opposite direction. 
  591.  
  592.  
  593.  2.2.7 Movement commands which search for characters 
  594.  
  595.   .--------------.------------------------------------------------------.
  596.   |    COMMAND   | DESCRIPTION                                          |
  597.   |--------------|------------------------------------------------------|
  598.   | count %      | Move to matching (){}[] or to a given % of file      |
  599.   | count F key  | Move leftward to a given character                   |
  600.   | count f key  | Move rightward to a given character                  |
  601.   | count T key  | Move leftward *almost* to a given character          |
  602.   | count t key  | Move rightward *almost* to a given character         |
  603.   | count ,      | Repeat the previous [fFtT] but in the other direction|
  604.   | count ;      | Repeat the previous [fFtT] cmd                       |
  605.   ^--------------^------------------------------------------------------^
  606.  
  607.  count % 
  608.            This command actually performs one of two totally separate 
  609.            movements, depending on whether a count was supplied. With no count, 
  610.            if the cursor is on a parenthesis character from the matchchar list, 
  611.            then it moves the cursor to the opposite parenthesis. If the cursor 
  612.            isn't on a parenthesis to begin with, then elvis will scan forward 
  613.            on the current line until it finds one, and then move to its 
  614.            opposite. It can also show matching preprocessor directives, if the 
  615.            window is in the syntax display mode for a language which has a 
  616.            preprocessor. 
  617.  
  618.            However, if a count is supplied, then it is used as a percentage 
  619.            from 1 to 100, and the cursor is moved to that percentage of the way 
  620.            into the buffer. For example, typing 50% will move the cursor to the 
  621.            middle of the buffer. 
  622.  count F key 
  623.  count f key 
  624.            These commands search for the character key in the current line, 
  625.            starting from the cursor position. For example, fk searches forward 
  626.            for the next "k". F4 searches backward for the previous "4". If the 
  627.            end of line is reached without finding the character, then the 
  628.            command fails. 
  629.  count T key 
  630.  count t key 
  631.            These commands move almost, but not quite, to the next instance of 
  632.            key. The t and T commands stop one character short of where f and F 
  633.            would stop, respectively. 
  634.  count , 
  635.  count ; 
  636.            The ; command repeats the previous f, F, t, or T command. You don't 
  637.            need to type a key because elvis automatically uses whatever key you 
  638.            looked for last time. The , command also repeats the previous f, F, 
  639.            t, or T command, but in the reverse direction. 
  640.  
  641.  
  642.  2.2.8 Movement commands which move by words 
  643.  
  644.   .--------------.------------------------------------------------------.
  645.   |    COMMAND   | DESCRIPTION                                          |
  646.   |--------------|------------------------------------------------------|
  647.   | count w      | Move forward "count" words                           |
  648.   | count e      | Move forward to the end of the current word          |
  649.   | count b      | Move back "count" words                              |
  650.   | count W      | Move forward "count" Words                           |
  651.   | count E      | Move end of Word                                     |
  652.   | count B      | Move back Word                                       |
  653.   ^--------------^------------------------------------------------------^
  654.   The uppercase and lowercase versions of these commands differ only in their 
  655.  definition of a "word." The uppercase commands consider a word to be any 
  656.  sequence of non-whitespace characters, bound by whitespace characters or the 
  657.  ends of the buffer. 
  658.  
  659.  The lowercase commands define a word as either a sequence of alphanumeric 
  660.  characters, or a sequence of punctuation characters, but not a mixture of the 
  661.  two; these words can be bound by whitespace, the ends of the buffer, or by 
  662.  characters from the other class of lowercase word. (I.e, an alphanumeric word 
  663.  can be bound by punctuation characters, and a punctuation word can be bound by 
  664.  alphanumeric characters.) The underscore character is considered to be 
  665.  alphanumeric. 
  666.  
  667.  count w 
  668.  count W 
  669.            The w and W commands move the cursor forward to the start of the 
  670.            next word. If a count is given, the cursor will move forward count 
  671.            words. 
  672.  count e 
  673.  count E 
  674.            The e and E commands move the cursor forward to the end of the 
  675.            current word, or if it is already at the end of the word then it'll 
  676.            move to the end of the following word. If a count is given, the 
  677.            cursor will move forward count word ends. 
  678.  
  679.            NOTE: These commands are often used as the targets of the operator 
  680.            commands, as in dw or de. When used this way, the difference between 
  681.            them is that dw includes any whitespace after the word, but de does 
  682.            not. 
  683.  count b 
  684.  count B 
  685.            The b and B commands move the cursor backward to the start of the 
  686.            current word, or if it is already at the start of the word then 
  687.            it'll move to the start of the preceding word. If a count is given, 
  688.            the cursor will move backward count word starts. 
  689.  
  690.  
  691.  2.2.9 Movement commands which move by sentences or sections 
  692.  
  693.   .--------------.------------------------------------------------------.
  694.   |    COMMAND   | DESCRIPTION                                          |
  695.   |--------------|------------------------------------------------------|
  696.   | count (      | Move backward "count" sentences                      |
  697.   | count )      | Move forward "count" sentences                       |
  698.   | count {      | Move back "count" paragraphs                         |
  699.   | count }      | Move forward "count" paragraphs                      |
  700.   |       [ [    | Move back 1 section                                  |
  701.   |       ] ]    | Move forward 1 section                               |
  702.   ^--------------^------------------------------------------------------^
  703.  
  704.  count ( 
  705.  count ) 
  706.            These commands move backward or forward to the start of a sentence. 
  707.            The start of a sentence is defined to be the first non-whitespace 
  708.            character in the file, or the first non-whitespace character after 
  709.            the end of a sentence. 
  710.  
  711.            The exact definition of the end of a sentence depends on the values 
  712.            of the sentenceend, sentencegap, and sentencequote options. The 
  713.            default values of those options define a sentence end to be a 
  714.            period, question mark, or exclamation mark, followed by either a 
  715.            newline character, or two or more space characters. Any number of 
  716.            double-quote characters or closing parentheses may appear between 
  717.            the punctuation and the whitespace. 
  718.  count { 
  719.  count } 
  720.            These commands move backward or forward to the start of a paragraph. 
  721.            The start of a paragraph is defined to be the first blank line 
  722.            encountered after a non-blank line; or a line which contains a troff 
  723.            paragraph command listed in the paragraphs option's value; or the 
  724.            start of a section as described below. 
  725.  [[ 
  726.  ]] 
  727.            These commands move backward or forward to the start of a section. 
  728.            The start of a section is defined to be '{' character in column 1 of 
  729.            a line; or a troff section command listed in the value of the 
  730.            sections option. 
  731.  
  732.            Note: There are also [key and ]key commands for recording 
  733.            keystrokes. Those commands are not related to the [[ and ]] movement 
  734.            commands. 
  735.  
  736.  
  737.  2.2.10 Movement/mark commands 
  738.  
  739.   .--------------.------------------------------------------------------.
  740.   |    COMMAND   | DESCRIPTION                                          |
  741.   |--------------|------------------------------------------------------|
  742.   |       m key  | Mark a line or character                             |
  743.   |       ' key  | Move to a marked line                                |
  744.   |       ` key  | Move to a marked character                           |
  745.   |       V      | Start marking lines for c d y < > or !               |
  746.   |       v      | Start marking characters for c d y < > or !          |
  747.   |       ^V     | Start marking a rectangle for c d y < > or !         |
  748.   ^--------------^------------------------------------------------------^
  749.  
  750.  m key 
  751.            The mkey command stores the current cursor position in mark named 
  752.            key, where key is any letter. The mark is not visible. 
  753.  ' key 
  754.  ` key 
  755.            These commands move the cursor back to a position which was stored 
  756.            via the mkey command. The `key (grave) command is a 
  757.            character-movement command which positions the cursor exactly on the 
  758.            marked character. The 'key (apostrophe) command is a line-movement 
  759.            command which positions the cursor at the front of the line 
  760.            containing the mark. 
  761.  
  762.            The distinction between character-movement and line-movement becomes 
  763.            more significant when you're using the movement command as the 
  764.            target of an operator command. For example, after an ma command and 
  765.            some cursor movement, the command d'a would delete whole lines, but 
  766.            the command d`a would delete only the text between the cursor and 
  767.            the "a" mark. 
  768.  v 
  769.  V 
  770.  ^V 
  771.            These commands start visually selecting text for use by an operator 
  772.            command. The lowercase v command starts selecting characters, 
  773.            uppercase V starts selecting lines, and ^V starts selecting a 
  774.            rectangular area. 
  775.  
  776.  
  777.  2.2.11 Scrolling commands 
  778.  
  779.   .--------------.------------------------------------------------------.
  780.   |    COMMAND   | DESCRIPTION                                          |
  781.   |--------------|------------------------------------------------------|
  782.   |       ^F     | Move toward the bottom of the file by 1 screen full  |
  783.   |       ^B     | Move toward the top of the file by 1 screen full     |
  784.   |       z key  | Scroll current line to window's +top -bottom .middle |
  785.   | count ^D     | Scroll forward "count" lines (default 1/2 screen)    |
  786.   | count ^E     | Scroll forward "count" lines (default 1 line)        |
  787.   | count ^U     | Scroll backward "count" lines (default 1/2 screen)   |
  788.   | count ^Y     | Scroll backward "count" lines (default 1 line)       |
  789.   ^--------------^------------------------------------------------------^
  790.  
  791.  ^F 
  792.            This command moves forward one screen. Specifically, it locates the 
  793.            line at the bottom of the window and moves it to the top of the 
  794.            window. This means that for a 24-row window, ^F will generally move 
  795.            forward 22 lines. The cursor is moved if necessary to keep it on the 
  796.            screen. 
  797.  ^B 
  798.            This command moves backward one screen, by moving the line at the 
  799.            top of the window to the bottom. It is the opposite of the ^F 
  800.            command. 
  801.  z key 
  802.            This command scrolls the current line to either the top (if key is 
  803.            "+"), middle (if key is "." or "z"), or bottom (if key is "-") of 
  804.            the window. 
  805.  count ^D 
  806.  count ^E 
  807.            These commands scroll the window forward by count lines. If no count 
  808.            is given, then ^E defaults to 1 line, and ^D defaults to the value 
  809.            of the scroll option. Supplying a count to the ^D option has the 
  810.            side-effect of setting the scroll option to count. 
  811.  count ^U 
  812.  count ^Y 
  813.            These commands scroll the window backward by count lines. If no 
  814.            count is given, then ^Y defaults to 1 line, and ^U defaults to the 
  815.            value of the scroll option. Supplying a count to the ^U option has 
  816.            the side-effect of setting the scroll option to count. 
  817.  
  818.  
  819.  2.2.12 Window commands 
  820.  
  821.   .--------------.------------------------------------------------------.
  822.   |    COMMAND   | DESCRIPTION                                          |
  823.   |--------------|------------------------------------------------------|
  824.   |       ^W s   | Split current window                                 |
  825.   |       ^W ]   | Split window, then look up tag at cursor             |
  826.   |       ^W n   | Split window, and create a new buffer                |
  827.   |       ^W q   | Save buffer & close window, like ZZ                  |
  828.   |       ^W c   | Hide buffer & close window                           |
  829.   |       ^W d   | Toggle the display mode                              |
  830.   |       ^W S   | Toggle the sidescroll option                         |
  831.   |       ^W j   | Move down to next window                             |
  832.   |       ^W k   | Move up to previous window                           |
  833.   | count ^W ^W  | Move to next window, or to the "count" window        |
  834.   ^--------------^------------------------------------------------------^
  835.  
  836.  ^W s 
  837.            This creates a new window, showing the same buffer as the current 
  838.            window. It is equivalent to the ex :split command with no arguments. 
  839.  ^W ] 
  840.            This performs tag lookup on the word at the cursor, and then creates 
  841.            a new window to show the tag definition.  It is similar to the ex 
  842.            :stag command. 
  843.  ^W n 
  844.            This creates a new buffer, and then creates a new window to show 
  845.            that buffer. It is similar to the ex :snew command. 
  846.  ^W q 
  847.            This saves the buffer if it has changed, and then closes the window. 
  848.            It is identical to the visual ZZ command, and similar to the ex :xit 
  849.            command. 
  850.  ^W c 
  851.            This closes the window, but it neither saves nor discards the 
  852.            current buffer. The buffer continues to exist. This command is like 
  853.            the ex :close command. 
  854.  ^W d 
  855.            This toggles the windows display mode between two different modes. 
  856.            If the buffer's bufdisplay option is set to "html", "man", or "tex", 
  857.            then it will toggle between that mode and the syntax coloring mode. 
  858.            If bufdisplay is set to a syntax-coloring mode or "hex" then it 
  859.            toggles between that mode and "normal". If bufdisplay is "normal", 
  860.            then this command toggles between that mode and the "hex" mode. 
  861.  ^W S 
  862.            This toggles the wrap option off or on, causing sideways scrolling 
  863.            to be alternately disabled and enabled. 
  864.  ^W j 
  865.  ^W k 
  866.  count ^W ^W 
  867.            These commands make other windows be current. This is the only 
  868.            possible way to switch windows for some user interfaces such as the 
  869.            termcap interface. 
  870.  
  871.  NOTE: In addition to the commands shown here, some user interfaces may support 
  872.  extensions to these commands. For example, the termcap interface uses ^W+ to 
  873.  increase the size of the current window, ^W- to reduce the size of the current 
  874.  window, and ^W\ to make the current window as large as possible. 
  875.  
  876.  2.2.13 Other commands 
  877.  
  878.   .--------------.------------------------------------------------------.
  879.   |    COMMAND   | DESCRIPTION                                          |
  880.   |--------------|------------------------------------------------------|
  881.   |       " key  | Select which cut buffer to use next                  |
  882.   |       @ key  | Execute the contents of a cut-buffer as VI commands  |
  883.   |       [ key  | Start recording keystrokes into a cut-buffer         |
  884.   |       ] key  | Stop recording keystrokes into a cut-buffer          |
  885.   |       : text | Run single EX cmd                                    |
  886.   |       Q      | Quit to EX mode                                      |
  887.   |       K      | Run keywordprg on the word at the cursor             |
  888.   |       Z Z    | Save the file & exit                                 |
  889.   |       ^Z     | Either suspend elvis, or fork a shell                |
  890.   |       ^G     | Show file status, and the current line #             |
  891.   |       ^L     | Redraw the screen                                    |
  892.   |       *      | Go to the next error in the errlist                  |
  893.   |       ^I     | In HTML mode, move forward to next link              |
  894.   |       ^T     | Return to source of previous :tag or ^] command.     |
  895.   |       ^]     | If the cursor is on a tag name, go to that tag       |
  896.   |       ^^     | Switch to the previous file, like ":e #"             |
  897.   | count # key  | Increment a number                                   |
  898.   | count &      | Repeat the previous ":s//" command here              |
  899.   ^--------------^------------------------------------------------------^
  900.  
  901.  " key 
  902.            This command determines which cut buffer the next command will use. 
  903.            If the next command doesn't involve a cut buffer, then this command 
  904.            has no effect. If you don't use this command, then the following 
  905.            command will use the anonymous cut buffer. 
  906.  @ key 
  907.            The @ command executes the contents of a cut buffer as a series of 
  908.            vi command keystrokes. The key after the @ is the name of the cut 
  909.            buffer to be executed. 
  910.  [ key 
  911.  ] key 
  912.            These commands are used for recording keystrokes into a cut-buffer. 
  913.            The key is the name of the cut buffer; it must be a letter. Later, 
  914.            you can replay the keystrokes via the @key command. 
  915.  
  916.            Note: There are also [[ and ]] commands for moving the cursor to the 
  917.            start of a section. Those movement commands are unrelated to these 
  918.            [key and ]key keystroke recording commands. 
  919.  : 
  920.  Q 
  921.            This : command allows you to enter a single ex command, and then 
  922.            immediately return to visual command. The Q command is similar, 
  923.            except that it causes you to remain in ex mode until you give the ex 
  924.            :vi command. 
  925.  K 
  926.            This command executes the program named in the keywordprg option, 
  927.            passing it the word at the cursor. This is intended to provide an 
  928.            easy way to run on-line manuals and the like. 
  929.  ZZ 
  930.            The ZZ command writes the current file if it has changed, and then 
  931.            exits. It is equivalent to the ex :xit command. 
  932.  ^Z 
  933.            This command will either suspend elvis, or fork a shell program. 
  934.            Either way, you'll get a shell prompt. ^Z is equivalent to the :stop 
  935.            ex command. 
  936.  ^G 
  937.            The ^G command displays the status of the current file. It is 
  938.            equivalent to the ex :file command with no arguments. 
  939.  ^L 
  940.            The ^L command causes the current window to be redrawn from scratch. 
  941.            This is handy when another program or line noise changes the screen 
  942.            in a way that elvis can't detect & correct automatically. 
  943.  * 
  944.            The * command moves the cursor to the next error reported by the 
  945.            compiler. It is equivalent to the ex :errlist command. 
  946.  ^I 
  947.            The ^I command (the Tab key) moves the cursor forward to the next 
  948.            hypertext link, if you're in the "html" display mode. 
  949.  ^] 
  950.  ^T 
  951.            The ^] command performs tag lookup on the word at the cursor 
  952.            position, and moves the cursor to the file/line where the tag is 
  953.            defined. It resembles the ex :tag command. The ^T command returns 
  954.            the cursor to the previous position, like :pop. 
  955.  ^^ 
  956.            After you've switched edit buffers in a window, the ^^ 
  957.            (Control-Carat) command switches back to the previous buffer, and 
  958.            moves the cursor to its previous position within that buffer. It is 
  959.            like the ex :e# command. 
  960.  count # key 
  961.            This command allows you add or subtract count to the number at the 
  962.            cursor. If the cursor isn't on a word that looks like a number, then 
  963.            the command fails. If no count is given, then 1 is assumed. If the 
  964.            key is "-" then count is subtracted from the number. If the key is 
  965.            "+" or "#" then count is added to the number. If the key is "=" then 
  966.            the word is changed to count. Any other key causes the command to 
  967.            fail. 
  968.  count & 
  969.            Repeat the previous :s/re/new/ command on the current line. If count 
  970.            is given, then also apply it to each of the count-1 following lines 
  971.            as well. 
  972.  
  973.  
  974.  2.3 Visual Commands, sorted by their ASCII code 
  975.  
  976.   .--------------.------------------------------------------------------.
  977.   |    COMMAND   | DESCRIPTION                                          |
  978.   |--------------|------------------------------------------------------|
  979.   |       NUL    | (undefined)                                          |
  980.   |       ^A     | Search for next occurrence of word at cursor         |
  981.   |       ^B     | Move toward the top of the file by 1 screen full     |
  982.   |       ^C     | (undefined; may abort a time-consuming command)      |
  983.   | count ^D     | Scroll forward "count" lines (default 1/2 screen)    |
  984.   | count ^E     | Scroll forward "count" lines (default 1 line)        |
  985.   |       ^F     | Move toward the bottom of the file by 1 screen full  |
  986.   |       ^G     | Show file status, and the current line #             |
  987.   | count ^H     | Move left                                            |
  988.   |       ^I     | (Tab) In "html" display mode, move to next hyperlink |
  989.   | count ^J     | Move down                                            |
  990.   |       ^K     | (undefined)                                          |
  991.   |       ^L     | Redraw the screen                                    |
  992.   | count ^M     | Move to the front of the next line                   |
  993.   | count ^N     | Move down                                            |
  994.   |       ^O     | ignored, to simplify implementation of "visual" map  |
  995.   | count ^P     | Move up                                              |
  996.   |       ^Q     | (undefined; may resume stopped output)               |
  997.   | count ^R     | Redo commands which were undone by the u command     |
  998.   |       ^S     | (undefined; may stop output)                         |
  999.   |       ^T     | Return to source of previous :tag or ^] command.     |
  1000.   | count ^U     | Scroll backward "count" lines (default 1/2 screen)   |
  1001.   |       ^V     | Start marking a rectangle for c d y < > or !         |
  1002.   | count ^W ^W  | Move to next window, or to the "count" window        |
  1003.   |       ^W S   | Toggle the sidescroll option                         |
  1004.   |       ^W ]   | Split window, then look up tag at cursor             |
  1005.   |       ^W c   | Hide buffer & close window                           |
  1006.   |       ^W d   | Toggle the display mode                              |
  1007.   |       ^W j   | Move down to next window                             |
  1008.   |       ^W k   | Move up to previous window                           |
  1009.   |       ^W n   | Split window, and create a new buffer                |
  1010.   |       ^W q   | Save buffer & close window, like ZZ                  |
  1011.   |       ^W s   | Split current window                                 |
  1012.   | count ^X     | Move to column "count" (defaulting to the right edge)|
  1013.   | count ^Y     | Scroll backward "count" lines (default 1 line)       |
  1014.   |       ^Z     | Either suspend elvis, or fork a shell                |
  1015.   |       ^[     | (Escape) Cancels a partially-entered command         |
  1016.   |       ^\     | (undefined; may cause core dump)                     |
  1017.   |       ^]     | If the cursor is on a tag name, go to that tag       |
  1018.   |       ^^     | Switch to the previous file, like ":e #"             |
  1019.   |       ^_     | (undefined)                                          |
  1020.   | count Space  | Move right                                           |
  1021.   |       ! mv   | Run selected lines thru an external filter program   |
  1022.   |       " key  | Select which cut buffer to use next                  |
  1023.   | count # key  | Increment a number                                   |
  1024.   |       $      | Move to the rear of the current line                 |
  1025.   | count %      | Move to matching (){}[] or to a given % of file      |
  1026.   | count &      | Repeat the previous ":s//" command here              |
  1027.   |       ' key  | Move to a marked line                                |
  1028.   | count (      | Move backward "count" sentences                      |
  1029.   | count )      | Move forward "count" sentences                       |
  1030.   |       *      | Go to the next error in the errlist                  |
  1031.   | count +      | Move to the front of the next line                   |
  1032.   | count ,      | Repeat the previous [fFtT] but in the other direction|
  1033.   | count -      | Move to the front of the preceding line              |
  1034.   | count .      | Repeat the previous "edit" command                   |
  1035.   |       / text | Search forward for a given regular expression        |
  1036.   |       0      | If not part of count, move to 1st char of this line  |
  1037.   |       1      | Part of a count argument                             |
  1038.   |       2      | Part of a count argument                             |
  1039.   |       3      | Part of a count argument                             |
  1040.   |       4      | Part of a count argument                             |
  1041.   |       5      | Part of a count argument                             |
  1042.   |       6      | Part of a count argument                             |
  1043.   |       7      | Part of a count argument                             |
  1044.   |       8      | Part of a count argument                             |
  1045.   |       9      | Part of a count argument                             |
  1046.   |       : text | Run single EX cmd                                    |
  1047.   | count ;      | Repeat the previous [fFtT] cmd                       |
  1048.   |       < mv   | Shift text left                                      |
  1049.   |       = mv   | Reformat                                             |
  1050.   |       > mv   | Shift text right                                     |
  1051.   |       ? text | Search backward for a given regular expression       |
  1052.   |       @ key  | Execute the contents of a cut-buffer as VI commands  |
  1053.   | count A inp  | Append at end of the line                            |
  1054.   | count B      | Move back Word                                       |
  1055.   |       C inp  | Change text from the cursor to the end of the line   |
  1056.   |       D      | Delete text from the cursor to the end of the line   |
  1057.   | count E      | Move end of Word                                     |
  1058.   | count F key  | Move leftward to a given character                   |
  1059.   | count G      | Move to line #"count" (default is the bottom line)   |
  1060.   | count H      | Move to home row (the line at the top of the screen) |
  1061.   | count I inp  | Insert at the front of the line (after indents)      |
  1062.   | count J      | Join lines, to form one big line                     |
  1063.   |       K      | Run keywordprg on the word at the cursor             |
  1064.   | count L      | Move to last row (i.e., line at bottom of window)    |
  1065.   |       M      | Move to middle row                                   |
  1066.   |       N      | Repeat previous search, but in the opposite direction|
  1067.   | count O inp  | Open up a new line above the current line            |
  1068.   |       P      | Paste text before the cursor                         |
  1069.   |       Q      | Quit to EX mode                                      |
  1070.   |       R inp  | Overtype                                             |
  1071.   | count S inp  | Change lines, like "count" cc                        |
  1072.   | count T key  | Move leftward *almost* to a given character          |
  1073.   |       U      | Undo all recent changes to the current line          |
  1074.   |       V      | Start marking lines for c d y < > or !               |
  1075.   | count W      | Move forward "count" Words                           |
  1076.   | count X      | Delete the character(s) to the left of the cursor    |
  1077.   | count Y      | Yank text line(s) (copy them into a cut buffer)      |
  1078.   |       Z Z    | Save the file & exit                                 |
  1079.   |       [ [    | Move back 1 section                                  |
  1080.   |       [ key  | Start recording keystrokes into a cut-buffer         |
  1081.   |       \      | (undefined)                                          |
  1082.   |       ] ]    | Move forward 1 section                               |
  1083.   |       ] key  | Stop recording keystrokes into a cut-buffer          |
  1084.   |       ^      | Move to the front of the current line (after indent) |
  1085.   | count _      | (the underscore character) Move to the current line  |
  1086.   |       ` key  | Move to a marked character                           |
  1087.   | count a inp  | Insert text after the cursor                         |
  1088.   | count b      | Move back "count" words                              |
  1089.   |       c mv   | Change text                                          |
  1090.   |       d mv   | Delete text                                          |
  1091.   | count e      | Move forward to the end of the current word          |
  1092.   | count f key  | Move rightward to a given character                  |
  1093.   |       g      | (undefined)                                          |
  1094.   | count h      | Move left                                            |
  1095.   | count i inp  | Insert text at the cursor                            |
  1096.   | count j      | Move down                                            |
  1097.   | count k      | Move up                                              |
  1098.   | count l      | Move right                                           |
  1099.   |       m key  | Mark a line or character                             |
  1100.   |       n      | Repeat the previous search                           |
  1101.   | count o inp  | Open a new line below the current line               |
  1102.   |       p      | Paste text after the cursor                          |
  1103.   |       q      | (undefined)                                          |
  1104.   | count r key  | Replace "count" chars by a given character           |
  1105.   | count s inp  | Replace characters, like "count" cl                  |
  1106.   | count t key  | Move rightward *almost* to a given character         |
  1107.   | count u      | Undo the previous edit command                       |
  1108.   |       v      | Start marking characters for c d y < > or !          |
  1109.   | count w      | Move forward "count" words                           |
  1110.   | count x      | Delete the character that the cursor's on            |
  1111.   |       y mv   | Yank text (copy it into a cut buffer)                |
  1112.   |       z key  | Scroll current line to window's +top -bottom .middle |
  1113.   | count {      | Move back "count" paragraphs                         |
  1114.   | count |      | Move to column "count" (defaulting to column 1)      |
  1115.   | count }      | Move forward "count" paragraphs                      |
  1116.   | count ~      | Switch a character between uppercase & lowercase     |
  1117.   |       DEL    | (undefined)                                          |
  1118.   ^--------------^------------------------------------------------------^
  1119.  
  1120.  
  1121. ΓòÉΓòÉΓòÉ 1.3. Elvis 2.1 Input Mode ΓòÉΓòÉΓòÉ
  1122.  
  1123.  
  1124.  
  1125. 3. INPUT MODE 
  1126.  
  1127.  You can't type text into your file directly from visual command mode. Instead, 
  1128. you must first give a command which will put you into input mode. The commands 
  1129. to do this are A, C, I, O, R, S, a, i, o, and s. 
  1130.  
  1131. The S, s, C, and c commands temporarily place a $ at the end of the text that 
  1132. they are going to change. 
  1133.  
  1134. In input mode, all keystrokes are inserted into the text at the cursor's 
  1135. position, except for the following: 
  1136.  
  1137. .-----.-----------------------------------------------------.
  1138. | KEY | FUNCTION                                            |
  1139. |-----|-----------------------------------------------------|
  1140. | ^@  | (Nul) Insert a copy of last input text, then exit   |
  1141. | ^A  | Insert a copy of the last input text                |
  1142. | ^D  | Delete one indent character                         |
  1143. | ^H  | (Backspace) Erase the character before the cursor   |
  1144. | ^I  | (Tab) Depends on the inputtab option                |
  1145. | ^K  | Compose the next two characters as a digraph        |
  1146. | ^M  | (Enter) Insert a newline (^J, linefeed)             |
  1147. | ^O  | Read & run a single vi command, then resume input   |
  1148. | ^P  | Insert the contents of the cut buffer               |
  1149. | ^R  | Redraw the window, like ^L                          |
  1150. | ^T  | Insert an indent character                          |
  1151. | ^U  | Backspace to the beginning of the line              |
  1152. | ^V  | Insert the following keystroke, even if special     |
  1153. | ^W  | Backspace to the beginning of the current word      |
  1154. | ^X  | Use the next two keystrokes as hex digits of 1 byte |
  1155. | ^[  | (ESCape) Exit from input mode, back to command mode |
  1156. ^-----^-----------------------------------------------------^
  1157. Also, on some systems, ^S may stop output, ^Q may restart output, and ^C may 
  1158. interrupt execution. 
  1159.  
  1160. The R visual command puts you in overtype mode, which is a slightly different 
  1161. form of input mode. In overtype mode, each time you insert a character, one of 
  1162. the old characters is deleted from the file. 
  1163.  
  1164. 3.1 Arrow keys in Input Mode 
  1165.  
  1166.  The arrow keys can be used to move the cursor in input mode. (This is an 
  1167. extension; the real Vi doesn't support arrow keys in input mode.) The PgUp, 
  1168. PgDn, Home, and End keys work in input mode, too. The Delete key deletes a 
  1169. single character in input mode. The Insert key toggles between input mode and 
  1170. replace mode. 
  1171.  
  1172. 3.2 Digraphs 
  1173.  
  1174.  Elvis supports digraphs as a way to enter non-ASCII characters. A digraph is a 
  1175. character which is composed of two other characters. For example, an apostrophe 
  1176. and the letter i could be defined as a digraph which is to be stored and 
  1177. displayed as an accented i. 
  1178.  
  1179. There is no single standard for extended ASCII character sets, so elvis uses a 
  1180. configurable digraph table. You can view or edit the digraph table via the 
  1181. :digraph! ex command. 
  1182.  
  1183. When inputting text, there are two ways you can type in a digraph. The first 
  1184. way is to type the first character, then hit backspace, and then type the 
  1185. second character. Elvis will then substitute the non-ASCII character in their 
  1186. place. Digraphs entered this way will not be recognized unless you've turned on 
  1187. the digraph option. 
  1188.  
  1189. The other way is to type ^K followed by the two characters, without a 
  1190. backspace.  This method works regardless of the value of the digraph option. 
  1191.  
  1192. 3.2.1 Latin-1 digraphs 
  1193.  
  1194.  The most common standard for non-ASCII symbol sets is called Latin-1 (or ISO 
  1195. 8859/1, or ECMA-94 -- these are all the same). This symbol set is used by 
  1196. X-windows and graphical Windows95 programs, but not MS-DOS. 
  1197.  
  1198. Elvis is distributed with a file named lib/elvis.lat which contains the 
  1199. :digraph commands necessary to set up the digraph table appropriately for 
  1200. Latin-1. Most of these digraphs are fairly straight-forward. For example, to 
  1201. generate an accented "i", type ^K, i, and an apostrophe character. You can list 
  1202. all of the digraphs via the command ":dig!" 
  1203.  
  1204. The default lib/elvis.ini file reads the lib/elvis.lat file automatically. This 
  1205. is very handy if your system really does use Latin-1, but if it doesn't then 
  1206. you'll probably want to disable the automatic loading. You can disable it by 
  1207. editing the lib/elvis.ini file, searching for the "source! 
  1208. (elvispath("elvis.lat"))" line, and inserting a double-quote character at the 
  1209. start of that line. 
  1210.  
  1211. 3.2.2 PC-8 digraphs 
  1212.  
  1213.  MS-DOS doesn't use Latin-1, and neither do OS/2 or Win32 console applications, 
  1214. such as elvis. So for Microsoft operating systems, elvis loads its digraph 
  1215. table via a file named lib/elvis.pc8. This sets up the digraph table 
  1216. appropriately for the 437 code page, which is Microsoft's default. If you use a 
  1217. different code page, you may wish to edit lib/elvis.pc8. 
  1218.  
  1219. 3.3 Abbreviations 
  1220.  
  1221.  Elvis can expand abbreviations for you. You define an abbreviation with the 
  1222. :abbr command, and then whenever you type in the abbreviated form while in 
  1223. input mode, Elvis will immediately replace it with the long form. COBOL 
  1224. programmers should find this useful. :-) 
  1225.  
  1226. Elvis doesn't perform the substitution until you type a non-alphanumeric 
  1227. character to mark the end of the word. If you type a control-V before that 
  1228. non-alphanumeric character, then Elvis will not perform the substitution. 
  1229.  
  1230. Elvis also requires the abbreviated text to either appear at the start of a 
  1231. line, or immediately after a non-alphanumeric character. This prevents elvis 
  1232. from trying to treat the ends of words as abbreviations. This is necessary so 
  1233. that if you set up an abbreviation which maps "ed" to "editor", elvis won't 
  1234. mangle "confused" into "confuseditor". 
  1235.  
  1236. Abbreviations are allowed to contain punctuation characters. For example, TeX 
  1237. users might find it useful to map "\b" to "\begin". 
  1238.  
  1239. 3.4 Auto-Indent 
  1240.  
  1241. With the autoindent option turned on, Elvis will automatically insert leading 
  1242. whitespace at the beginning of each new line that you type in. The leading 
  1243. whitespace is copied from the preceding line. 
  1244.  
  1245. To add more leading whitespace, type control-T. To remove some whitespace, type 
  1246. control-D. 
  1247.  
  1248. If you ":set noautotab", then the whitespace generated by control-T will always 
  1249. consist of spaces -- never tabs. Some people seem to prefer this. 
  1250.  
  1251. Elvis' autoindent mode isn't 100% compatible with vi's. In Elvis, 0^D and ^^D 
  1252. don't work, ^U can wipe out all indentation, and sometimes Elvis will use a 
  1253. different amount of indentation than vi would. 
  1254.  
  1255.  
  1256. ΓòÉΓòÉΓòÉ 1.4. Elvis 2.1 Ex Mode ΓòÉΓòÉΓòÉ
  1257.  
  1258.  
  1259.  
  1260. 4. EX COMMAND MODE 
  1261.  
  1262.  Ex is an editing mode in which elvis acts like a line editor. This means that 
  1263. you type in a command line, and when the line is complete elvis executes it on 
  1264. the current text buffer. I.e., in ex each line (or group of lines) is a 
  1265. command, as opposed to vi where each character (or group of characters) is a 
  1266. command. 
  1267.  
  1268. Typically, ex commands are used to do perform complex actions such as global 
  1269. search & replace, or actions which require an argument such as writing the edit 
  1270. buffer out to a different file. 
  1271.  
  1272. Ex is also used as the configuration language for elvis; configuration scripts 
  1273. such as elvis.ini, .exrc (or elvis.rc), and elvis.arf contain a series of ex 
  1274. commands. 
  1275.  
  1276. You can switch freely between vi and ex. If you're in vi mode, you can enter a 
  1277. single ex command line via the visual : command, or more permanently switch via 
  1278. the visual Q command. If you're in ex mode, you can switch to vi mode via ex's 
  1279. :vi command. 
  1280.  
  1281. Normally elvis will start in vi mode, but you can force it to start in ex mode 
  1282. by supplying a -e command line flag. On UNIX systems, you can link elvis to a 
  1283. name which ends with "x" to achieve the same effect. 
  1284.  
  1285. The remainder of this section discusses how to enter lines, the general syntax 
  1286. of an ex command line, and the specific commands which elvis supports. 
  1287.  
  1288. 4.1 Entering lines 
  1289.  
  1290. In elvis, when you're typing in an ex command line you're really inputting text 
  1291. into a buffer named "Elvis ex history". All of the usual input mode commands 
  1292. are available, including Backspace to erase the previous character, Control-W 
  1293. to erase the previous word, and so on. 
  1294.  
  1295. Any previously entered lines will still be in the "Elvis ex history" buffer, 
  1296. and you can use the arrow keys to move back and edit earlier commands. You can 
  1297. even use the Control-O input-mode command with the ?regexp visual command, to 
  1298. search for an earlier command line. 
  1299.  
  1300. When you hit the Enter key on a line in the "Elvis ex history" buffer, elvis 
  1301. sends that line to the ex command parser, which is described in the next 
  1302. section. 
  1303.  
  1304. 4.1.1 An example 
  1305.  
  1306.  Suppose you enter the command... 
  1307.  
  1308.         :e ~/proj1/src/header.h
  1309. ...and then realize that you really wanted "header2.h" instead of "header.h". 
  1310. You simplest way to get "header2.h" is to... 
  1311.  
  1312.    1. Hit the : key to start a new ex command line. 
  1313.    2. Hit the Up arrow key, or ^O k to move back to the   preceding command 
  1314.       line (which was ":e ~/proj1/src/header.h").   ^O k works because ^O reads 
  1315.       and executes one vi   command, and the k vi command moves the cursor back 
  1316.       one line.   The Up arrow key works because it is mapped to "visual k", 
  1317.       which does exactly the same thing as ^O k. 
  1318.    3. Hit the Left arrow key twice, or ^O 2 h, to move   the cursor back to the 
  1319.       '.' character in "header.h". 
  1320.    4. Hit 2 to insert a '2' before the '.' character.  At this point,   the 
  1321.       line should look like ":e ~/proj1/src/header2.h". 
  1322.    5. Hit Enter to submit the revised command line. 
  1323.  
  1324.  Or suppose you really wanted "footer2.h" instead of "header2.h". This is a 
  1325.  little trickier because you want to delete characters in the middle of the 
  1326.  command line, before inserting the correct text. The simplest way to do this 
  1327.  is move the cursor to a point just after the last character that you want to 
  1328.  delete, and then backspace over them. The steps are: 
  1329.  
  1330.    1. Hit the : key to start a new ex command line. 
  1331.    2. Hit the Up arrow key or ^O k repeatedly to move   back to the ":e 
  1332.       ~/proj1/src/header2.h"command line. 
  1333.    3. Hit the Left arrow key five times, or ^O 5 h, to move   the cursor back 
  1334.       to the last 'e' character in "header2.h". 
  1335.    4. Hit the Backspace key four times to delete the word "head".   It will 
  1336.       still show on the screen, but elvis will know that it has been   deleted. 
  1337.       This is the same sort of behavior that elvis (and vi) exhibits   when you 
  1338.       backspace over newly entered text in input mode. 
  1339.    5. Type f o o t to insert "foot" where "head" used to be.  At this   point, 
  1340.       the line should look like ":e ~/proj1/src/footer2.h". 
  1341.    6. Hit Enter to submit the revised command line. 
  1342.  
  1343.  
  1344.  4.1.2 The TAB key 
  1345.  
  1346.  The Tab key has a special function when you're inputting text into the "Elvis 
  1347.  ex history" buffer. It is used for name completion. (Exception: Under MS-DOS, 
  1348.  this feature is disabled in order to reduce the size of the program, so it 
  1349.  will fit in the lower 640K.) 
  1350.  
  1351.  Name completion works like this: The preceding word is assumed to be a partial 
  1352.  name for an ex command, an option, a tag, or a file. The type of name is 
  1353.  determined by the context in which it appears -- commands appear at the start 
  1354.  of an ex command line, and the others can only occur after certain, specific 
  1355.  command names. Elvis searches for all matches of the appropriate type. 
  1356.  
  1357.  If there are multiple matches, then elvis fills in as many characters of the 
  1358.  name as possible, and then stops; or, if no additional characters are implied 
  1359.  by the matching names, then elvis lists all matching names and redisplays the 
  1360.  command line. If there is a single match, then elvis completes the name and 
  1361.  appends a tab character or some other appropriate character. If there are no 
  1362.  matches, then elvis simply inserts a tab character. 
  1363.  
  1364.  Also, if while entering a :set command you hit the Tab key immediately after 
  1365.  "option=" then elvis will insert the current value of the option. You can then 
  1366.  edit that value before submitting the command line. 
  1367.  
  1368.  I tried to make elvis smart enough that the Tab key will only attempt 
  1369.  file/command/option completion in contexts where it makes sense to do so, but 
  1370.  that code might not be 100% correct. You can bypass the completion by typing a 
  1371.  Control-V before the Tab key. You can also disable name completion altogether 
  1372.  by setting the "Elvis ex history" buffer's inputtab option to "tab", via the 
  1373.  following command: 
  1374.  
  1375.           :(Elvis ex history)set inputtab=tab
  1376.  
  1377.  By default, elvis ignores binary files when performing filename completion. 
  1378.  The completebinary option can be used to make elvis include binary files. 
  1379.  That's a global option (unlike inputtab which is associated with a specific 
  1380.  buffer), so you don't need to specify the buffer name; a simple :set 
  1381.  completebinary will set it. 
  1382.  
  1383.  4.2 Syntax and Addressing 
  1384.  
  1385.  In general, ex command lines can begin with an optional window id. This may be 
  1386.  followed by an optional buffer id, and then 0, 1, or 2 line addresses, 
  1387.  followed by a command name, and perhaps some arguments after that (depending 
  1388.  on the command name). 
  1389.  
  1390.  A window ID is typed in as a decimal number followed by a colon character. If 
  1391.  you don't supply a window ID (and you almost never will) then it defaults to 
  1392.  the window where you typed in the command line. The :buffer command lists the 
  1393.  buffers, and shows which one is being edited in which window. Also, the 
  1394.  windowid option indicates the ID of the current window. 
  1395.  
  1396.  A buffer ID is given by typing an opening parenthesis, the name of the buffer, 
  1397.  and a closing parenthesis. For user buffers, the name of the buffer is usually 
  1398.  identical to the name of the file that it corresponds to. For example, a file 
  1399.  named ~/.Xdefaults would be loaded into a buffer which could be addressed as 
  1400.  (~/.Xdefaults). Elvis also assigns numbers to user buffers, which may be more 
  1401.  convenient to type since numbers are generally shorter than names. If 
  1402.  ~/.Xdefaults is the first file you've edited since starting elvis, then its 
  1403.  buffer could be addressed as (1). The :buffer command shows the number for 
  1404.  each user buffer. 
  1405.  
  1406.  Elvis also has several internal buffers, all of which have names that start 
  1407.  with "Elvis ", such as (Elvis cut buffer x) and (Elvis error list). The 
  1408.  :buffer! command (with a ! suffix) will list them all. For the sake of 
  1409.  brevity, elvis allows you to refer to cut buffers as ("x). Similarly, the 
  1410.  other internal buffers can be referred to via a " character and the initial 
  1411.  letter in each word of the full name, such as ("Eel) for (Elvis error list). 
  1412.  
  1413.  Commands which don't access the text, such as ":quit", don't allow any line 
  1414.  addresses. Other commands, such as ":mark", only allow a single line address. 
  1415.  Most commands, though, allow two line addresses; the command is applied to all 
  1416.  lines between the two specified lines, inclusively. The tables below indicate 
  1417.  how many line addresses each command allows. 
  1418.  
  1419.  Line addresses are always optional. The first line address of most commands 
  1420.  usually defaults to the current line. The second line address usually defaults 
  1421.  to be the same as the first line address. Exceptions are :write, :lpr, 
  1422.  :global, and :vglobal, which act on all lines of the file by  default,  and 
  1423.  :!, which acts on no lines by default. 
  1424.  
  1425.  If you use the visual V command to mark a range of lines, and then use the 
  1426.  visual : command to execute a single ex command, then the default range 
  1427.  affected by the ex command will be the visibly marked text. 
  1428.  
  1429.  Line addresses consist of an absolute part and a relative part. The absolute 
  1430.  part of a line specifier may be either an explicit line number, a mark, a dot 
  1431.  to denote the current line, a dollar sign to denote the last line of the file, 
  1432.  or a forward or backward search.  An explicit line number is  simply a decimal 
  1433.  number, expressed as a string of digits.  A mark is typed in as an apostrophe 
  1434.  followed by a letter. Marks must be set before they can be used. You can set a 
  1435.  mark in visual command mode by typing "m" and a letter, or you can set it in 
  1436.  ex command mode via the "mark" command.  A forward search is typed in as a 
  1437.  regular expression surrounded by slash characters; searching begins at the 
  1438.  default line. A backward search is typed in as a  regular  expression 
  1439.  surrounded by question marks; searching begins at the line before the default 
  1440.  line. 
  1441.  
  1442.  If you omit the absolute part, then the default line is used. 
  1443.  
  1444.  The relative part of a line specifier is typed as a + or - character followed 
  1445.  by a decimal number. The number is added to or subtracted from the absolute 
  1446.  part of the line specifier to produce the final line number. 
  1447.  
  1448.  As a special case, the % character may be used to specify all lines of the 
  1449.  file. It is roughly equivalent to saying 1,$. This can be a handy shortcut. 
  1450.  
  1451.  Here are some addressing examples, using the :p command: 
  1452.  
  1453.      COMMAND      | ACTION
  1454.      -------------|-------------------------------------------
  1455.      :p           | print the current line
  1456.      :37p         | print line 37
  1457.      :'gp         | print the line which contains mark g
  1458.      :/foo/p      | print the next line that contains "foo"
  1459.      :$p          | print the last line of the buffer
  1460.      :20,30p      | print lines 20 through 30
  1461.      :1,$p        | print all lines of the buffer
  1462.      :%p          | print all lines of the buffer
  1463.      :(zot)%p     | print all lines of the "zot" buffer
  1464.      :/foo/-2,+4p | print 5 lines around the next "foo"
  1465.  
  1466.  The optional addresses are followed by the command name. Command names may be 
  1467.  abbreviated. In the sections that follow, the command's full name is given 
  1468.  with the optional part enclosed in square brackets. 
  1469.  
  1470.  Some commands allow a '!' character to appear immediately after the command 
  1471.  name. The significance of the '!' varies from one command to another, but 
  1472.  typically it forces the command to do something dangerous that it would 
  1473.  ordinarily refuse to do. For example, :w file refuses to overwrite an existing 
  1474.  file, but :w! file will do it. 
  1475.  
  1476.  Many commands allow (or even require) additional arguments. The descriptions 
  1477.  below list which arguments each command accepts with optional commands denoted 
  1478.  by square brackets. The most common argument types are: 
  1479.  
  1480.  /regexp/ 
  1481.            This is a regular expression. You can use any punctuation character 
  1482.            to delimit it, but the '/' character is the most commonly used. 
  1483.  /regexp/newtext/ 
  1484.            This is a regular expression followed by replacement text. 
  1485.  count 
  1486.            This is a number - a string of digits. Generally, it is used as the 
  1487.            repeat count for certain commands. 
  1488.  cutbuf 
  1489.            This is the name of a cut buffer - a single letter. Elvis also 
  1490.            allows (but does not require) a quote character before the letter. 
  1491.  excmds 
  1492.            This is another ex command, or list of ex commands. Traditionally, 
  1493.            the whole list of commands had to appear on the same line, delimited 
  1494.            by '|' characters. Elvis has the added versatility of allowing a '{' 
  1495.            character on the first line, each command on a separate following 
  1496.            line, and then '}' on a line by itself to mark the end of the ex 
  1497.            command list. 
  1498.  lhs 
  1499.            This is string of characters. If whitespace characters are to be 
  1500.            included in it, then they must be quoted by embedding a ^V character 
  1501.            before them. 
  1502.  line 
  1503.            This is a line address, as described earlier. 
  1504.  mark 
  1505.            This is the name of a mark - a single lowercase letter. Elvis allows 
  1506.            (but does not require) an apostrophe before the letter. 
  1507.  rhs 
  1508.            This is a string of characters. If it begins with a whitespace 
  1509.            character, then that character must be quoted by embedding a ^V 
  1510.            character in the command line before it. Other whitespace characters 
  1511.            in the string do not need to be quoted. 
  1512.  expr 
  1513.            This is an arithmetic expression using the normal syntax. 
  1514.  shellcmd 
  1515.            This is a command line which is passed to the system's command 
  1516.            interpreter. Within the command line, the following character 
  1517.            substitutions take place, unless preceded by a backslash: 
  1518.  
  1519.                               .-----------.----------------------------.
  1520.                               | CHARACTER | REPLACED BY                |
  1521.                               |-----------|----------------------------|
  1522.                               |     %     | Name of current file       |
  1523.                               |     #     | Name of alternate file     |
  1524.                               |     #n    | Name of file whose bufid=n |
  1525.                               |     !     | Previous command line      |
  1526.                               |     \@    | Word at cursor location    |
  1527.                               ^-----------^----------------------------^
  1528.            Note that the \@ substitution requires a backslash. This quirk 
  1529.            exists for the sake of backward compatibility - the real vi doesn't 
  1530.            perform any substitutions for just plain @. 
  1531.  file or files 
  1532.            This is one or more file name, or a "wildcard" pattern which matches 
  1533.            the names of zero or more files.  File names are subjected to three 
  1534.            levels of processing.  First, leading ~ characters and certain other 
  1535.            characters are replaced with text, as follows: 
  1536.  
  1537.                               .---------.------------------------------------------------.
  1538.                               | SYMBOL  | REPLACED BY                                    |
  1539.                               |---------|------------------------------------------------|
  1540.                               | ~user   | (Unix only) Replaced by home directory of user |
  1541.                               | ~+      | Replaced by current working directory          |
  1542.                               | ~-      | Replaced by previous directory (previousdir)   |
  1543.                               | ~       | Replaced by home directory (home)              |
  1544.                               | %       | Replaced by the name of the current file       |
  1545.                               | #       | Replaced by the name of the alternate file     |
  1546.                               | #n      | Replaced by the filename of buffer with bufid=n|
  1547.                               | (space) | Delimits one file name from another            |
  1548.                               ^---------^------------------------------------------------^
  1549.            The second stage of processing evaluates each name using the simpler 
  1550.            expression syntax. This basically means that expressions of the form 
  1551.            $NAME will be replaced with the value of the environment variable 
  1552.            named NAME. Also, you can use parentheses around option names or 
  1553.            more complex expressions. For example, if the user option f contains 
  1554.            the name of a file, then you could say ":e (f)" to edit that file. 
  1555.  
  1556.            In either of the first two stages, backslashes may be used to 
  1557.            prevent the special symbols from having their usual meaning; they'll 
  1558.            be treated as normal text instead. In particular, a backslash-space 
  1559.            sequence can be used to give a filename which includes spaces; e.g., 
  1560.            to edit "C:\Program Files\foo" you would type ":e C:\Program\ 
  1561.            Files\foo". Note that backslashes which are followed by a normal 
  1562.            character are simply retained as normal characters, so you rarely 
  1563.            need to type a double-backslash when your file name needs only a 
  1564.            single backslash. 
  1565.  
  1566.            The third stage of processing checks for "wildcard" characters in 
  1567.            the name, and if there are any then the whole name is replaced by 
  1568.            the name of each matching file.  The exact list of supported 
  1569.            wildcards will vary from one operating system to another, but the 
  1570.            following are typical: 
  1571.  
  1572.                               .--------.----------------------------------------------.
  1573.                               | SYMBOL | MATCHES                                      |
  1574.                               |--------|----------------------------------------------|
  1575.                               | *      | Any string of characters, of any length      |
  1576.                               | ?      | Any single character                         |
  1577.                               | [a-z]  | (Unix only) Any single character from A to Z |
  1578.                               ^--------^----------------------------------------------^
  1579.            In most operating systems, wildcards are only recognized when they 
  1580.            occur in the last file name part of a longer pathname.  In other 
  1581.            words, you can use wildcards for file names, but not in directory 
  1582.            names leading up to file names. 
  1583.  
  1584.            Traditionally, vi has used the Unix shell to expand wildcards. 
  1585.            However, this interferes with the use of spaces in file names, isn't 
  1586.            easily portable to non-Unix operating systems, and is a potential 
  1587.            security hole. So elvis performs all wildcard expansion itself.  The 
  1588.            only disadvantage of this is that you loose other shell notations 
  1589.            such as `command` and {alt1,alt2}. 
  1590.  
  1591.  Most commands can be followed by a '|' character and another ex command. 
  1592.  Others can't.  In particular, any command which takes a excmd or shellcmd 
  1593.  argument doesn't treat '|' as a command delimiter. 
  1594.  
  1595.  If a command does treat '|' as a delimiter, and you want '|' to be treated as 
  1596.  part of a command argument, then you'll need to quote the '|' character by 
  1597.  preceding it with a backslash or ^V, depending on the command. (Sadly, 
  1598.  different commands require different quote characters.) 
  1599.  
  1600.  4.3 Ex Commands, Grouped by Function 
  1601.  
  1602.      4.3.1 The help command itself 
  1603.      4.3.2 Editing commands 
  1604.      4.3.3 Global edit commands 
  1605.      4.3.4 Displaying text 
  1606.      4.3.5 Tags 
  1607.      4.3.6 File I/O commands 
  1608.      4.3.7 The args list, and selecting a file to edit 
  1609.      4.3.8 Quitting 
  1610.      4.3.9 Scripts and macros 
  1611.      4.3.10 Working with a compiler 
  1612.      4.3.11 Built-in calculator 
  1613.      4.3.12 Buffer commands 
  1614.      4.3.13 Window commands 
  1615.      4.3.14 Configuration 
  1616.      4.3.15 Miscellaneous 
  1617.  
  1618.  
  1619.  4.3.1 The help command itself 
  1620.  
  1621.   .-------.-------------------.-----------------------------------.
  1622.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1623.   |-------|-------------------|-----------------------------------|
  1624.   |       | h[elp]            | topic                             |
  1625.   ^-------^-------------------^-----------------------------------^
  1626.   The :help command loads and displays a help file for a given topic. There are 
  1627.  several help files, covering a wide variety of topics. 
  1628.  
  1629.  Elvis looks at the topic you supply, and tries to determine whether it is an 
  1630.  ex command name, vi keystroke, option name, or something else. Based on this, 
  1631.  it generates a hypertext link to the topic in the appropriate help file, and 
  1632.  shows the topic in a separate window. Elvis uses the following rules to 
  1633.  convert your requested topic into a hypertext reference: 
  1634.  
  1635.           .---------------.-------------------------------------------.
  1636.           | COMMAND       | ELVIS' INTERPRETATION                     |
  1637.           |---------------|-------------------------------------------|
  1638.           | :help         | With no topic, elvis loads the table of   |
  1639.           |               |   contents. This has hypertext links that |
  1640.           |               |   can lead you to any other topic.        |
  1641.           | :help ex      | Elvis loads the chapter describing ex     |
  1642.           |               |   commands.                               |
  1643.           | :help vi      | Elvis loads the chapter describing vi     |
  1644.           |               |   commands.                               |
  1645.           | :help set XXX | If XXX is an option name, elvis will show |
  1646.           |               |   the description of that option; else it |
  1647.           |               |   will list groups of all options.        |
  1648.           | :help :XXX    | If XXX is an ex command name, elvis will  |
  1649.           |               |   show its description; else elvis will   |
  1650.           |               |   list groups of all ex commands.         |
  1651.           | :help XXX     | If XXX appears to be a keystroke then     |
  1652.           |               |   elvis will assume it is meant to be a   |
  1653.           |               |   vi command and will show the command's  |
  1654.           |               |   description.  Else if it is an option   |
  1655.           |               |   name elvis will show that. Else if it   |
  1656.           |               |   is an ex command, elvis will show that. |
  1657.           |               |   Else elvis will show this description   |
  1658.           |               |   of the :help command itself.            |
  1659.           ^---------------^-------------------------------------------^
  1660.  
  1661.  Although this chart only mentions sections on ex commands, vi commands, and 
  1662.  options, there are many others which are only accessible via the table of 
  1663.  contents shown by ":help" with no arguments. 
  1664.  
  1665.  All of these help files are HTML documents. Elvis' standard HTML editing 
  1666.  facilities are available while you're viewing the help text. Some of the 
  1667.  highlights of this are: 
  1668.  
  1669.      To close this help window, type ZQ.  Actually, this works     for all 
  1670.       windows.  (You must hold the Shift key     as you type ZQ, because 
  1671.       lowercase zq does     something else entirely: nothing!) 
  1672.      Any underlined text is a hypertext reference.  This means that you 
  1673.       can move the cursor onto it, and hit the Enter key,     and the cursor 
  1674.       will move to a topic describing the underlined text. 
  1675.      To return to your original position after following a hypertext 
  1676.       reference, hit ^T (Control-T). 
  1677.      The Tab key moves the cursor forward to the next     hypertext reference. 
  1678.  
  1679.  You can use elvis to print the document via the :lpr command.  This assumes 
  1680.  you have set the printing options correctly. 
  1681.  
  1682.  4.3.2 Editing commands 
  1683.  
  1684.   .-------.-------------------.-----------------------------------.
  1685.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1686.   |-------|-------------------|-----------------------------------|
  1687.   | line  | a[ppend][!]       | [text]                            |
  1688.   | line  | i[nsert][!]       | [text]                            |
  1689.   | range | c[hange][!]       | [count] [text]                    |
  1690.   | range | d[elete]          | [cutbuf] [count]                  |
  1691.   | range | y[ank]            | [cutbuf] [count]                  |
  1692.   | line  | pu[t]             | [cutbuf]                          |
  1693.   | range | co[py]            | line                              |
  1694.   | range | m[ove]            | line                              |
  1695.   | range | t[o]              | line                              |
  1696.   | range | !                 | shellcmd                          |
  1697.   | range | >                 |                                   |
  1698.   | range | <                 |                                   |
  1699.   | range | j[oin][!]         |                                   |
  1700.   |       | u[ndo]            | [count]                           |
  1701.   |       | red[o]            | [count]                           |
  1702.   ^-------^-------------------^-----------------------------------^
  1703.   The :append command inserts text after the current line. If no new text is 
  1704.  supplied on the command line, then elvis will wait for you to type in text; 
  1705.  you can then mark the end of the new text by typing a "." (period) on a line 
  1706.  by itself. In the real vi, adding a '!' suffix temporarily toggles the 
  1707.  autoindent option, but elvis just ignores the '!'. 
  1708.  
  1709.  The :insert command inserts text before the current line. Other than that, it 
  1710.  is identical to the :append command. In the real vi, adding a '!' suffix 
  1711.  temporarily toggles the autoindent option, but elvis just ignores the '!'. 
  1712.  
  1713.  The :change command deletes old text lines (copying them into the anonymous 
  1714.  cut buffer) and then waits for you to enter new text to replace it. You can 
  1715.  then mark the end of the new text by typing a "." (period) on a line by 
  1716.  itself. In the real vi, adding a '!' suffix temporarily toggles the autoindent 
  1717.  option, but elvis just ignores the '!'. 
  1718.  
  1719.  The :delete command copies text into a cut buffer, and then deletes it from 
  1720.  the edit buffer. The :yank command copies text into a cut buffer but leaves 
  1721.  the edit buffer unchanged. 
  1722.  
  1723.  The :put command "pastes" text from a cut buffer back into the edit buffer. 
  1724.  The cut buffer's contents are inserted after the addressed line. If you want 
  1725.  to insert before the first line, you can use address 0 like this: 
  1726.  
  1727.   :0put
  1728.  
  1729.  The :copy and :to commands are identical. They both make a copy of a portion 
  1730.  of an edit buffer, and insert that copy at a specific point. The destination 
  1731.  line can be specified with an optional buffer name and the full address syntax 
  1732.  as described in section 4.2. Consequently, you can use this command to copy 
  1733.  part of one edit buffer into another edit buffer. The following example copies 
  1734.  an 11-line window from the current buffer onto the end of a buffer named 
  1735.  "otherbuf" 
  1736.  
  1737.   :-5,+5t(otherbuf)$
  1738.  
  1739.  The :move command resembles :copy except that :move deletes the original text. 
  1740.  
  1741.  The :! command allows you to send parts of your edit buffer though some 
  1742.  external "filter" program. The output of the program then replaces the 
  1743.  original text. For example, this following will sort lines 1 through 10 using 
  1744.  the "sort" program. 
  1745.  
  1746.   :1,10!sort
  1747.  
  1748.  If you use the :! command without any line addresses, then elvis will simply 
  1749.  execute the program and display its output. This is only guaranteed to work 
  1750.  correctly for non-interactive programs; to execute an interactive program you 
  1751.  should use the :shell command. 
  1752.  
  1753.  The :< and :> commands adjust the indentation on the addressed lines. The :< 
  1754.  command decreases the leading whitespace by the number of spaces indicated in 
  1755.  the shiftwidth option, and :> does the reverse. You can use multiple < or > 
  1756.  characters in a single command to increase the shift amount; for example, :>>> 
  1757.  shifts text by triple the shiftwidth amount. Normally elvis' versions of these 
  1758.  commands will leave blank lines unchanged, but if you append a '!' (as in :>!) 
  1759.  then the command will affect blank lines in addition to other lines. 
  1760.  
  1761.  The :join command joins multiple lines together so they form one long line. 
  1762.  Normally it will intelligently decide how much whitespace it should place 
  1763.  between lines, depending on the sentenceend, sentencegap, and sentencequote 
  1764.  options. When invoked with a '!' suffix (as in :join!), it joins the lines 
  1765.  without doing fancy things to whitespace. 
  1766.  
  1767.  The :undo command undoes recent changes. The number of undoable changes is 
  1768.  controllable on a buffer-by-buffer basis, via the undolevels option. The :redo 
  1769.  command undoes an undo. 
  1770.  
  1771.  4.3.3 Global edit commands 
  1772.  
  1773.   .-------.-------------------.-----------------------------------.
  1774.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1775.   |-------|-------------------|-----------------------------------|
  1776.   | range | g[lobal][!]       | /regexp/ excmds                   |
  1777.   | range | v[global][!]      | /regexp/ excmds                   |
  1778.   | range | s[ubstitute]      | /regexp/text/[g|.n][x][c][p|l|#]  |
  1779.   | range | &                 | [g|.n][p|l|#][x][c]               |
  1780.   | range | ~                 | [g|.n][p|l|#][x][c]               |
  1781.   ^-------^-------------------^-----------------------------------^
  1782.    The :global command searches for lines which contain the /regexp/ and 
  1783.  executes the given excmds for each matching line. The :vglobal command 
  1784.  executes the excmds for each line which does not match the /regexp/. 
  1785.  
  1786.  In script files, you can supply multiple command lines to a single :global or 
  1787.  :vglobal by placing a '{' character on the :global/:vglobal line, following 
  1788.  that with any number of command lines, and then finally a '}' character on a 
  1789.  line by itself to mark the end. This notation doesn't allow nesting; you can't 
  1790.  use {...} inside a larger {...} command list. (Hopefully this limitation will 
  1791.  be lifted soon.) 
  1792.  
  1793.  The :substitute command searches for the /regexp/ in each line, and replaces 
  1794.  the matching text with newtext. The interpretation of newtext is described in 
  1795.  section 5.2 
  1796.  
  1797.  The newtext can be followed by a g flag to replace all instances in each line. 
  1798.  Without the g flag, only the first match within each line is changed (unless 
  1799.  the gdefault option is set). To replace some other instance in each line, give 
  1800.  a decimal point followed by the instance number, such as .3 to replace the 
  1801.  third instance of matching text in each line. 
  1802.  
  1803.  You can also supply a p flag. This causes each affected line to be printed 
  1804.  (like :p), after all substitutions have been made to that line. Similarly, l 
  1805.  lists it (like :l), and #prints it with a line number (like :nu or :#). 
  1806.  
  1807.  You can also make elvis ask for confirmation before each substitution by 
  1808.  appending a c flag. The :s command will locate the first match and then exit 
  1809.  immediately, but it will leave the window in an unusual input state in which y 
  1810.  performs a substitution and then moves on to the next match, n does not 
  1811.  perform the substitution but still moves to the next match, and Esc cancels 
  1812.  the operation. Most other keys act like y in this mode. 
  1813.  
  1814.  Elvis supports a special x flag. Instead of performing each substitution, 
  1815.  elvis will execute the final replacement text as an ex command line. This is 
  1816.  used in the implementation of modelines, like this: 
  1817.  
  1818.   1,5 s/ex:\(.*\):/\1/x
  1819.   $-4,$ s/ex:\(.*\):/\1/x
  1820.  
  1821.  The :& and :~ commands both repeat the previous :substitute command, 
  1822.  discarding any previous flags. The difference between them is that :& uses the 
  1823.  regular expression from the previous :s command, but :~ uses the most recent 
  1824.  regular expression from any context. 
  1825.  
  1826.  4.3.4 Displaying text 
  1827.  
  1828.   .-------.-------------------.-----------------------------------.
  1829.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1830.   |-------|-------------------|-----------------------------------|
  1831.   | range | p[rint]           | [count]                           |
  1832.   | range | l[ist]            | [count]                           |
  1833.   | range | nu[mber]          | [count]                           |
  1834.   | range | #                 | [count]                           |
  1835.   | line  | z                 | [spec]                            |
  1836.   | range | =                 |                                   |
  1837.   ^-------^-------------------^-----------------------------------^
  1838.   The :print command displays lines from the edit buffer. It displays them the 
  1839.  normal way -- with tabs expanded and so on. 
  1840.  
  1841.  The :list command also displays lines, but it tries to make all non-printing 
  1842.  characters visible, and it marks the end of each line with a '$' character. 
  1843.  
  1844.  The :number and :# commands are identical to each other. They both display 
  1845.  lines the normal way except that each line is preceded by its line number. 
  1846.  
  1847.  The :z command shows a "window" of lines surrounding the current line. The 
  1848.  default size of the "window" is taken from the window option. If a line 
  1849.  address is supplied, then it becomes the current line before this command is 
  1850.  executed. The spec can be one of the following characters; the default is z+. 
  1851.  
  1852.      .------.-----------------------------------------------------.
  1853.      | SPEC | OUTPUT STYLE                                        |
  1854.      |------|-----------------------------------------------------|
  1855.      |  -   | Place the current line at the bottom of the window. |
  1856.      |------|-----------------------------------------------------|
  1857.      |  +   | Place the current line at the top of the window.    |
  1858.      |      | Upon completion of this command, the last line      |
  1859.      |      | output will become the current line.                |
  1860.      |------|-----------------------------------------------------|
  1861.      |  ^   | Jump back 2 windows' worth of lines, and then do    |
  1862.      |      | the equivalent of z+.  Note that z+ is like paging  |
  1863.      |      | forward and z^ is like paging backward.             |
  1864.      |------|-----------------------------------------------------|
  1865.      |  .   | Place the current line in the middle of the window. |
  1866.      |      | Upon completion of this command, the last line      |
  1867.      |      | output will become the current line.                |
  1868.      |------|-----------------------------------------------------|
  1869.      |  =   | Place the current line in the middle of the window, |
  1870.      |      | and surround it with lines containing hyphens.      |
  1871.      ^------^-----------------------------------------------------^
  1872.  
  1873.  The := command displays the line number of the current line, or the addressed 
  1874.  line if given one address. If given a range of addresses, it tells you the 
  1875.  line numbers of the two endpoints and the total number of lines in the range. 
  1876.  
  1877.  4.3.5 Tags 
  1878.  
  1879.   .-------.-------------------.-----------------------------------.
  1880.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1881.   |-------|-------------------|-----------------------------------|
  1882.   |       | ta[g][!]          | [tag]                             |
  1883.   |       | stac[k]           |                                   |
  1884.   |       | po[p][!]          |                                   |
  1885.   |       | br[owse][!]       | restrictions                      |
  1886.   ^-------^-------------------^-----------------------------------^
  1887.   Tags provide a way to associate names with certain places within certain 
  1888.  files. Typically, you will run the ctags program to create a file named "tags" 
  1889.  which describes the location of each function and macro used in the source 
  1890.  code for your project. The tag names are the same as the function names, in 
  1891.  this case. 
  1892.  
  1893.  In HTML mode, elvis uses the tags commands to follow hypertext links, but 
  1894.  we'll generally ignore that in the following discussions. 
  1895.  
  1896.  The :tag command performs tag lookup. It reads the "tags" file to locate the 
  1897.  named tag. It then loads the source file where that tag is defined, and moves 
  1898.  the cursor to the specific point within that buffer where the tag is defined. 
  1899.  Elvis' implementation of :tag also allows you to give extra restrictions and 
  1900.  hints. There is also a :stag command which creates a new window and moves its 
  1901.  cursor to the tag's definition point. 
  1902.  
  1903.  The :browse command extracts selected tags from the tags file, constructs an 
  1904.  HTML document listing those tags (with hypertext links to their definition 
  1905.  points inside your source code) and displays it in the current window. There 
  1906.  is also a :sbrowse command which displays the same list in a new window. If 
  1907.  invoked with no args, they browse all tags in the current file. If invoked 
  1908.  with a '!' suffix, they browse all tags. See chapter 14. Tags for a full 
  1909.  description of restrictions and hints, and browsing. 
  1910.  
  1911.  Before moving the cursor, elvis will save the old cursor position on a stack. 
  1912.  You can use the :stack command to display the contents of that stack. Each 
  1913.  window has an independent stack. 
  1914.  
  1915.  The :pop command pops a cursor position off the stack, restoring the cursor to 
  1916.  its previous position. When you're browsing though source code, you will 
  1917.  typically use :tag to go deeper into the call tree, and :pop to come back out 
  1918.  again. 
  1919.  
  1920.  In HTML mode, these all work the same except that :tag expects to be given an 
  1921.  URL instead of a tag name. URLs don't depend on having a "tags" file, so the 
  1922.  "tags" file is ignored when in HTML mode. Elvis doesn't support any network 
  1923.  protocols, so its URLs can only consist of a file name and/or a #label. The 
  1924.  following example would move the cursor to the start of this section: 
  1925.  
  1926.   :tag elvisopt.html#TAGS
  1927.  
  1928.  
  1929.  4.3.6 File I/O commands 
  1930.  
  1931.   .-------.-------------------.-----------------------------------.
  1932.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1933.   |-------|-------------------|-----------------------------------|
  1934.   | line  | r[ead]            | file | !shellcmd                  |
  1935.   | range | w[rite][!]        | [file | >>file | !shellcmd]       |
  1936.   | range | lp[r][!]          | [file | >>file | !shellcmd]       |
  1937.   ^-------^-------------------^-----------------------------------^
  1938.   The :read command reads a file or external program, and inserts the new text 
  1939.  into the edit buffer after the addressed line. If you don't explicitly give a 
  1940.  line address, then the text will be inserted after the current line. To insert 
  1941.  the file's contents into the top of the buffer ( before line 1), you should 
  1942.  specify line 0. For example, to insert the contents of "foo.txt" before line 
  1943.  1, you would give the command... 
  1944.  
  1945.   :0 read foo.txt
  1946.  
  1947.  The :write command writes either the entire edit buffer (if no address range 
  1948.  is given) or a part of it (if a range is given) out to either a file or an 
  1949.  external filter program. If you don't specify the output file or external 
  1950.  command, then elvis will assume it should write to the file that the buffer 
  1951.  was originally loaded from. 
  1952.  
  1953.  Elvis will normally prevent you from overwriting existing files. (The exact 
  1954.  details of this protection depend on the edited, filename, newfile, readonly, 
  1955.  and writeany options.) If you want to force elvis to overwrite an existing 
  1956.  file, you can append a "!" to the end of the command name, but before the file 
  1957.  name. In order to avoid ambiguity, there must not be any whitespace between 
  1958.  the "write" command name and the "!" character when you want to overwrite an 
  1959.  existing file. Conversely, when writing to an external program there should be 
  1960.  whitespace before the "!" that marks the start of the program's command line. 
  1961.  The ">>file" notation tells elvis to append to "file" instead of overwriting 
  1962.  it. 
  1963.  
  1964.  The :lpr command sends text to the printer. It is similar to :write except 
  1965.  that :lpr formats the buffer contents as defined by the bufdisplay option and 
  1966.  the printing options. If no output file or external program is specified, then 
  1967.  the printer output is sent to the file or external program specified by the 
  1968.  lpout option. 
  1969.  
  1970.  4.3.7 The args list, and selecting a file to edit 
  1971.  
  1972.   .-------.-------------------.-----------------------------------.
  1973.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  1974.   |-------|-------------------|-----------------------------------|
  1975.   |       | ar[gs]            | [file...]                         |
  1976.   |       | n[ext][!]         | [file...]                         |
  1977.   |       | N[ext][!]         |                                   |
  1978.   |       | pre[vious][!]     |                                   |
  1979.   |       | rew[ind][!]       |                                   |
  1980.   |       | la[st]            |                                   |
  1981.   |       | wn[ext][!]        |                                   |
  1982.   |       | f[ile]            | [file]                            |
  1983.   |       | e[dit][!]         | [+line] [file]                    |
  1984.   |       | ex[!]             | [+line] [file]                    |
  1985.   |       | vi[sual][!]       | [+line] [file]                    |
  1986.   |       | o[pen][!]         | [+line] [file]                    |
  1987.   ^-------^-------------------^-----------------------------------^
  1988.   The "args list" is a list of file names. It provides an easy way to edit a 
  1989.  whole series of files, one at a time. Initially, it contains any file names 
  1990.  that you named on the command line when you invoked elvis. 
  1991.  
  1992.  The :args command displays the args list, with the current file name enclosed 
  1993.  in brackets. You can also use :args to replace the args list with a new set of 
  1994.  files; this has no effect on whatever file you're editing at that time, but it 
  1995.  will affect any :next commands that you give later. 
  1996.  
  1997.  The :next command switches to the next file in the args list. This means it 
  1998.  loads the next file from the args list into an edit buffer, and makes that 
  1999.  edit buffer be the current buffer for this window. You can also give a new 
  2000.  args list on the :next command line; this acts like a :args command to set the 
  2001.  args list, followed by an argumentless :next command to load the next (first) 
  2002.  file in that list. 
  2003.  
  2004.  The :Next (with a capital "N") and :previous commands are identical to each 
  2005.  other. They both move backwards through the args list. 
  2006.  
  2007.  The :rewind and :last commands switch to the first and last files in the args 
  2008.  list, respectively. 
  2009.  
  2010.  The :wnext command is like a :write command followed by a :next command. It 
  2011.  saves any changes made to the current file before switching to the next file. 
  2012.  (The autowrite option offers a better alternative.) 
  2013.  
  2014.  The :file command displays information about the current buffer. It can also 
  2015.  be used to change the filename associated with this buffer. 
  2016.  
  2017.  The :edit and :ex commands are identical to each other. They both switch to a 
  2018.  new file, or if no file is named then they reread the current file. This has 
  2019.  no effect on the args list. 
  2020.  
  2021.  The :visual and :open commands switch to a new file if one is named; otherwise 
  2022.  they continue to use the current buffer without reloading it from the original 
  2023.  file. These commands have the side-effect of switching the window mode from ex 
  2024.  mode to either the normal visual mode or the uglier "open" mode, respectively. 
  2025.  "Open" mode allows you to use all of the visual commands, but it only displays 
  2026.  a single line (the line that the cursor is on) at the bottom of the screen. 
  2027.  The sole advantage that "open" mode has over "visual" mode is that "open" mode 
  2028.  doesn't need to know what kind of terminal you're using. 
  2029.  
  2030.  4.3.8 Quitting 
  2031.  
  2032.   .-------.-------------------.-----------------------------------.
  2033.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2034.   |-------|-------------------|-----------------------------------|
  2035.   |       | cl[ose][!]        |                                   |
  2036.   |       | q[uit][!]         |                                   |
  2037.   |       | wq[uit][!]        | [file]                            |
  2038.   |       | x[it][!]          | [file]                            |
  2039.   |       | qa[ll][!]         |                                   |
  2040.   |       | pres[erve]        |                                   |
  2041.   ^-------^-------------------^-----------------------------------^
  2042.   Except for :qall, all of these commands attempt to close the current window 
  2043.  without losing any changes. When the last window is closed, elvis exits. The 
  2044.  differences between these commands concern how modified buffers are handled. 
  2045.  In the discussions below, it is assumed that tempsession is True and the 
  2046.  buffer's retain option is False, which is usually the case. 
  2047.  
  2048.  The :close command is the simplest. If the current window is the only window 
  2049.  and one or more buffers have been modified but not yet saved, then :close will 
  2050.  fail; otherwise the current window will be closed. The visual ^Wq command uses 
  2051.  this command internally. If the window's buffer was modified, then elvis will 
  2052.  just have a modified buffer lying around, which may or may not be visible in 
  2053.  some other window. That's okay. The other quitting commands won't allow you to 
  2054.  lose that buffer accidentally. You can make some other window view that buffer 
  2055.  by giving that buffer's name in parentheses on an ex command line in that 
  2056.  other window. 
  2057.  
  2058.  The :quit command fails if the current buffer has been modified. If you wish 
  2059.  to abandon the changes made to the current buffer, you can add a "!" to the 
  2060.  end of the command name; this has the effect of turning off the buffer's 
  2061.  modified flag. 
  2062.  
  2063.  The :xit command saves the file if it has been modified, and then closes the 
  2064.  window. The visual ZZ command uses this command internally. 
  2065.  
  2066.  The :wquit command saves the file regardless of whether it has been modified, 
  2067.  and then closes the window. 
  2068.  
  2069.  The :qall command tries to close all of the windows at once. It is equivalent 
  2070.  to giving the :quit command in each window. 
  2071.  
  2072.  The :preserve command closes all windows and exits, but it doesn't delete the 
  2073.  session file. You can restart the same edit session later by giving the 
  2074.  command... 
  2075.  
  2076.           elvis -ssessionfile
  2077.  ...where sessionfile is the name of the session file, usually 
  2078.  "/var/tmp/elvis1.ses". You may want to check the value of the session option 
  2079.  first, just to make sure. 
  2080.  
  2081.  4.3.9 Scripts and macros 
  2082.  
  2083.   .-------.-------------------.-----------------------------------.
  2084.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2085.   |-------|-------------------|-----------------------------------|
  2086.   |       | @                 | cutbuf                            |
  2087.   |       | so[urce][!]       | file                              |
  2088.   |       | saf[er][!]        | file                              |
  2089.   |       | al[ias]           | [name [excmds]]                   |
  2090.   |       | unal[ias][!]      | name                              |
  2091.   ^-------^-------------------^-----------------------------------^
  2092.   The :@ command executes the contents of a cut buffer as a series of ex 
  2093.  command lines. 
  2094.  
  2095.  The :source command reads a file, and executes its contents as a series of ex 
  2096.  commands. Normally, elvis would issue an error message if the requested file 
  2097.  didn't exist but when a "!" is appended to the command name, elvis will 
  2098.  silently ignore the command if it doesn't exist. 
  2099.  
  2100.  The :safer command is exactly like :source, except that :safer will 
  2101.  temporarily set the safer option while it is executing the commands. You 
  2102.  should use :safer instead of :source when it is possible that the file to be 
  2103.  executed could contain potentially harmful commands. For example, the default 
  2104.  "elvis.ini" file uses :source to execute the ".exrc" file in your home 
  2105.  directory since it is presumably secure, but :safer is used to execute the 
  2106.  ".exrc" file in the current directory since it could have been created by 
  2107.  anybody. As with :source!, invoking :safer! (with a '!' suffix) prevents elvis 
  2108.  from complaining about nonexistent script files. 
  2109.  
  2110.  The :alias and :unalias commands manipulate the alias list. (See the Tips 
  2111.  section of the manual for a discussion of aliases.) With no arguments, :alias 
  2112.  displays all aliases. When given a name but no commands, :alias displays the 
  2113.  complete definition of the named alias. When given a name and commands, :alias 
  2114.  defines (or redefines) an alias. The :unalias command deletes the alias with a 
  2115.  given name. 
  2116.  
  2117.  4.3.10 Working with a compiler 
  2118.  
  2119.   .-------.-------------------.-----------------------------------.
  2120.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2121.   |-------|-------------------|-----------------------------------|
  2122.   |       | cc[!]             | [args]                            |
  2123.   |       | mak[e][!]         | [args]                            |
  2124.   |       | er[rlist][!]      | [file]                            |
  2125.   ^-------^-------------------^-----------------------------------^
  2126.   If you use elvis to edit source code for programs, then you can have elvis 
  2127.  read the output of your compiler and parse that output for error messages. 
  2128.  When elvis finds an error message, it can move the cursor to the file and line 
  2129.  number where the error was reported. 
  2130.  
  2131.  To parse the compiler output, elvis first breaks the output into lines. Each 
  2132.  line is then broken into words. If a word looks like a number, then it is 
  2133.  assumed to be a line number. If a word looks like the name of an existing 
  2134.  file, then it is assumed to be a file name. Any line which contains both a 
  2135.  line number and a file name is treated as an error report (with the remainder 
  2136.  of the line serving as a description of the error); lines which don't have 
  2137.  both of these are simply ignored. 
  2138.  
  2139.  The :cc and :make commands use the ccprg and makeprg options, respectively, to 
  2140.  run your compiler or "make" utility, and collect the output. Elvis will then 
  2141.  move the cursor to where the first error was detected. (If there were no 
  2142.  errors, elvis will say so and leave the cursor unchanged.) 
  2143.  
  2144.  After that, the :errlist command can be used repeatedly to move to each 
  2145.  successive error. You can also use the :errlist command with a file name 
  2146.  argument to load a new batch of error messages from a file; the cursor is then 
  2147.  moved to the first error in that batch. 
  2148.  
  2149.  4.3.11 Built-in calculator 
  2150.  
  2151.   .-------.-------------------.-----------------------------------.
  2152.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2153.   |-------|-------------------|-----------------------------------|
  2154.   |       | ca[lculate]       | expr                              |
  2155.   |       | ev[al]            | expr                              |
  2156.   ^-------^-------------------^-----------------------------------^
  2157.   Elvis has a built-in calculator which uses a C-like syntax. It is described 
  2158.  in section 12: Arithmetic Expressions. The :if and :let commands also use the 
  2159.  calculator. 
  2160.  
  2161.  The :calculate command evaluates an expression and displays the result. 
  2162.  
  2163.  The :eval command evaluates an expression using the simpler syntax (which 
  2164.  basically means that text outside of parentheses is left alone), and then 
  2165.  executes the result as an ex command line. This provides a way to use 
  2166.  expressions with commands which would not ordinarily use expressions. For 
  2167.  example, the following command line inserts the value the elvispath option 
  2168.  into the current edit buffer. 
  2169.  
  2170.   :eval insert elvispath=(elvispath)
  2171.  
  2172.  Note: There is a hardcoded limit of (normally) 1023 characters for the result 
  2173.  of any expression.  This limit will sometimes impact the use of :eval. For 
  2174.  example, if your $EXINIT environment variable is longer than 1023 characters 
  2175.  then elvis will be unable to interpret it during initialization. 
  2176.  
  2177.  4.3.12 Buffer commands 
  2178.  
  2179.   .-------.-------------------.-----------------------------------.
  2180.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2181.   |-------|-------------------|-----------------------------------|
  2182.   |       | al[l][!]          | excmds                            |
  2183.   |       | b[uffer][!]       | [buffer]                          |
  2184.   |       | (                 | buffer                            |
  2185.   |       | bb[rowse][!]      |                                   |
  2186.   |       | sbb[rowse][!]     |                                   |
  2187.   ^-------^-------------------^-----------------------------------^
  2188.   The :all command applies a given ex command line to each edit buffer in turn. 
  2189.  Normally the command is applied just to the user edit buffers, but if you 
  2190.  append a "!" to the command name, then the ex command line is applied to 
  2191.  internal buffers as well. For example, the following sets the "bufdisplay" 
  2192.  option of all user edit buffers: 
  2193.  
  2194.   :all set bufdisplay=normal
  2195.  
  2196.  In script files, you can supply multiple command lines to a single :all 
  2197.  commands by placing a '{' character on the :all line, following that with any 
  2198.  number of command lines, and then finally a '}' character on a line by itself 
  2199.  to mark the end. This notation doesn't allow nesting; you can't use {...} 
  2200.  inside a larger {...} command list. (Hopefully this limitation will be lifted 
  2201.  soon.) 
  2202.  
  2203.  The :buffer command lists either all user edit buffers, or (when "!" is 
  2204.  appended to the command name) all buffers including internal ones. If the 
  2205.  buffer is being edited in one or more windows, then the window ID is also 
  2206.  displayed. Buffers which have been modified will be marked with an asterisk. 
  2207.  
  2208.  You can also use the :buffer command to make the current window display a 
  2209.  different buffer. 
  2210.  
  2211.  The :(buffer notation causes the current window to display the named buffer, 
  2212.  instead of the current buffer. This isn't really a command; it is part of an 
  2213.  address. Whenever you give an address without specifying a command, elvis 
  2214.  moves the cursor to the addressed line. In this particular case, we're 
  2215.  addressing the most recently changed line of a given buffer, so that's where 
  2216.  the cursor is moved to. For more information, see the discussion of Buffer IDs 
  2217.  earlier in this chapter (in the discussion of addresses). 
  2218.  
  2219.  The :bbrowse and :sbbrowse commands create an HTML document which lists the 
  2220.  names of all user buffers (or, when a '!' is appended to the command name, all 
  2221.  buffers including internal buffers). You can then go to one of the buffers 
  2222.  just by following the hypertext link. The difference between these two 
  2223.  commands is that :bbrowse displays the list in the current window, but 
  2224.  :sbbrowse creates a new window to display it. 
  2225.  
  2226.  4.3.13 Window commands 
  2227.  
  2228.   .-------.-------------------.-----------------------------------.
  2229.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2230.   |-------|-------------------|-----------------------------------|
  2231.   |       | sp[lit]           | [+line] [file | !shellcmd]        |
  2232.   |       | new               |                                   |
  2233.   |       | sne[w]            |                                   |
  2234.   |       | sn[ext]           | [file...]                         |
  2235.   |       | sN[ext]           |                                   |
  2236.   |       | sre[wind]         |                                   |
  2237.   |       | sl[ast]           |                                   |
  2238.   |       | sta[g]            | [tag]                             |
  2239.   |       | sb[rowse]         | restrictions                      |
  2240.   |       | sa[ll]            |                                   |
  2241.   |       | wi[ndow]          | [ +[+] | -[-] | number | buffer]  |
  2242.   |       | di[splay]         | [modename [language]]             |
  2243.   |       | no[rmal]          |                                   |
  2244.   ^-------^-------------------^-----------------------------------^
  2245.   The :split command creates a new window. If you supply a file name, then it 
  2246.  will load that file into an edit buffer and the new window will show that 
  2247.  buffer. If you supply a shell command line preceded by a '!' character, then 
  2248.  it will create an untitled buffer, and read the output of that command line 
  2249.  into the buffer. Otherwise, the new window will show the same buffer as the 
  2250.  current window. 
  2251.  
  2252.  The :new and :snew commands are identical to each other. They both create a 
  2253.  new empty buffer, and then create a new window to show that buffer. 
  2254.  
  2255.   The :snext, :sNext, :srewind, :slast, :stag,  and :sbrowse commands resemble 
  2256.  the :next, :Next, :rewind, :last, :tag, and :browse commands, respectively, 
  2257.  except that these "s" versions create a new window for the newly loaded file, 
  2258.  and leave the current window unchanged. 
  2259.  
  2260.  The :sall command creates a new window for any files named in the args list, 
  2261.  which don't already have a window. (See section 4.3.7: The args list... for a 
  2262.  discussion of the args list.) 
  2263.  
  2264.  The :window command either lists all windows (when invoked with no arguments) 
  2265.  or switches to a given window. You can specify which to switch to by giving 
  2266.  one of the following arguments. 
  2267.  
  2268.       .----------.-----------------------------------------------.
  2269.       | ARGUMENT | MEANING                                       |
  2270.       |----------|-----------------------------------------------|
  2271.       |    +     | Switch to the next window, like ^Wk           |
  2272.       |    ++    | Switch to the next window, wrapping like ^W^W |
  2273.       |    -     | Switch to the previous window, like ^Wj       |
  2274.       |    --    | Switch to the previous window, wrapping       |
  2275.       |  number  | Switch to the window whose windowid=number    |
  2276.       |  buffer  | Switch to the window editing the named buffer |
  2277.       ^----------^-----------------------------------------------^
  2278.  
  2279.  The :display command switches the window to a new display mode, overriding the 
  2280.  value of the bufdisplay option. The display option indicates the current 
  2281.  display mode. If you omit the new modename, then the :display command will 
  2282.  list all supported display modes, with an asterisk next to the current mode. 
  2283.  The "syntax" mode allows you to specify which language's syntax it is supposed 
  2284.  to use; if you don't specify a language, elvis will guess the language from 
  2285.  the file name's extension. 
  2286.  
  2287.  The :normal command is equivalent to ":display normal". It can be abbreviated 
  2288.  to ":no", which is certainly easier to type than ":dis normal". 
  2289.  
  2290.  4.3.14 Configuration 
  2291.  
  2292.   .-------.-------------------.-----------------------------------.
  2293.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2294.   |-------|-------------------|-----------------------------------|
  2295.   |       | ab[breviate][!]   | [lhs rhs]                         |
  2296.   |       | una[bbreviate][!] | lhs                               |
  2297.   |       | map[!]            | [lhs rhs]                         |
  2298.   |       | unm[ap][!]        | lhs                               |
  2299.   |       | bre[ak][!]        | lhs                               |
  2300.   |       | unb[reak][!]      | lhs                               |
  2301.   |       | dig[raph][!]      | [lhs [rhs]]                       |
  2302.   |       | col[or]           | [font color ["on" color]]         |
  2303.   |       | gu[i]             | text                              |
  2304.   |       | se[t][!]          | [option=value | option? | all]    |
  2305.   |       | lo[cal][!]        | [option=value | option ]          |
  2306.   |       | le[t][!]          | option=expr                       |
  2307.   |       | if                | expr                              |
  2308.   |       | th[en]            | excmds                            |
  2309.   |       | el[se]            | excmds                            |
  2310.   |       | try               | excmds                            |
  2311.   |       | wh[ile]           | expr                              |
  2312.   |       | do                | excmds                            |
  2313.   |       | mk[exrc][!]       | [file]                            |
  2314.   ^-------^-------------------^-----------------------------------^
  2315.   The :abbreviate and :unabbreviate commands add and remove entries to the 
  2316.  abbreviation table, respectively. Also, the :abbreviate command can be used 
  2317.  with no arguments to list the current contents of the abbreviation table. For 
  2318.  a discussion of abbreviations, see section 3.3: Abbreviations. Normal 
  2319.  abbreviations are only active while you're typing in a normal text buffer; 
  2320.  adding a '!' suffix to the command name causes the macro to be active while 
  2321.  you're entering ex command lines. 
  2322.  
  2323.  The :map and :unmap commands add and remove entries to the map tables, 
  2324.  respectively. When the :map command is given without any arguments, it lists 
  2325.  the contents of a map table. 
  2326.  
  2327.  There are two map tables. When a "!" is appended to the command name, these 
  2328.  commands use the table that applies to input mode; without the "!" these 
  2329.  commands use the table that applied to visual command mode. 
  2330.  
  2331.  The primary purpose of map tables is to assign actions to the cursor keypad 
  2332.  and the function keys. Each of these keys sends an arbitrary but distinctive 
  2333.  sequence of characters when pressed. The map tables are used to convert these 
  2334.  arbitrary character sequences into command keystrokes that elvis can do 
  2335.  something useful with. For example, arrow keys are normally mapped to the h, 
  2336.  j, k, and l commands. 
  2337.  
  2338.  The first argument to :map is the raw character sequence sent by a key, and 
  2339.  the remaining arguments are the characters that elvis should pretend you 
  2340.  pressed. This can be either a literal sequence of characters, or a 
  2341.  gui-dependent symbol representing a particular keystroke. See the User 
  2342.  Interfaces chapter for lists of keystrokes. Also, function keys can usually be 
  2343.  denoted by #1 for the <F1> key, #2 for the <F2> key, and so on. 
  2344.  
  2345.  The second argument is character sequence that elvis should pretend you typed 
  2346.  whenever the raw characters are received. This  may be preceded by the word 
  2347.  "visual" which causes the remaining argument characters to be processed as 
  2348.  visual commands, even if the key is pressed in input mode. This trick is used 
  2349.  to allow the cursor to be moved via the arrow keys when in input mode. 
  2350.  
  2351.  The :break and :unbreak commands set and reset the breakpoint flag for a given 
  2352.  macro, respectively. Using a '!' suffix causes the breakpoint to be set for an 
  2353.  input-mode map. This is used for debugging macros, as described in section 
  2354.  16.3: How to debug macros. If a macro has its breakpoint flag set, and the 
  2355.  maptrace option is set to run, then when that map is encountered elvis will 
  2356.  automatically switch maptrace to step mode. 
  2357.  
  2358.  The :digraph command manipulates the digraph table. (See section 3.2: Digraphs 
  2359.  for a discussion on digraphs.) With no arguments, it lists the digraph table. 
  2360.  With one argument, it removes the given digraph from the table. With two 
  2361.  arguments, it adds the given digraph to the table, or if the same two ASCII 
  2362.  characters are already in the table then it alters the existing entry. 
  2363.  
  2364.  Normally, the :digraph command sets the most significant bit in the last 
  2365.  argument's character. That way you don't need to be able to type a non-ASCII 
  2366.  character on your keyboard in order to enter it into the table; you can type 
  2367.  the ASCII equivalent and allow elvis to convert it to non-ASCII before storing 
  2368.  the digraph. If you don't want elvis to set the most significant bit, then 
  2369.  append a "!" to the end of the command name. 
  2370.  
  2371.  The :color command allows you to choose a color to use for displaying each 
  2372.  font. Some user interfaces don't support this. The ones that do will vary in 
  2373.  the color names that they support. The termcap interface supports black, 
  2374.  white, gray, red, green, blue, brown, yellow, magenta, and cyan, plus light or 
  2375.  bright versions of most of those. The windows interface supports the same 
  2376.  colors, except that it is pickier: it doesn't allow spaces, and only "light" 
  2377.  is accepted, such as "lightblue". The x11 interface supports all standard X 
  2378.  color names. 
  2379.  
  2380.  The first argument should be the name of the font to change. This can be 
  2381.  "normal", "bold", "emphasized", "italic", "underlined", or "fixed". Some user 
  2382.  interfaces may also support "standout", "cursor", "scrollbar", and/or 
  2383.  "toolbar". All of these can be either spelled out completely, or abbreviated 
  2384.  to the first letter. (Currently no user interface supports both "standout" and 
  2385.  "scrollbar" so there is no ambiguity.) If you omit the font name, then 
  2386.  "normal" is assumed. The termcap interface requires you to assign a "normal" 
  2387.  color before any of the other fonts. 
  2388.  
  2389.  You can specify an optional background color. The word "on" is used to delimit 
  2390.  the foreground color name from the background color name. For example, the 
  2391.  command ":color yellow on blue" causes normal text to be displayed as yellow 
  2392.  characters on a blue background. 
  2393.  
  2394.  The x11 user interface allows you to specify both the foreground and 
  2395.  background color for the cursor.  The cursor is drawn in the foreground color 
  2396.  normally, but the background color if elvis own the current X selection. 
  2397.  
  2398.  The :gui command provides a way to pass unusual commands to the user 
  2399.  interface. Currently, the only user interface which uses this is the "x11" 
  2400.  interface, which uses it to configure the toolbar. 
  2401.  
  2402.  The :set command allows you to examine or change the values of options. Using 
  2403.  :set! (with a "!" at the end of the command name) causes it to include the 
  2404.  group name of any option that is output. In addition, "!" inhibits the setting 
  2405.  of any option's "modified" flag, which will then prevent it from being output 
  2406.  by a later argumentless :set command. 
  2407.  
  2408.  With no arguments, :set lists the names and values of any options that have 
  2409.  been altered or are of frequent interest. If given the argument "all" it will 
  2410.  list the names and values of most (but not really all) options. If given the 
  2411.  name of an option followed by a "?"  character, :set will output the option's 
  2412.  name and value. If given the name of a group of options, followed by a "?" 
  2413.  character, :set will output the names and values of all options in that group. 
  2414.  
  2415.  To turn a Boolean option on, just give the name of the option. You can turn it 
  2416.  off by adding the prefix "no" to the option name, and you can negate it by 
  2417.  adding the "neg" prefix to its name. 
  2418.  
  2419.  To change the value of a non-Boolean option, give the name followed 
  2420.  immediately by an "=" and the new value. If the new value contains whitespace, 
  2421.  you should either enclose the entire value in quotes, or precede each 
  2422.  whitespace character with a backslash. 
  2423.  
  2424.  If you give the name of a non-Boolean option, without either "=value" or "?", 
  2425.  then elvis will display its value. 
  2426.  
  2427.   .-----------.--------------------------------------------------------.
  2428.   | EXAMPLE   | WHAT IT DOES                                           |
  2429.   |-----------|--------------------------------------------------------|
  2430.   | :set      | display names & values of changed/interesting options  |
  2431.   | :set all  | display names & values of most POSIX-compliant options |
  2432.   | :set ts?  | display name & value of the tabstop option             |
  2433.   | :set lp?  | display names & values of all printing options         |
  2434.   | :set ts=4 | set value of the tabstop option to 4                   |
  2435.   | :set ai   | turn on the autoindent option                          |
  2436.   | :set noai | turn off the autoindent option                         |
  2437.   | :set negai| toggle the autoindent option                           |
  2438.   ^-----------^--------------------------------------------------------^
  2439.  
  2440.  The :local command is similar to :set, and is intended to be used in aliases 
  2441.  and scripts. In addition to setting options' values, it also pushes the old 
  2442.  values onto a stack; the old values are automatically restored at the end of 
  2443.  the alias or script. Another difference is that where :set would output an 
  2444.  option, :local merely pushes its old value, without outputting or changing the 
  2445.  option's value. This means that you can save a non-Boolean option simply by 
  2446.  mentioning its name on a :local command line; Boolean options can also be 
  2447.  saved without altering them, but you must put a question mark after the 
  2448.  option's name. 
  2449.  
  2450.   Here's a simple alias which uses :local. It totals the numbers in all lines 
  2451.  from the current line forward to the next line which contains the "total:", 
  2452.  and stores the total in the "total:" line. 
  2453.  
  2454.           :alias total {
  2455.                   local nowrapscan ignorecase t=0
  2456.                   .,/total:/-1 s/\d\+/let t=t+&/x
  2457.                   eval /total/ s/:.*/: (t)/
  2458.           }
  2459.  
  2460.  The :let command computes a new value for an option. The :let command should 
  2461.  be followed by the name of an option, then an "=" sign, and then an expression 
  2462.  that produces the new value. Note that even Boolean options use the "=" 
  2463.  notation here. When invoked as :let! (with a '!' suffix), elvis won't set the 
  2464.  option's "changed" flag so it won't be output by an argumentless :set command. 
  2465.  
  2466.  The :if command evaluates an expression, and sets an internal variable 
  2467.  according to whether the result was true or false. Later, the :then and :else 
  2468.  commands can be used to test that variable, and conditionally execute other ex 
  2469.  commands. 
  2470.  
  2471.  Note that after an :if command, any other ex commands which don't start with 
  2472.  :then or :else will be executed unconditionally. 
  2473.  
  2474.  In aliases or script files, you can supply multiple command lines to a single 
  2475.  :then or :else by placing a '{' character on the :then/:else line, following 
  2476.  that with any number of command lines, and then finally a '}' character on a 
  2477.  line by itself to mark the end. The following example demonstrates this 
  2478.  syntax, and also shows that you can safely use :if inside a :then or :else 
  2479.  command: 
  2480.  
  2481.           :if i <= 0
  2482.           :then {
  2483.                   if i == 0
  2484.                   then echo zero
  2485.                   else echo negative
  2486.           }
  2487.           :else echo positive
  2488.  
  2489.  The :try command executes its argument text as an ex command line. Regardless 
  2490.  of whether that command line succeeds or fails, the :try command itself always 
  2491.  succeeds. That's significant because a command fails, all pending aliases, 
  2492.  macros, and scripts are cancelled; :try prevents that. Error messages and 
  2493.  warning messages are disabled while the command line runs. Afterward, the 
  2494.  then/else is set to indicate whether the command line succeeded. This command 
  2495.  is useful for implementing specialized error handing in an alias or script. 
  2496.  The following example will search for "foo"; if there is no "foo" then it will 
  2497.  search for "bar": 
  2498.  
  2499.           :try /foo
  2500.           :else /bar
  2501.  
  2502.  The :while command stores an expression.  It should be followed by a :do 
  2503.  command; the :do command repeatedly evaluates the expression, and as long as 
  2504.  the result is true it executes the commands which follow the :do.  The 
  2505.  following example counts from 1 to 10: 
  2506.  
  2507.           :let i=1
  2508.           :while i <= 10
  2509.           :do {
  2510.                   calc i
  2511.                   let i=i+1
  2512.           }
  2513.  
  2514.  Both the :if/:then/:else and :while/:do command structures permit nesting. 
  2515.  I.e., the commands in a :then command can't affect the "if" variable to cause 
  2516.  the :else command to also be executed. 
  2517.  
  2518.  The :mkexrc command creates a file containing ex commands which recreate the 
  2519.  current map, abbreviation, and digraph tables, and also sets any options which 
  2520.  have been changed. Basically it stores your current configuration in a file 
  2521.  which you can later :source to restore your configuration. If you don't 
  2522.  specify a filename, then it will write to ".exrc" or "elvis.rc" in the current 
  2523.  directory. 
  2524.  
  2525.  NOTE: The :mkexrc command does not store information for :alias or :gui 
  2526.  commands. This is expected to be added in a later version of elvis. 
  2527.  
  2528.  4.3.15 Miscellaneous 
  2529.  
  2530.   .-------.-------------------.-----------------------------------.
  2531.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2532.   |-------|-------------------|-----------------------------------|
  2533.   |       | "                 | text                              |
  2534.   |       | cd[!]             | [directory]                       |
  2535.   |       | chd[ir][!]        | [directory]                       |
  2536.   |       | ec[ho]            | text                              |
  2537.   |       | me[ssage]         | text                              |
  2538.   |       | wa[rning]         | text                              |
  2539.   |       | erro[r]           | text                              |
  2540.   |       | sh[ell]           |                                   |
  2541.   |       | st[op][!]         |                                   |
  2542.   |       | sus[pend][!]      |                                   |
  2543.   |       | ve[rsion]         |                                   |
  2544.   | line  | go[to]            |                                   |
  2545.   | line  | ma[rk]            | mark                              |
  2546.   | line  | k                 | mark                              |
  2547.   |       | {                 |                                   |
  2548.   ^-------^-------------------^-----------------------------------^
  2549.   The " command causes the remainder of the line to be ignored. It is used for 
  2550.  inserting comments into ex scripts. 
  2551.  
  2552.  The :cd and :chdir commands are identical. They both change the current 
  2553.  working directory for elvis and all its windows. If you don't specify a new 
  2554.  directory name then elvis will switch to your home directory. 
  2555.  
  2556.  The :echo command displays its arguments as a message. This may be useful in 
  2557.  ex scripts. 
  2558.  
  2559.   The :message, :warning, and :error commands all output their arguments as a 
  2560.  message. The command name indicates the importance of the message. This is 
  2561.  diffs from :echo as follows: the messages are translated via the elvis.msg 
  2562.  file, then evaluated using the simpler syntax, and finally stuffed into the 
  2563.  message queue. The message queue collects all messages, and outputs them 
  2564.  immediately before waiting for the next keystroke. Also, the :error command 
  2565.  has the side-effect of terminating any macros, aliases, or scripts. 
  2566.  
  2567.  The :shell command starts up an interactive shell (command-line interpreter). 
  2568.  Elvis will be suspended while the shell executes. (Exception: the "x11" GUI 
  2569.  runs the shell in a separate xterm window. The elvis and the shell can then 
  2570.  run simultaneously.) 
  2571.  
  2572.  The :stop and :suspend commands are identical to each other. If the operating 
  2573.  system and user interface support it, they will suspend elvis and resume the 
  2574.  shell that started elvis. (This is like hitting ^Z on many UNIX systems.) If 
  2575.  the OS or GUI don't support it, then elvis will generally treat these commands 
  2576.  as synonyms for the :shell command. 
  2577.  
  2578.  The :version command identifies this version number of elvis, and displays 
  2579.  credits. 
  2580.  
  2581.  The :goto moves the cursor to the addressed line. This is the only command 
  2582.  which can be abbreviated down to zero characters, so if you type in a line 
  2583.  containing just a line address, then elvis will treat that as a :goto command. 
  2584.  
  2585.  The :mark and :k commands are identical to each other. They set a named mark 
  2586.  to equal the addressed line, or the current line if no address was given. 
  2587.  
  2588.  The { commands } notation isn't really a command; it is a feature of elvis' 
  2589.  syntax which allows you to pass several command lines to a command which 
  2590.  normally expects a single command line as its argument. It is supported by the 
  2591.  :global, :vglobal, :all, :then, and :else commands. Instead of placing the 
  2592.  argument command at the end of one of those command lines, you can place a 
  2593.  single '{' character there. That should be followed by one or more command 
  2594.  lines, and terminated by a '}' on a line by itself. 
  2595.  
  2596.  4.4 Alphabetical list of ex commands 
  2597.  
  2598.   .-------.-------------------.-----------------------------------.
  2599.   |ADDRESS| COMMAND           | ARGUMENTS                         |
  2600.   |-------|-------------------|-----------------------------------|
  2601.   |       | ab[breviate][!]   | [lhs rhs]                         |
  2602.   |       | al[l][!]          | excmds                            |
  2603.   | line  | a[ppend][!]       | [text]                            |
  2604.   |       | ar[gs]            | [file...]                         |
  2605.   |       | bb[rowse]         |                                   |
  2606.   |       | bre[ak][!]        | lhs                               |
  2607.   |       | br[owse][!]       | restrictions                      |
  2608.   |       | b[uffer][!]       | [buffer]                          |
  2609.   |       | ca[lculate]       | expr                              |
  2610.   |       | cc[!]             | [args]                            |
  2611.   |       | cd[!]             | [directory]                       |
  2612.   | range | c[hange][!]       | [count] [text]                    |
  2613.   |       | chd[ir][!]        | [directory]                       |
  2614.   |       | cl[ose][!]        |                                   |
  2615.   |       | col[or]           | [font color ["on" color]]         |
  2616.   | range | co[py]            | line                              |
  2617.   | range | d[elete]          | [cutbuf] [count]                  |
  2618.   |       | dig[raph][!]      | [lhs [rhs]]                       |
  2619.   |       | di[splay]         | [modename [language]]             |
  2620.   |       | do                | excmds                            |
  2621.   |       | ec[ho]            | text                              |
  2622.   |       | e[dit][!]         | [+line] [file]                    |
  2623.   |       | el[se]            | excmds                            |
  2624.   |       | er[rlist][!]      | [file]                            |
  2625.   |       | erro[r]           | text                              |
  2626.   |       | ev[al]            | expr                              |
  2627.   |       | ex[!]             | [+line] [file]                    |
  2628.   |       | f[ile]            | [file]                            |
  2629.   | range | g[lobal][!]       | /regexp/ excmds                   |
  2630.   | line  | go[to]            |                                   |
  2631.   |       | gu[i]             | text                              |
  2632.   |       | h[elp]            | topic                             |
  2633.   |       | if                | expr                              |
  2634.   | line  | i[nsert][!]       | [text]                            |
  2635.   | range | j[oin][!]         |                                   |
  2636.   | line  | k                 | mark                              |
  2637.   |       | la[st]            |                                   |
  2638.   |       | le[t][!]          | option=expr                       |
  2639.   | range | l[ist]            | [count]                           |
  2640.   |       | lo[cal][!]        | [option=value | option ]          |
  2641.   | range | lp[r][!]          | [ file | >>file | !shellcmd ]     |
  2642.   |       | mak[e][!]         | [args]                            |
  2643.   |       | map[!]            | [lhs rhs]                         |
  2644.   | line  | ma[rk]            | mark                              |
  2645.   |       | me[ssage]         | text                              |
  2646.   |       | mk[exrc][!]       | [file]                            |
  2647.   | range | m[ove]            | line                              |
  2648.   |       | new               |                                   |
  2649.   |       | n[ext][!]         | [file...]                         |
  2650.   |       | N[ext][!]         |                                   |
  2651.   |       | no[rmal]          |                                   |
  2652.   | range | nu[mber]          | [count]                           |
  2653.   |       | o[pen][!]         | [+line] [file]                    |
  2654.   |       | po[p][!]          |                                   |
  2655.   |       | pre[vious][!]     |                                   |
  2656.   | range | p[rint]           | [count]                           |
  2657.   | line  | pu[t]             | [cutbuf]                          |
  2658.   |       | qa[ll][!]         |                                   |
  2659.   |       | q[uit][!]         |                                   |
  2660.   | line  | r[ead]            | file | !shellcmd                  |
  2661.   |       | red[o]            | [count]                           |
  2662.   |       | rew[ind][!]       |                                   |
  2663.   |       | sN[ext]           |                                   |
  2664.   |       | saf[er][!]        | file                              |
  2665.   |       | sa[ll]            |                                   |
  2666.   |       | sbb[rowse]        |                                   |
  2667.   |       | sb[rowse]         | restrictions                      |
  2668.   |       | se[t][!]          | [option=value | option? | all]    |
  2669.   |       | sh[ell]           |                                   |
  2670.   |       | sl[ast]           |                                   |
  2671.   |       | sne[w]            |                                   |
  2672.   |       | sn[ext]           | [file...]                         |
  2673.   |       | so[urce][!]       | file                              |
  2674.   |       | sp[lit]           | [file | !shellcmd]                |
  2675.   |       | sre[wind][!]      |                                   |
  2676.   |       | stac[k]           |                                   |
  2677.   |       | sta[g]            | [tag]                             |
  2678.   |       | st[op][!]         |                                   |
  2679.   | range | s[ubstitute]      | /regexp/newtext/[g][p][x][count]  |
  2680.   |       | sus[pend][!]      |                                   |
  2681.   |       | ta[g][!]          | [tag]                             |
  2682.   |       | th[en]            | excmds                            |
  2683.   | range | t[o]              | line                              |
  2684.   |       | try               | excmds                            |
  2685.   |       | una[bbreviate][!] | lhs                               |
  2686.   |       | unb[reak][!]      | lhs                               |
  2687.   |       | u[ndo]            | [count]                           |
  2688.   |       | unm[ap][!]        | lhs                               |
  2689.   |       | ve[rsion]         |                                   |
  2690.   | range | v[global][!]      | /regexp/ excmds                   |
  2691.   |       | vi[sual][!]       | [+line] [file]                    |
  2692.   |       | wa[rning]         | text                              |
  2693.   |       | wh[ile]           | expr                              |
  2694.   |       | wi[ndow]          | [+ | - | number | buffer ]        |
  2695.   |       | wn[ext][!]        |                                   |
  2696.   |       | wq[uit][!]        | [file]                            |
  2697.   | range | w[rite][!]        | [file | >>file | !shellcmd]       |
  2698.   |       | x[it][!]          | [file]                            |
  2699.   | range | y[ank]            | [cutbuf] [count]                  |
  2700.   | line  | z                 | [spec]                            |
  2701.   | range | !                 | shellcmd                          |
  2702.   |       | "                 | text                              |
  2703.   | range | #                 | [count]                           |
  2704.   | range | &                 |                                   |
  2705.   |       | (                 | buffer                            |
  2706.   | range | <                 |                                   |
  2707.   | range | =                 |                                   |
  2708.   | range | >                 |                                   |
  2709.   |       | @                 | cutbuf                            |
  2710.   |       | {                 |                                   |
  2711.   | range | ~                 |                                   |
  2712.   ^-------^-------------------^-----------------------------------^
  2713.  
  2714.  
  2715. ΓòÉΓòÉΓòÉ 1.5. Elvis 2.1 Regular Expressions ΓòÉΓòÉΓòÉ
  2716.  
  2717.  
  2718.  
  2719. 5. REGULAR EXPRESSIONS 
  2720.  
  2721.  Elvis uses regular expressions for searching and substitutions. A regular 
  2722. expression is a text string in which some characters have special meanings. 
  2723. This is much more powerful than simple text matching. 
  2724.  
  2725. 5.1 Syntax 
  2726.  
  2727. Elvis' regexp package treats the following one- or two-character strings 
  2728. (called meta-characters) in special ways: 
  2729.  
  2730.  \(subexpression\) 
  2731.            The \( and \) metacharacters are used to delimit subexpressions. 
  2732.            When the regular expression matches a particular chunk of text, 
  2733.            Elvis will remember which portion of that chunk matched the 
  2734.            subexpression. The :s/regexp/newtext/ command makes use of this 
  2735.            feature. 
  2736.  ^ 
  2737.            The ^ metacharacter matches the beginning of a line. If, for 
  2738.            example, you wanted to find "foo" at the beginning of a line, you 
  2739.            would use a regular expression such as /^foo/. Note that ^ is only a 
  2740.            metacharacter if it occurs at the beginning of a regular expression; 
  2741.            practically anyplace else, it is treated as a normal character. 
  2742.            (Exception: It also has a special meaning inside a [character-list] 
  2743.            metacharacter, as described below.) 
  2744.  $ 
  2745.            The $ metacharacter matches the end of a line. It is only a 
  2746.            metacharacter when it occurs at the end of a regular expression; 
  2747.            elsewhere, it is treated as a normal character. For example, the 
  2748.            regular expression /$$/ will search for a dollar sign at the end of 
  2749.            a line. 
  2750.  \< 
  2751.            The \< metacharacter matches a zero-length string at the beginning 
  2752.            of a word. A word is considered to be a string of 1 or more letters, 
  2753.            digits, or underscores. A word can begin at the beginning of a line 
  2754.            or after 1 or more non-alphanumeric characters. 
  2755.  \> 
  2756.            The \> metacharacter matches a zero-length string at the end of a 
  2757.            word. A word can end at the end of the line or before 1 or more 
  2758.            non-alphanumeric characters. For example, /\<end\>/ would find any 
  2759.            instance of the word "end", but would ignore any instances of e-n-d 
  2760.            inside another word such as "calendar". 
  2761.  \@ 
  2762.            When you're performing a search in visual mode, and the cursor is on 
  2763.            a word before you start typing the search command, then \@ matches 
  2764.            the word at the cursor. 
  2765.  \= 
  2766.            Ordinarily, the visual mode search command leaves the cursor on the 
  2767.            first character of the matching text that it finds. If your regular 
  2768.            expression includes a \= metacharacter, then it will leave the 
  2769.            cursor at the position that matched the \=. For example, if you 
  2770.            place \= at the end of your regular expression, then the cursor will 
  2771.            be left after the matching text instead of at the start of it. 
  2772.  . 
  2773.            The . metacharacter matches any single character. 
  2774.  
  2775.            NOTE: If the magic option is turned off, then . is treated as an 
  2776.            ordinary, literal character. You should use \. to get the 
  2777.            meta-character version in this case. 
  2778.  [character-list] 
  2779.             This matches any single character from the character-list. Inside 
  2780.            the character-list, you can denote a span of characters by writing 
  2781.            only the first and last characters, with a hyphen between them. If 
  2782.            the character-list is preceded by a ^ character, then the list is 
  2783.            inverted -- it will match any character that isn't mentioned in the 
  2784.            list. For example, /[a-zA-Z]/ matches any ASCII letter, and /[^ ]/ 
  2785.            matches anything other than a blank. 
  2786.  
  2787.            There is no way to quote the ']' or '-' characters, which means that 
  2788.            if you want to include those characters as members of the list, you 
  2789.            must place them in positions where they couldn't be mistaken for the 
  2790.            end of the list or a range. Specifically, ']' can appear only as the 
  2791.            first character in the list (immediately after the "[" or "[^" that 
  2792.            starts the list) or as the last character in a range. '-' can appear 
  2793.            there too, or immediately after the last character of a range. For 
  2794.            example, [])}] matches a closing bracket, parentheses, or curly 
  2795.            brace. [^-+] matches any character except '+' or '-'. Probably the 
  2796.            trickiest example, []-]-] matches a closing bracket or a '-'.  (Note 
  2797.            that the range "]-]" matches a single bracket; we wrote it this way 
  2798.            so that the following "-" would be in a context where it couldn't be 
  2799.            mistaken for a range and so must be a literal '-' character.) 
  2800.  
  2801.            There are also special cases for some common character lists. When 
  2802.            one of the following special symbols appears in a character list, 
  2803.            the list will include all appropriate characters for that symbol 
  2804.            including the non-ascii characters as indicated by the digraph 
  2805.            table. Note that he brackets around these symbols are in addition to 
  2806.            the brackets around the whole class. For example, /[[:alpha:]]/ 
  2807.            matches any single letter, and /[[:alpha:]_][[:alnum:]_]*/ matches 
  2808.            any C identfier. 
  2809.  
  2810.                           .----------------.-------------------------------------------.
  2811.                           | SPECIAL SYMBOL | INCLUDED CHARACTERS                       |
  2812.                           |----------------|-------------------------------------------|
  2813.                           |   [:alnum:]    | all letters and digits                    |
  2814.                           |   [:alpha:]    | all letters                               |
  2815.                           |   [:ascii:]    | all ASCII characters                      |
  2816.                           |   [:blank:]    | the space and tab characters              |
  2817.                           |   [:cntrl:]    | ASCII control characters                  |
  2818.                           |   [:digit:]    | all digits                                |
  2819.                           |   [:graph:]    | all printable characters excluding space  |
  2820.                           |   [:lower:]    | all lowercase letters                     |
  2821.                           |   [:print:]    | all printable characters including space  |
  2822.                           |   [:punct:]    | all punctuation characters                |
  2823.                           |   [:space:]    | all whitespace characters except linefeed |
  2824.                           |   [:upper:]    | all uppercase characters                  |
  2825.                           |   [:xdigit:]   | all hexadecimal digits                    |
  2826.                           ^----------------^-------------------------------------------^
  2827.  
  2828.            NOTE: If the magic option is turned off, then the opening [ is 
  2829.            treated as an ordinary, literal character. To get the meta-character 
  2830.            behavior, you should use \[character-list] in this case. 
  2831.  \s, \S, \d, \D, \w, \W, \p, and \P 
  2832.            These are all shortcuts for certain character lists. The lowercase 
  2833.            \s, \d, \w, and \p symbols match (respectively) any whitespace 
  2834.            character, digit, alphanumeric character, or any printable 
  2835.            character. The uppercase versions are the opposites; they match any 
  2836.            single character that the lowercase versions don't match. 
  2837.  \0, \a, \b, \f, \r, and \t 
  2838.            These are control characters, just as they would be in C strings. 
  2839.            Note that there is no \n. 
  2840.  \{n\} or \{n} 
  2841.            This is a closure operator, which means that it can only be placed 
  2842.            after something that matches a single character. It controls the 
  2843.            number of times that the single-character expression should be 
  2844.            repeated. The \{n\} or \{n} operator, in particular, means that the 
  2845.            preceding expression should be repeated exactly n times. For 
  2846.            example, /^-\{80\}$/ matches a line of eighty hyphens, and 
  2847.            /\<[[:alpha:]]\{4}\>/ matches any four-letter word. 
  2848.  \{n,m\} or \{n,m} 
  2849.            This is a closure operator which means that the preceding 
  2850.            single-character expression should be repeated between n and m 
  2851.            times, inclusive. If the m is omitted (but the comma is present) 
  2852.            then m is taken to be infinity. For example, /"[^"]\{3,5\}"/ matches 
  2853.            any pair of quotes which contains three, four, or five non-quote 
  2854.            characters. /.\{81,}/ matches any line which contains more than 80 
  2855.            characters. 
  2856.  * 
  2857.            The * metacharacter is a closure operator which means that the 
  2858.            preceding single-character expression can be repeated zero or more 
  2859.            times. It is equivalent to \{0,\}. For example, /.*/ matches a whole 
  2860.            line. 
  2861.  
  2862.            NOTE: If the magic option is turned off, then * is treated as an 
  2863.            ordinary, literal character. You should use \* to get the 
  2864.            meta-character version in this case. 
  2865.  \+ 
  2866.            The \+ metacharacter is a closure operator which means that the 
  2867.            preceding single-character expression can be repeated one or more 
  2868.            times. It is equivalent to \{1,\}. For example, /.\+/ matches a 
  2869.            whole line, but only if the line contains at least one character. It 
  2870.            doesn't match empty lines. 
  2871.  \? 
  2872.            The \? metacharacter is a closure operator which indicates that the 
  2873.            preceding single-character expression is optional -- that is, that 
  2874.            it can occur 0 or 1 times. It is equivalent to \{0,1\}. For example, 
  2875.            /no[ -]\?one/ matches "no one", "no-one", or "noone". 
  2876.  
  2877.  Anything else is treated as a normal character which must exactly match a 
  2878.  character from the scanned text. The special strings may all be preceded by a 
  2879.  backslash to force them to be treated normally. 
  2880.  
  2881.  5.2 Substitutions 
  2882.  
  2883.  The :s command has at least two arguments: a regular expression, and a 
  2884.  substitution string. The text that matched the regular expression is replaced 
  2885.  by text which is derived from the substitution string. 
  2886.  
  2887.  You can use any punctuation character to delimit the regular expression and 
  2888.  the replacement text. The first character after the command name is used as 
  2889.  the delimiter. Most folks prefer to use a slash character most of the time, 
  2890.  but if either the regular expression or the replacement text uses a lot of 
  2891.  slashes, then some other punctuation character may be more convenient. 
  2892.  
  2893.  Most other characters in the substitution string are copied into the text 
  2894.  literally but a few have special meaning: 
  2895.  
  2896.   .-------.----------------------------------------------------------.
  2897.   |SYMBOL | MEANING                                                  |
  2898.   |-------|----------------------------------------------------------|
  2899.   |  ^M   | Insert a newline (instead of a carriage-return)          |
  2900.   |   &   | Insert a copy of the original text                       |
  2901.   |   ~   | Insert a copy of the previous replacement text           |
  2902.   |  \1   | Insert a copy of that portion of the original text which |
  2903.   |       |      matched the first set of \( \) parentheses          |
  2904.   | \2-\9 | Do the same for the second (etc.) pair of \( \)          |
  2905.   |  \U   | Convert following characters to uppercase                |
  2906.   |  \L   | Convert following characters to lowercase                |
  2907.   |  \E   | End the effect of \U or \L                               |
  2908.   |  \u   | Convert the next character to uppercase                  |
  2909.   |  \l   | Convert the next character to lowercase                  |
  2910.   |  \#   | Insert the line number, as a string of digits            |
  2911.   |  \0   | Insert a nul character                                   |
  2912.   |  \a   | Insert a bell character                                  |
  2913.   |  \b   | Insert a backspace character                             |
  2914.   |  \f   | Insert a form-feed character                             |
  2915.   |  \n   | Insert a line-feed character                             |
  2916.   |  \r   | Insert a carriage-return character                       |
  2917.   |  \t   | Insert a tab character                                   |
  2918.   ^-------^----------------------------------------------------------^
  2919.  These may be preceded by a backslash to force them to be treated normally. The 
  2920.  delimiting character can also be preceeded by a backslash to include it in 
  2921.  either the regular expression or the substitution string. 
  2922.  
  2923.  Traditionally \0 was a synonym for the & symbol -- they both inserted a copy 
  2924.  of the matching text. Elvis breaks from tradition here to make \0 insert a NUL 
  2925.  character because there would otherwise be no way to have a substitution 
  2926.  insert a NUL character. 
  2927.  
  2928.  5.3 Options 
  2929.  
  2930.  Elvis has two options which affect the way regular expressions are used. These 
  2931.  options may be examined or set via the :set command. 
  2932.  
  2933.  The first option is called "[no]magic". This is a boolean option, and it is 
  2934.  "magic" (TRUE) by default. While in magic mode, all of the meta-characters 
  2935.  behave as described above. In nomagic mode, the ., [...], and * characters 
  2936.  loose their special meaning unless preceeded by a backslash. Also, in 
  2937.  substitution text the & and ~ characters are treated literally unless 
  2938.  preceeded by a backslash. 
  2939.  
  2940.  The second option is called "[no]ignorecase". This is a boolean option, and it 
  2941.  is "noignorecase" (FALSE) by default. While in ignorecase mode, the searching 
  2942.  mechanism will not distinguish between an uppercase letter and its lowercase 
  2943.  form, except in a character list metacharacter. In noignorecase mode, 
  2944.  uppercase and lowercase are treated as being different. 
  2945.  
  2946.  Also, the "[no]wrapscan" and "[no]autoselect" options affect searches. 
  2947.  
  2948.  5.4 Examples 
  2949.  
  2950.  This example changes every occurrence of "utilize" to "use": 
  2951.  
  2952.   :%s/utilize/use/g
  2953.  This example deletes all whitespace that occurs at the end of a line anywhere 
  2954.  in the file. 
  2955.  
  2956.   :%s/\s\+$//
  2957.  This example converts the current line to uppercase: 
  2958.  
  2959.   :s/.*/\U&/
  2960.  This example underlines each letter in the current line, by changing it into 
  2961.  an "underscore backspace letter" sequence. (The ^H is entered as "control-V 
  2962.  backspace".): 
  2963.  
  2964.   :s/[a-zA-Z]/_^H&/g
  2965.  This example locates the last colon in a line, and swaps the text before the 
  2966.  colon with the text after the colon. The first \( \) pair is used to delimit 
  2967.  the stuff before the colon, and the second pair delimit the stuff after. In 
  2968.  the substitution text, \1 and \2 are given in reverse order to perform the 
  2969.  swap: 
  2970.  
  2971.   :s/\(.*\):\(.*\)/\2:\1/
  2972.  
  2973.  
  2974. ΓòÉΓòÉΓòÉ 1.6. Elvis 2.1 Options ΓòÉΓòÉΓòÉ
  2975.  
  2976.  
  2977.  
  2978. 6. OPTIONS 
  2979.  
  2980.  Options are a primary means of configuring the appearance and behavior of 
  2981. elvis. They are set via the :set command, or the :let command. The options' 
  2982. values are examined directly by elvis internally, and can also be displayed via 
  2983. :set, or in an expression.  The following tables list the names, type, group, 
  2984. and description of each option. One table lists all options alphabetically, and 
  2985. the other breaks list down into groups of related options. I recommend the 
  2986. latter, since there are a lot of options. 
  2987.  
  2988. Most options have two names -- a short name that is easy to type in, and a 
  2989. longer descriptive name. You can type in either name; they work equivalently. 
  2990. Elvis always outputs the longer name when it is listing values. 
  2991.  
  2992. Each option accepts a specific type of value. The most common types are 
  2993. boolean, number, string, and one-of, but some options have weird types. 
  2994.  
  2995. Each option serves as an attribute of something. The group of an option 
  2996. designates what it is an attribute of. For example, the "filename" option is an 
  2997. attribute of buffers; when you switch to a different buffer, it will have a 
  2998. different value for the "filename" option. Other options are attributes of 
  2999. windows, or display modes, etc. Here's a complete list: 
  3000.  
  3001. .---------.-------------------------------------------------------.
  3002. |  GROUP  |  DESCRIPTION                                          |
  3003. |---------|-------------------------------------------------------|
  3004. | buf     | Attributes of buffers                                 |
  3005. | win     | Attributes of windows                                 |
  3006. | syntax  | Attributes of the "syntax" display mode               |
  3007. | x11     | Attributes of the "x11" user interface                |
  3008. | tcap    | Attributes of the "termcap" user interface            |
  3009. | windows | Attributes of the "windows" user interface            |
  3010. | win32   | User interface attributes for the Win32 port          |
  3011. | global  | Global options                                        |
  3012. | lp      | Printing options                                      |
  3013. | user    | User variables a - z (Global, useful in ex scripts)   |
  3014. ^---------^-------------------------------------------------------^
  3015. You don't need to know an option's group to set that option. You can output the 
  3016. values of all options in a group by passing the group name followed by a 
  3017. question mark to the :set command. The following example outputs all of the 
  3018. attributes of the current buffer: 
  3019.  
  3020. :set buf?
  3021.  
  3022.  
  3023. 6.1 Options, grouped by function 
  3024.  
  3025.      6.1.1 Options that relate the buffer to a file 
  3026.      6.1.2 Statistics about a buffer 
  3027.      6.1.3 Options that affect movement commands 
  3028.      6.1.4 Options that affect input mode 
  3029.      6.1.5 Ex options 
  3030.      6.1.6 Window statistics 
  3031.      6.1.7 Options affecting the appearance of text 
  3032.      6.1.8 Options for a particular display mode 
  3033.      6.1.9 Messages 
  3034.      6.1.10 Words 
  3035.      6.1.11 Options for a particular user interface 
  3036.      6.1.12 Regular expression options 
  3037.      6.1.13 Tag options 
  3038.      6.1.14 Window update parameters 
  3039.      6.1.15 Cache options 
  3040.      6.1.16 Options that describe the system 
  3041.      6.1.17 External programs 
  3042.      6.1.18 Directory names 
  3043.      6.1.19 Initialization options 
  3044.      6.1.20 Keyboard map options 
  3045.      6.1.21 Printing options 
  3046.      6.1.22 Previous arguments 
  3047.      6.1.23 Unsupported options 
  3048.      6.1.24 User variables 
  3049.  
  3050.  
  3051.  6.1.1 Options that relate the buffer to a file 
  3052.  
  3053.   .---------------------.---------.--------.-----------------------------.
  3054.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3055.   |---------------------|---------|--------|-----------------------------|
  3056.   | filename, file      | String  | buf    | name of file in buffer      |
  3057.   | bufname, buffer     | String  | buf    | name of buffer              |
  3058.   | bufid, bufferid     | Number  | buf    | ID number of user buffer    |
  3059.   | retain, ret         | Boolean | buf    | keep buffer in session file |
  3060.   | modified, mod       | Boolean | buf    | buffer differs from file    |
  3061.   | edited, samename    | Boolean | buf    | buffer loaded from filename |
  3062.   | newfile, new        | Boolean | buf    | filename doesn't exist yet  |
  3063.   | readonly, ro        | Boolean | buf    | don't overwrite filename    |
  3064.   | defaultreadonly, dro| Boolean | global | assume all files readonly   |
  3065.   | locked, lock        | Boolean | win    | prevent any alterations     |
  3066.   | autowrite, aw       | Boolean | global | save file before switching  |
  3067.   | writeany, wa        | Boolean | global | don't warn of existing file |
  3068.   | backup, bk          | Boolean | global | make *.bak file before write|
  3069.   | undolevels, ul      | Number  | buf    | number of undoable commands |
  3070.   | beautify, bf        | Boolean | global | strip ctrl chars from files |
  3071.   ^---------------------^---------^--------^-----------------------------^
  3072.   The filename option stores the name of the text file whose text was initially 
  3073.  loaded into the buffer. If no file name is known (e.g., for an internal buffer 
  3074.  or a new, untitled buffer) then this will be an empty string. The :file 
  3075.  command can be used to change the filename. Also, the filename is set 
  3076.  automatically when you write the buffer out, if it had no filename before. 
  3077.  
  3078.  The bufname option stores the name of the buffer. Usually this will be the 
  3079.  same as the filename, but it can be different. Every buffer has a bufname, 
  3080.  even if it doesn't have a filename. The name of a buffer can be changed via 
  3081.  the :buffer command. 
  3082.  
  3083.  For user buffers, the bufid option stores a unique id number for each buffer. 
  3084.  Anyplace where you can use the (name) notation to specify a buffer, you can 
  3085.  also use (n) as an abbreviation for the buffer whose bufid=n. Also, for 
  3086.  filenames you can use #n for the filename of the buffer whose bufid=n. 
  3087.  
  3088.  The retain option indicates whether the buffer is intended to survive past the 
  3089.  end of this elvis process. If this option is true and the tempsession option 
  3090.  is false (":set retain notempsession") then elvis will allow you to exit even 
  3091.  if this buffer hasn't been saved since its last change. When you restart the 
  3092.  session, the buffer will still exist with all its changed text intact.  By 
  3093.  default, the retain option is false (":set noretain") because that mimics 
  3094.  traditional vi behavior. 
  3095.  
  3096.  The modified option indicates whether the buffer has been modified since the 
  3097.  last time it was written out completely. 
  3098.  
  3099.  The edited option indicates whether the filename option has been modified 
  3100.  since the last time it was written out. If this option is false, elvis will be 
  3101.  more cautious about writing the file out. 
  3102.  
  3103.  The newfile option indicates that when the buffer was created it tried to load 
  3104.  the file identified by the filename option, but that file did not exist at 
  3105.  that time. 
  3106.  
  3107.  The readonly option indicates that when the buffer was loaded, the original 
  3108.  file was marked as being unwritable.  Either that, or the defaultreadonly 
  3109.  option was set to true (probably via the -R command line flag). This option 
  3110.  has two purposes: it gives you a way to detect that you can't write the file 
  3111.  out, and it protects you from writing out a file that you meant to just look 
  3112.  at without modifying. 
  3113.  
  3114.  The locked option prevents you from modifying the buffer. Nearly any command 
  3115.  which would modify the buffer will fail. The only exceptions are "undo" 
  3116.  commands, and commands such as :e which merely reload the buffer from its 
  3117.  original file. 
  3118.  
  3119.  Setting the autowrite option allows elvis to automatically write the current 
  3120.  buffer out to a file if it has been modified, before switching to another 
  3121.  buffer.  By default this option is off, so if you try to switch away from a 
  3122.  modified buffer, elvis will just give an error message and refuse to switch 
  3123.  until you manually write the file out. 
  3124.  
  3125.  Elvis tries to save you from accidentally clobbering existing files.  Setting 
  3126.  the writeany option disables this protection; elvis will allow you to 
  3127.  overwrite any file that the operating system will allow, without giving any 
  3128.  warnings. 
  3129.  
  3130.  The backup option isn't used internally by elvis, but the default elvis.bwf 
  3131.  file checks this flag to determine whether it should attempt to make a backup 
  3132.  of a file it is about to overwrite. By default, this option is false, so 
  3133.  backups will not be made. 
  3134.  
  3135.  For each buffer, the undolevels option indicates the number of "undo" versions 
  3136.  elvis will maintain. Each undo level requires at least three blocks of the 
  3137.  session file (typically 2K bytes each, 6K total) so you probably don't want to 
  3138.  set this higher than 100 or so, and you probably want to keep it much lower. 
  3139.  The default is 0, which is a special case that mimics vi's traditional 
  3140.  behavior. 
  3141.  
  3142.  If the beautify option is true, then whenever elvis reads text from a file or 
  3143.  external program, it will strip any control characters other than tab, 
  3144.  linefeed or formfeed. This is false by default. 
  3145.  
  3146.  6.1.2 Statistics about a buffer 
  3147.  
  3148.   .---------------------.---------.--------.-----------------------------.
  3149.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3150.   |---------------------|---------|--------|-----------------------------|
  3151.   | readeol, reol       | One of  | buf    | newline mode when reading   |
  3152.   | writeeol, weol      | One of  | global | newline mode when writing   |
  3153.   | bufchars, bc        | Number  | buf    | number of characters        |
  3154.   | buflines, bl        | Number  | buf    | number of lines             |
  3155.   | partiallastline, pll| Boolean | buf    | file didn't end with newline|
  3156.   | errlines            | Number  | buf    | buflines when :make was run |
  3157.   | internal            | Boolean | buf    | elvis requires this buffer  |
  3158.   | putstyle, ps        | One of  | buf    | type of text in a cut buffer|
  3159.   ^---------------------^---------^--------^-----------------------------^
  3160.   The readeol option determines how elvis reads the file into a buffer. It can 
  3161.  be one of the following: 
  3162.  
  3163.      "unix" The file is opened in binary mode, and any Line Feed characters in 
  3164.       the file are converted to newline characters in the buffer. 
  3165.      "dos" The file is opened in binary mode,  and any Carriage Return/Line 
  3166.       Feed pairs from the file are converted to newline characters in the 
  3167.       buffer. 
  3168.      "mac" The file is opened in binary mode, and any Carriage Return 
  3169.       characters from the file are converted to newline characters in the 
  3170.       buffer. 
  3171.      "text" The file is opened in text mode, and no other conversion takes 
  3172.       place. 
  3173.      "binary" The file is opened in binary mode, and no conversion takes 
  3174.       place. 
  3175.   The compiled-in default is "text", but the standard  elvis.brf file sets it 
  3176.  to a file-dependent value via the fileeol() function. 
  3177.  
  3178.  The writeeol option influences how elvis writes buffers out to a file. If a 
  3179.  buffer's readeol option is set to "binary", then the value of writeeol is 
  3180.  ignored for that buffer; the file will be written in binary. Otherwise it can 
  3181.  be one of the following to determine the output format: 
  3182.  
  3183.      "unix" The file is opened in binary mode, and newlines are written out as 
  3184.       Line Feed characters. 
  3185.      "dos" The file is opened in binary mode, and newlines are written out as 
  3186.       Carriage Return/Line Feed pairs. 
  3187.      "mac" The file is opened in binary mode, and newlines are written out as 
  3188.       Carriage Return characters. 
  3189.      "text" The file is opened in text mode, and no conversion takes place. 
  3190.      "binary" The file is opened in binary mode, and no conversion takes 
  3191.       place. 
  3192.      "same" The value of the readeol option is used to control the output 
  3193.       format. 
  3194.   The default value is "same". You might want to change that to some other mode 
  3195.  to force the file to be written in a specific format; for example, setting it 
  3196.  to "text" will cause a non-binary file to be written in the local text format. 
  3197.  
  3198.  The bufchars and buflines options indicate the number of characters and lines 
  3199.  in the buffer, respectively. The buflines option works by counting newline 
  3200.  characters; it is unaffected by vagaries of the display mode. These options 
  3201.  can't be set. 
  3202.  
  3203.  The partiallastline option indicates whether the file's last line ended with a 
  3204.  newline. Text files should always end with a newline. Traditionally, when vi 
  3205.  loaded a file that contained a partial last line, it would append a newline to 
  3206.  the edit buffer to complete that last line. The extra newline would be written 
  3207.  out when the buffer was saved to a file. That's great for vi, but elvis can 
  3208.  edit binary files as well as text, and appending newlines onto binary files 
  3209.  could cause some problems. So elvis appends a newline just like vi, but also 
  3210.  sets the partiallastline option to remind itself that when the buffer is saved 
  3211.  in binary mode, the last newline should be omitted. Also, the hex display mode 
  3212.  is smart enough to hide the added newline when this option is set. 
  3213.  
  3214.  The errlines option is used to store the number of lines that were in the 
  3215.  buffer when the last :make or :cc command was run. Any difference between 
  3216.  buflines and errlines is used to adjust the line numbers reported in any error 
  3217.  messages, to compensate for lines which have been inserted or deleted since 
  3218.  then. 
  3219.  
  3220.  The internal option indicates that elvis uses the buffer internally.  Such 
  3221.  buffers can't be deleted. 
  3222.  
  3223.  The putstyle option is only relevant for cut buffers. It indicates whether the 
  3224.  cut buffer contains characters, whole lines, or a rectangular area. It is set 
  3225.  automatically whenever you yank or cut text into a cut buffer; when you put 
  3226.  (paste) the contents of that buffer, elvis checks the value of this option to 
  3227.  determine how the text should be inserted into your edit buffer. 
  3228.  
  3229.  6.1.3 Options that affect movement commands 
  3230.  
  3231.   .---------------------.---------.--------.-----------------------------.
  3232.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3233.   |---------------------|---------|--------|-----------------------------|
  3234.   | matchchar, mc       | String  | global | characters matched by %     |
  3235.   | paragraphs, para    | String  | buf    | nroff paragraph commands    |
  3236.   | sections, sect      | String  | buf    | nroff section commands      |
  3237.   | sentenceend, se     | String  | global | punct at end of sentence    |
  3238.   | sentencequote, sq   | String  | global | punct allowed after se      |
  3239.   | sentencegap, sg     | Number  | global | spaces required after sq    |
  3240.   | scroll, scr         | Number  | win    | scroll amount for ^D/^U     |
  3241.   ^---------------------^---------^--------^-----------------------------^
  3242.   The matchchar option stores a list of matching character pairs, for use by 
  3243.  the % visual command. In each pair, the first character should be an opening 
  3244.  parenthesis (or whatever) and the second character should be the corresponding 
  3245.  closing parenthesis. If both characters are identical, then the % command will 
  3246.  try to guess whether it should search forward or backward. The default value 
  3247.  is mc=[]{}(), but you may wish to add :set mc=[]{}()<>\"\" to your ~/.exrc (or 
  3248.  ~/elvis.rc) file. 
  3249.  
  3250.  The paragraphs option stores a list of two-letter nroff paragraph commands. 
  3251.  This list is used by the { and } movement commands. Similarly, the sections 
  3252.  option stores a list of section commands, affecting the [[ and ]] commands. 
  3253.  Their defaults are paragraphs="PPppIPLPQP" and sections="NHSHSSSEse". 
  3254.  
  3255.  The sentenceend, sentencequote, and sentencegap options all affect the ( and ) 
  3256.  sentence motion commands. The sentenceend option is a list of punctuation 
  3257.  characters which can appear at the end of a sentence.  The sentencegap option 
  3258.  is the number spaces that must follow a sentenceend character in order for it 
  3259.  to count as the end of a sentence.  The sentencequote option is a list of 
  3260.  punctuation characters that can appear between the sentenceend character and 
  3261.  the spaces. Their defaults are sentenceend="?!.", sentencequote=")\"", and 
  3262.  sentencegap=2, which meets the proposed POSIX specifications. 
  3263.  
  3264.  The scroll option indicates the number of lines that the ^U and ^D commands 
  3265.  should scroll the screen by. Its default value is 12. 
  3266.  
  3267.  6.1.4 Options that affect input mode 
  3268.  
  3269.   .---------------------.---------.--------.-----------------------------.
  3270.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3271.   |---------------------|---------|--------|-----------------------------|
  3272.   | autoindent, ai      | Boolean | buf    | auto-indent new text        |
  3273.   | inputtab, it        | One-Of  | buf    | input mode's (Tab) key      |
  3274.   | completebinary, cob | Boolean | global | complete names of binaries? |
  3275.   | autotab, at         | Boolean | buf    | allow autoindent to use '\t'|
  3276.   | tabstop, ts         | Number  | buf    | width of tabstop columns    |
  3277.   | shiftwidth, sw      | Number  | buf    | width used by < and >       |
  3278.   | textwidth, tw       | Number  | buf    | width for word-wrap, or 0   |
  3279.   | wrapmargin, wm      | (weird) | win    | set textwidth from right    |
  3280.   | digraph, dig        | Boolean | global | allow X-backspace-Y entry   |
  3281.   ^---------------------^---------^--------^-----------------------------^
  3282.   Setting the autoindent option causes elvis to automatically insert whitespace 
  3283.  at the start of each line, to make it line up with the preceding line. This is 
  3284.  convenient when you're editing C source code. It is off by default. 
  3285.  
  3286.  The inputtab option controls the behavior of the Tab key.  It can be set to 
  3287.  one of the following values: 
  3288.  
  3289.      tab - insert an actual tab character.  This is the   traditional vi 
  3290.       behavior, and the default for user buffers. 
  3291.      spaces - insert enough space characters to look like a   tab character. 
  3292.      filename - attempt filename completion on the preceding   word. 
  3293.      identifier - attempt tag name completion on the   preceeding word.  If 
  3294.       the word is already comlete, or if cursor isn't   at the end of a word, 
  3295.       then it inserts a plain tab character.   This can be handy when you're 
  3296.       editing source code. 
  3297.      ex - a smarter version of filename completion,   it knows enough about ex 
  3298.       command line syntax to avoid some tabbing   mistakes that the filename 
  3299.       setting can make.   It can also complete ex command names, tag names, 
  3300.       option names,   and option values.   This is the default for the (Elvis 
  3301.       ex history) buffer,   which is used for entering in ex commands. 
  3302.  
  3303.  The completebinary option controls whether binary files are included in the 
  3304.  list of possible filename completions. The default setting is 
  3305.  nocompletebinary, so binary files are omitted. This is handy when you're 
  3306.  editing source code -- if your directory contains "foo.c" and "foo.o" (or 
  3307.  "FOO.OBJ" in the Land of the Lost), then typing f-o-o-TAB will complete the 
  3308.  "foo.c" name. 
  3309.  
  3310.  The autotab option affects the behavior of the < and > operator commands, and 
  3311.  the ^D and ^T input mode keystrokes. If autotab is true then elvis will 
  3312.  include tab characters in the indentation whitespace; if it is false then the 
  3313.  indentation whitespace will consist entirely of space characters. By default, 
  3314.  it is true. 
  3315.  
  3316.  Note that if you start with a buffer which contains no tabs, and do a ":set 
  3317.  inputtab=spaces noautotab" then no amount of editing will result in the buffer 
  3318.  containing tabs... unless you get tricky with ^V or something. 
  3319.  
  3320.  The tabstop option affects the way tab characters are displayed, by specifying 
  3321.  how far apart the tab stops should be located. When elvis displays a file with 
  3322.  tabs, it displays the tabs as a variable number of spaces. You should probably 
  3323.  leave this option at its default value (8) since changing this will make your 
  3324.  file look strange in any other context. If you want to use indentation levels 
  3325.  of less than 8 characters, you're better off changing shiftwidth. 
  3326.  
  3327.  The shiftwidth option indicates how far left or right the < and > operator 
  3328.  commands (and the ^D and ^T input mode keystrokes) should shift the line of 
  3329.  text. This is used for adjusting the indentation of lines. 
  3330.  
  3331.  When editing a text file in "normal" display mode, the textwidth option can be 
  3332.  used to cause word-wrap to occur when a line gets too long. The default value 
  3333.  of textwidth is 0, which disables automatic word-wrap. Setting it to any 
  3334.  larger value causes word-wrap to occur when text is inserted into a line, 
  3335.  causing that line to become wider than textwidth columns. (Note that this has 
  3336.  nothing to do with the display formatting of the "html" and "man" display 
  3337.  modes.) 
  3338.  
  3339.  The wrapmargin option is provided for backwards compatibility. It allows you 
  3340.  to set the textwidth relative to the right edge of the window, instead of the 
  3341.  left edge. This option's value is actually derived from the textwidth option's 
  3342.  value and the window's width, so if you resize a window this option's value 
  3343.  will appear to change to correspond to the new width; textwidth will not 
  3344.  change. 
  3345.  
  3346.  Digraphs allow you to enter non-ASCII characters as a combination of two ASCII 
  3347.  characters. There are two ways to enter digraphs: ^K X Y and X backspace Y. 
  3348.  The second form can cause some confusion if you're not expecting it, so the 
  3349.  digraph option was created as a way to disable that second form. The first 
  3350.  form of digraphs is always available. This option is false by default, to 
  3351.  avoid the confusion. 
  3352.  
  3353.  6.1.5 Ex options 
  3354.  
  3355.   .---------------------.---------.--------.-----------------------------.
  3356.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3357.   |---------------------|---------|--------|-----------------------------|
  3358.   | prompt              | Boolean | global | issue ":" prompt in ex mode |
  3359.   | autoprint, ap       | Boolean | global | print current line in ex    |
  3360.   | report              | Number  | global | minimum # lines to report   |
  3361.   | optionwidth, ow     | Number  | global | widths of ":set all" values |
  3362.   ^---------------------^---------^--------^-----------------------------^
  3363.   The prompt option controls whether a ":" prompt is issued before reading each 
  3364.  command line in EX mode. It is true by default, and should usually be left 
  3365.  that way. 
  3366.  
  3367.  The autoprint option causes elvis to display the current line of the edit 
  3368.  buffer in certain circumstances, while you're in EX mode. It is true by 
  3369.  default. 
  3370.  
  3371.  The report option determines the minimum number of lines that must change in a 
  3372.  file, before elvis will bother to display a count of the changed lines. As a 
  3373.  special case, if report=0 then it won't report any changes, or failed 
  3374.  :s/old/new/ commands. Its default value is 5, so small changes won't be 
  3375.  reported but big ones will. 
  3376.  
  3377.  optionwidth sets a limit on how wide a single option can be when output by a 
  3378.  ":set" or ":set all" command. Limiting the widths is a good idea, because 
  3379.  otherwise a single option that has a long value could force the output to use 
  3380.  fewer columns, forcing some options scrolling off the top of the screen before 
  3381.  you can read them. The ":set" command likes to leave at least two spaces after 
  3382.  each column. The default value is optionwidth=24, which guarantees that at 
  3383.  least 3 columns can fit on an 80-character terminal, since 80/(24+2)=3. Note 
  3384.  that optionwidth has no effect on options that you explicitly name in a ":set" 
  3385.  command; for example, ":set tags?" will show you the entire tag path 
  3386.  regardless of the value of optionwidth. 
  3387.  
  3388.  6.1.6 Window statistics 
  3389.  
  3390.   .---------------------.---------.--------.-----------------------------.
  3391.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3392.   |---------------------|---------|--------|-----------------------------|
  3393.   | windowid, id        | Number  | win    | ID number of current window |
  3394.   | columns, cols       | Number  | win    | width of window             |
  3395.   | lines, rows         | Number  | win    | height of window            |
  3396.   ^---------------------^---------^--------^-----------------------------^
  3397.   The windowid option stores the ID number of the current window. These window 
  3398.  IDs are listed by the :buffer command. Some GUIs may also display the window 
  3399.  ID as part of the window's title. This value is set to a unique value 
  3400.  automatically when the window is created. You can't change it. 
  3401.  
  3402.  The columns and lines options indicate the size of the window. 
  3403.  
  3404.  6.1.7 Options affecting the appearance of text 
  3405.  
  3406.   .---------------------.---------.--------.-----------------------------.
  3407.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3408.   |---------------------|---------|--------|-----------------------------|
  3409.   | list, li            | Boolean | win    | show markups, newlines, etc.|
  3410.   | showmarkups, smu    | Boolean | global | show markup at cursor       |
  3411.   | bufdisplay, bd      | String  | buf    | default display mode        |
  3412.   | display, mode       | String  | win    | name of current display mode|
  3413.   | number, nu          | Boolean | win    | display line numbers        |
  3414.   | ruler, ru           | Boolean | win    | display cursor's line/column|
  3415.   | showcmd, sc         | Boolean | win    | display command characters  |
  3416.   | showmatch, sm       | Boolean | win    | highlight matching parens   |
  3417.   | showmode, smd       | Boolean | win    | display the command state   |
  3418.   | showname, snm       | Boolean | global | display the buffer name     |
  3419.   | showtag, st         | Boolean | global | display tag on status line  |
  3420.   | nonascii, asc       | One-Of  | global | how to display non-ascii    |
  3421.   | showstack, sstk     | Boolean | win    | display some debugging info |
  3422.   ^---------------------^---------^--------^-----------------------------^
  3423.   In the "normal" or "syntax" display modes, the list option causes tab 
  3424.  characters to be shown as ^I instead of being expanded to the appropriate 
  3425.  amount of whitespace, and it causes the end of each line to be marked with a $ 
  3426.  character. In "html" or "man" mode, it causes all of the markups to be 
  3427.  displayed. 
  3428.  
  3429.  In "html" or "man" mode, the showmarkups option causes the markup at the 
  3430.  cursor to be displayed, but leaves other markups hidden. It has no effect in 
  3431.  other display modes. This option is off by default, so markups won't suddenly 
  3432.  become visible as you move the cursor around. 
  3433.  
  3434.  Each buffer has a bufdisplay option, which indicates that buffer's preferred 
  3435.  display mode. Whenever a window starts to show a buffer, it switches its 
  3436.  display mode to that buffer's bufdisplay mode. You should set bufdisplay to 
  3437.  the name of a supported display mode: normal, syntax, html, man, tex, or hex. 
  3438.  The compiled-in default is normal but the standard elvis.arf file tries to 
  3439.  choose a more clever default, based on the extension of the buffer's filename. 
  3440.  
  3441.  The display option indicates which display mode the window is currently in. 
  3442.  You can't set this option directly; you must use the :display command instead. 
  3443.  
  3444.  The number option causes a line number to be prepended to the start of each 
  3445.  line.  The line numbers are defined as "one plus the number of newlines 
  3446.  preceding the start of the line," which is not necessarily how the current 
  3447.  display mode defines lines. Consequently, the line numbers may not increment 
  3448.  by 1 every time. These line numbers do correspond to the ruler and the visual 
  3449.  G command, though. This option is false by default. 
  3450.  
  3451.  The ruler option causes the current line number and column number to be 
  3452.  displayed at the bottom of the screen. This uses the same definition of "line 
  3453.  number" as the number option, above. This option is false by default. 
  3454.  
  3455.  When entering multi-character commands, the showcmd option causes the 
  3456.  preceding characters of the command to be displayed at the bottom of the 
  3457.  window. 
  3458.  
  3459.  The showmatch option helps you locate matching parentheses. When you're in 
  3460.  input mode, and you type a ), ], or } character, elvis will cause the matching 
  3461.  (, [, or { character to be highlighted on the screen. This option is false by 
  3462.  default. 
  3463.  
  3464.  The showmode option causes elvis to display a one-word label for its current 
  3465.  parse state in the lower right-hand corner of the window. Usually, this will 
  3466.  be either "Command" or "Input". This option is false by default, but I suggest 
  3467.  you make it true because it really is handy. 
  3468.  
  3469.  The showname option causes elvis to display the buffer name on the bottom row 
  3470.  of each window, unless it has something else to show there such as an error 
  3471.  message. 
  3472.  
  3473.  The showtag option causes elvis to display (on the bottom row of each window) 
  3474.  the name of the tag being defined at the cursor's position. Usually, this 
  3475.  means it tells you the name of the function you're editing. When this option 
  3476.  is true, each time you load a text file into an edit buffer elvis will scan 
  3477.  the "tags" file for any tags which are defined in the text file. Elvis builds 
  3478.  a table of those tags, and stores it in RAM for the sake of speed. Then, each 
  3479.  time the window is updated, elvis will compare the cursor position to the 
  3480.  definition lines of each tag, and display the name of the last tag it found 
  3481.  which is defined at or before the cursor position. By default, this option is 
  3482.  false because the tag loading can be slow. 
  3483.  
  3484.  The version of ctags distributed with elvis has a "-l" flag which causes it to 
  3485.  generate "ln" hints, which give the line number where the tag is defined. 
  3486.  Elvis can use these hints to greatly accelerate the loading of tags when you 
  3487.  switch files. The "-l" option is enabled by default if you don't give any 
  3488.  flags, so you don't need to give it explicitly unless you're also giving some 
  3489.  other flags. 
  3490.  
  3491.  NOTE: The MS-DOS version of elvis is normally configured to omit the showtag 
  3492.  option, because memory is tight in the lower 640K. 
  3493.  
  3494.  The nonascii option tells elvis how to display characters 0x80 through 0xff. 
  3495.  It can have one of the following values: 
  3496.  
  3497.           .-------.------------------------------------------------.
  3498.           | VALUE | MEANING                                        |
  3499.           |-------|------------------------------------------------|
  3500.           | all   | All characters 0x80-0xff are visible           |
  3501.           | most  | Chars 0xa0-0xff are visible, but not 0x80-0x9f |
  3502.           | none  | Chars 0x80-0xff are not visible                |
  3503.           | strip | Convert 0xa0-0xfe to ASCII; others not visible |
  3504.           ^-------^------------------------------------------------^
  3505.  Any characters which aren't visible will be displayed as '.' characters. Note 
  3506.  that this only affects the way the characters are displayed; they are actually 
  3507.  stored with their true 8-bit value. The default value of nonascii is "most", 
  3508.  because that is the correct value for the Latin-1 symbol set. 
  3509.  
  3510.  The showstack option causes some debugging output to appear on the bottom row 
  3511.  of the window. It is false by default, and you should leave it that way. 
  3512.  
  3513.  6.1.8 Options for a particular display mode 
  3514.  
  3515.   .---------------------.---------.--------.-----------------------------.
  3516.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3517.   |---------------------|---------|--------|-----------------------------|
  3518.   | commentfont, cfont  | One-Of  | syntax | font used for comments      |
  3519.   | stringfont, sfont   | One-Of  | syntax | font used for strings       |
  3520.   | keywordfont, kfont  | One-Of  | syntax | font used for reserved words|
  3521.   | functionfont, ffont | One-Of  | syntax | font used for function names|
  3522.   | variablefont, vfont | One-Of  | syntax | font used for variables     |
  3523.   | prepfont, pfont     | One-Of  | syntax | font used for preprocessor  |
  3524.   | otherfont, ofont    | One-Of  | syntax | font used for other symbols |
  3525.   | includepath, inc    | String  | syntax | where to find #include files|
  3526.   ^---------------------^---------^--------^-----------------------------^
  3527.      In the syntax display mode, the commentfont, stringfont, keywordfont, 
  3528.  functionfont, variablefont, prepfont and otherfont options specify which font 
  3529.  is to be used for different parts of the source code. Each option can be set 
  3530.  to normal, bold, emphasized, italic, underlined, or fixed. The prepfont is 
  3531.  used for preprocessor directives. The keywordfont is used for reserved words 
  3532.  such as "int" and "return". The functionfont is used for any other word which 
  3533.  is followed by an opening parenthesis character. The otherfont is used for any 
  3534.  other word which matches some language-dependent criteria; for C, the word 
  3535.  must either contain no lowercase letters or end with a "_t" (probably a 
  3536.  constant or a user-defined type). The variablefont is used for all other 
  3537.  words. Punctuation is always in the normal font; you can't control that. 
  3538.  
  3539.  You can set these variables during initialization, in the .exrc or elvis.rc 
  3540.  file. After that, your window must actually be in the "syntax" mode for these 
  3541.  to be accessible. 
  3542.  
  3543.  As a separate step, some user interfaces allow you to specify a color to be 
  3544.  used for each font, via the :color command. 
  3545.  
  3546.  The includepath option contains a list of directory names where elvis should 
  3547.  look for #include files. When you look up a tag whose name begins with a quote 
  3548.  character, elvis searches through those directories for a file with the same 
  3549.  name as the tag (with the quotes stripped off). This means that you can move 
  3550.  the cursor onto a #include file name, hit ^], and have elvis load the 
  3551.  indicated header file. 
  3552.  
  3553.  6.1.9 Messages 
  3554.  
  3555.   .---------------------.---------.--------.-----------------------------.
  3556.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3557.   |---------------------|---------|--------|-----------------------------|
  3558.   | terse, te           | Boolean | global | don't translate messages    |
  3559.   | verbose             | Numeric | global | give more status messages   |
  3560.   | errorbells, eb      | Boolean | global | ring bell for error message |
  3561.   | warningbells, wb    | Boolean | global | ring bell for warning msg   |
  3562.   | flash, vbell        | Boolean | global | substitute flash for bell   |
  3563.   ^---------------------^---------^--------^-----------------------------^
  3564.   The terse option indicates whether elvis should attempt to translate messages 
  3565.  via the elvis.msg file. If terse is true, then no such translation takes 
  3566.  place; the built-in messages are used. If terse is false, then elvis will 
  3567.  search through the file (actually the "Elvis messages" buffer) for a line 
  3568.  which looks like "terse:verbose" and if found it'll use the verbose version 
  3569.  instead. By default, terse is false. 
  3570.  
  3571.  The verbose option has nothing to do with the terse option. Instead, it 
  3572.  indicates the number of -V flags given when elvis was invoked. Larger values 
  3573.  indicate that the user wants more status messages to be generated. This is 
  3574.  handy when elvis isn't initializing itself the way you expected it to; elvis' 
  3575.  initialization code frequently tests the value of verbose and automatically 
  3576.  writes status messages when verbose is set to a high enough level. 
  3577.  
  3578.  The errorbells and warningbells options cause the terminal's bell to ring when 
  3579.  an error message or warning message is generated, respectively. By default the 
  3580.  errorbells option is true, and the warningbells option is false. 
  3581.  
  3582.  Setting the flash option causes elvis to use a visible alternative to the 
  3583.  bell, if one exists. This is nice in a crowded terminal room. By default this 
  3584.  option is false. 
  3585.  
  3586.  6.1.10 Words 
  3587.  
  3588.   .---------------------.---------.--------.-----------------------------.
  3589.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3590.   |---------------------|---------|--------|-----------------------------|
  3591.   | true, True          | String  | global | locale's True value         |
  3592.   | false, False        | String  | global | locale's False value        |
  3593.   | submit, Submit      | String  | x11    | locale's Submit label       |
  3594.   | cancel, Cancel      | String  | x11    | locale's Cancel label       |
  3595.   | help, Help          | String  | x11    | locale's Help label         |
  3596.   ^---------------------^---------^--------^-----------------------------^
  3597.   These options store words, which are translated via the elvis.msg file when 
  3598.  elvis starts up. The default versions of all of them are their capitalized 
  3599.  English names. 
  3600.  
  3601.  The true and false options exist primarily to allow the english words true and 
  3602.  false to be used in expressions to represent Boolean literals.  Also, the 
  3603.  value of false is used as an alternative false string, in addition to "", "0", 
  3604.  or "false".  (In a Boolean context, any string that isn't false is considered 
  3605.  to be true, so elvis never compares a string to the true option's value.)  A 
  3606.  Boolean option will return the value of either the true or false option, as 
  3607.  appropriate. 
  3608.  
  3609.  If you're using the "x11" user interface, then values of the submit and cancel 
  3610.  options are used as the labels for the [Submit] and [Cancel] buttons in a 
  3611.  dialog.  Also, if the dialog contains any Boolean options, the value will be 
  3612.  displayed using values of the true and false options. 
  3613.  
  3614.  Currently the help option does nothing.  Eventually I expect to add pull-down 
  3615.  menus to the "x11" interface, though, and in Motif menu bars the "Help" menu 
  3616.  traditionally appears on the far right edge.  The value of the help option 
  3617.  will allow elvis to recognize the "Help" menu. 
  3618.  
  3619.  6.1.10 Options for a particular user interface 
  3620.  
  3621.   .---------------------.---------.--------.-----------------------------.
  3622.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3623.   |---------------------|---------|--------|-----------------------------|
  3624.   | term, ttytype       | String  | tcap   | terminal's termcap entry    |
  3625.   | ttyrows, ttylines   | Number  | tcap   | height of screen            |
  3626.   | ttycolumns, ttycols | Number  | tcap   | width of screen             |
  3627.   | ttyunderline, ttyu  | Boolean | tcap   | okay to mix color & underln |
  3628.   | codepage, cp        | Number  | win32  | console character set       |
  3629.   |---------------------|---------|--------|-----------------------------|
  3630.   | scrollbar, sb       | Boolean | (gui)  | enable the scrollbar        |
  3631.   | toolbar, tb         | Boolean | (gui)  | enable the toolbar          |
  3632.   | statusbar, stb      | Boolean | (gui)  | enable the statusbar        |
  3633.   |---------------------|---------|--------|-----------------------------|
  3634.   | menubar, mb         | Boolean | windows| enable the menubar          |
  3635.   | font, fnt           | String  | windows| base font                   |
  3636.   | normalstyle, nfn    | String  | windows| n or combination of b/i/u   |
  3637.   | boldstyle, bfn      | String  | windows| n or combination of b/i/u   |
  3638.   | italicstyle, ifn    | String  | windows| n or combination of b/i/u   |
  3639.   | fixedstyle, ffn     | String  | windows| n or combination of b/i/u   |
  3640.   | emphasizedstyle, efn| String  | windows| n or combination of b/i/u   |
  3641.   | underlinedstyle, nfn| String  | windows| n or combination of b/i/u   |
  3642.   |---------------------|---------|--------|-----------------------------|
  3643.   | normalfont, xfn     | String  | x11    | name of normal font         |
  3644.   | boldfont, xfb       | String  | x11    | name of bold font           |
  3645.   | italicfont, xfi     | String  | x11    | name of italic font         |
  3646.   | controlfont, xfc    | String  | x11    | name of toolbar font        |
  3647.   | underline, uln      | Boolean | x11    | enables underlining         |
  3648.   | toolbar, xtb        | Boolean | x11    | enables the toolbar         |
  3649.   | scrollbarleft, xsl  | Boolean | x11    | enable scrollbar on side    |
  3650.   | scrollbarwidth, xsw | Number  | x11    | size of scrollbar, in pixels|
  3651.   | scrollbartime, xst  | Number  | x11    | delay for scrollbar repeat  |
  3652.   | borderwidth, xbw    | Number  | x11    | size of text area's border  |
  3653.   | dblclicktime, xdct  | Number  | x11    | double-click speed, 1/10 Sec|
  3654.   | blinktime, xbt      | Number  | x11    | cursor blink rate, 1/10 Sec |
  3655.   | textcursor, tc      | Number  | x11    | one of hollow, opaque, xor  |
  3656.   | xrows, xlines       | Number  | x11    | height of new windows       |
  3657.   | xcolumns, xcols     | Number  | x11    | width of new windows        |
  3658.   | firstx, xpos        | Number  | x11    | horiz. position of first win|
  3659.   | firsty, ypos        | Number  | x11    | vert. position of first win |
  3660.   | stagger             | Number  | x11    | offset for next new window  |
  3661.   | icon                | Boolean | x11    | use the built-in icon?      |
  3662.   | stopshell, ssh      | String  | x11    | interactive shell command   |
  3663.   | autoiconify, aic    | Boolean | x11    | iconify old window          |
  3664.   | altkey, metakey     | One of  | x11    | effect of the Alt key       |
  3665.   | focusnew, fn        | Boolean | x11    | force focus into new window |
  3666.   | warpto, wt          | One of  | x11    | ^W^W forces pointer movement|
  3667.   | warpback, xwb       | Boolean | x11    | upon exit, point to xterm   |
  3668.   | outlinemono, om     | Number  | x11    | char outlining for X11-mono |
  3669.   ^---------------------^---------^--------^-----------------------------^
  3670.  
  3671.  
  3672.  6.1.10.1 Termcap options 
  3673.  
  3674.   The term, ttyrows, ttycolumns, and ttyunderline options are only present if 
  3675.  you're using the termcap user interface. They indicate the name of the termcap 
  3676.  entry being used (normally taken from the TERM environment variable), the size 
  3677.  of the screen, and whether it is safe to try underlining text when colors have 
  3678.  been assigned to fonts. The ttyunderline option is true by default, but it 
  3679.  should be made false on the Linux console, because the console driver has a 
  3680.  bug which prevents underlined text from being shown in color. 
  3681.  
  3682.  The codepage option only exists in the Win32  version with the termcap 
  3683.  interface (WindowsNT or Windows95, in console mode). It indicates which code 
  3684.  page (character map) the console is using. Its value is persistent; if you 
  3685.  change it in elvis, the console will remain changed even after you exit elvis. 
  3686.  Changing the code page has no effect on the digraph table, or elvis' idea of 
  3687.  which non-ASCII characters are printable or should be treated as letters; it 
  3688.  only reconfigures the console driver. Typical values are 437 for the standard 
  3689.  IBM PC character set, and 850 for extra European characters. 
  3690.  
  3691.  6.1.10.2 Options common to Windows and X11 
  3692.  
  3693.   The scrollbar, toolbar, and statusbar options indicate whether the scrollbar, 
  3694.  toolbar, and statusbar should be visible, respectively. By default, all are 
  3695.  are visible. 
  3696.  
  3697.  6.1.10.2 Windows options 
  3698.  
  3699.  The menubar option indicates whether the menu bar should be visible. By 
  3700.  default, it is visible. 
  3701.  
  3702.  The font option stores the name of the base font. The easiest way to set it is 
  3703.  via the "Options->Font" menu item. 
  3704.  
  3705.     The normalstyle, boldstyle, italicstyle, fixedstyle, emphasizedstyle, and 
  3706.  underlinedstyle options determine how elvis will derive each of its fonts from 
  3707.  the base font. The values of these options are strings.  If the string is "n" 
  3708.  then the base font is used unmodified.  Other possibilities are any 
  3709.  combination of "b" for bold, "i" for italic (slanted), and "u" for underlined. 
  3710.  For example, ":set ufn=bu" causes elvis' underlined font to be drawn in bold 
  3711.  with an underline. 
  3712.  
  3713.  6.1.10.3 X11 options 
  3714.  
  3715.  The other options all apply to the x11 interface. The normalfont, boldfont, 
  3716.  and italicfont options control the X fonts used for displaying text. 
  3717.  Typically, the elvis.ini or ".exrc" file will set these. If you do choose to 
  3718.  set them in one of these files, be sure to have your initialization script 
  3719.  check which interface is being used because if elvis is using the termcap 
  3720.  interface then these x11 options won't exist. These options all default to an 
  3721.  empty string; this is a special case which causes elvis to use the "fixed" 
  3722.  font for normal text, and to derive the bold and italic fonts from the normal 
  3723.  font. 
  3724.  
  3725.  The controlfont option determines which font is used for displaying the labels 
  3726.  of toolbar buttons, and also the statusbar. Unlike the other fonts, this one 
  3727.  is permitted to have a variable pitch. If it is unset, then elvis will use the 
  3728.  font named "variable" by default. 
  3729.  
  3730.  The underline option determines whether characters in the "underlined" font 
  3731.  should be displayed as underlined.  Normally, underline is true, so they are 
  3732.  underlined.  Setting nounderline will cause them to be displayed as normal 
  3733.  characters, but in the color of underlined text. 
  3734.  
  3735.  The toolbar option controls whether the toolbar is visible or not. It is 
  3736.  normally true, which makes the toolbar visible. The toolbar can be configured 
  3737.  via the :gui command. 
  3738.  
  3739.  The statusbar option controls the visibility of the statusbar. It is true by 
  3740.  default, which makes the statusbar is visible. The statusbar always displays 
  3741.  the information which would otherwise be shown on the bottom row of the text 
  3742.  area only when the ruler and showmode options were true. When you press a 
  3743.  toolbar button, the button's one-line description is shown on the statusbar. 
  3744.  
  3745.  The scrollbarleft option deterimines which side of the window the scrollbar 
  3746.  will be drawn on. This option is false by default, so the scrollbar appears on 
  3747.  the right side of the window. Making it true will cause the scrollbar to be 
  3748.  drawn on the left. 
  3749.  
  3750.  The scrollbarwidth option controls the size of the x11 scrollbar. The default 
  3751.  value is 14 pixels, and the allowed range is 5 to 40 pixels. 
  3752.  
  3753.  The scrollbar buttons automatically repeat if you hold a mouse button down 
  3754.  scrollbartime tenths of a second. The default is 4 tenths of a second. 
  3755.  
  3756.  The main text area of a window looks better when the characters aren't drawn 
  3757.  immediately adjacent to the edge. The borderwidth option allows you to specify 
  3758.  how many pixels should be left blank between a character and any edge of the 
  3759.  text area. The default is 1 pixel. 
  3760.  
  3761.  The dblclicktime option allows you to adjust the speed of mouse double-clicks 
  3762.  to match your own clicking habits. The default is 3 tenths of a second. 
  3763.  
  3764.  The blinktime option controls the cursor blink rate. If set to 0, the cursor 
  3765.  will not blink. If set to a value from 1 to 10, then the cursor will first be 
  3766.  visible for that many tenths of a second, and then invisible for the same 
  3767.  amount of time. The cursor will only blink in the window which currently has 
  3768.  keyboard focus. 
  3769.  
  3770.  The textcursor option controls the way the block text cursor is drawn. It can 
  3771.  be xor, hollow, or opaque. The default is xor, which causes the cursor to be 
  3772.  drawn as a filled rectangle with the XOR bitblt function. This converts the 
  3773.  background color to the cursor color, and the foreground color to an 
  3774.  unpredictable color; hopefully the foreground color will contrast with the 
  3775.  cursor color well enough to allow you to discern what the underlying character 
  3776.  is. The hollow cursor style causes the cursor to be drawn as an unfilled 
  3777.  rectangle. This allows you to easily see the underlying character, and detect 
  3778.  whether it is highlighted or not. The opaque cursor style draws a filled 
  3779.  rectangle, which is easier to locate but you can only see the underlying 
  3780.  character between blinks. 
  3781.  
  3782.  The xrows and xcolumns options control the initial size of windows. They 
  3783.  default to 34 and 80, respectively, and can also be set via the -geometry 
  3784.  command-line flag. After a window has been created, you can use your window 
  3785.  manager to resize the window. 
  3786.  
  3787.  The firstx and firsty options, if set, control the position of the first 
  3788.  window that elvis creates. If they are unset, then elvis doesn't specify a 
  3789.  position for the window. The -geometry command-line flag can be used to set 
  3790.  these options. After the first window has been created, if the stagger option 
  3791.  is set to a non-zero value then any new windows are created that many pixels 
  3792.  down and to the right of the current window.  If stagger is zero, then elvis 
  3793.  won't specify a position for the new windows, so the window manager can choose 
  3794.  the location itself. 
  3795.  
  3796.  The icon option can only be set in an initialization file such as elvis.ini or 
  3797.  ".exrc"; once the first window has been created it is too late to change it. 
  3798.  This option controls whether the window will be given the default, built-in 
  3799.  icon. It is true by default, so windows will get the icon. This is usually a 
  3800.  good thing. Some window managers don't allow you to override built-in icons, 
  3801.  though, so if you want your window manager to use a different icon for elvis 
  3802.  then you'll need to have a "set noicon" in your elvis.ini file. 
  3803.  
  3804.  The stopshell option stores a command which runs an interactive shell. It is 
  3805.  used for the :shell and :stop ex commands, and the ^Z visual command. 
  3806.  Normally, this is set to "xterm &" so you get a shell in a window. The "&" at 
  3807.  the end of the command allows elvis to continue responding to user input while 
  3808.  the shell is running. 
  3809.  
  3810.  When the ^W^W visual command switches keyboard control to an X11 window which 
  3811.  as been iconified, elvis automatically deiconifies it. When it does this, if 
  3812.  the autoiconify option is set then elvis will iconify the previous window, so 
  3813.  the number of iconified elvis windows remains constant. By default, this 
  3814.  option is false. Regardless of whether autoiconify is set, you can always use 
  3815.  your window manager to iconify or deiconify windows manually. 
  3816.  
  3817.  The altkey option controls the effect of the Alt or Meta keys. It can be set 
  3818.  to either control-O, setbit, or ignore. The ignore value is self explanatory. 
  3819.  If the option is set to control-O then the x11 interface will simulate a ^O 
  3820.  keystroke before each actual keystroke. This is handy because if you're in 
  3821.  input mode you can just hold down Alt/Meta to perform a series of visual 
  3822.  commands. If the option is set to setbit then the x11 interface will set the 
  3823.  most significant bit of each ASCII character while the Alt/Meta key is held 
  3824.  down. Some other programs use this trick as a means of entering non-ASCII 
  3825.  characters. (Elvis has a better way though; check out the :digraph command.) 
  3826.  The default is setbit. 
  3827.  
  3828.  The focusnew option causes elvis to force input focus to switch to any newly 
  3829.  created window, or to one which has been deiconified. It is true by default; 
  3830.  making it false (":set nofocusnew") prevents elvis from forcing a change of 
  3831.  input focus in those two situations. Note that elvis always forces a change of 
  3832.  input focus when you give a command which switches windows, such as ^W^W. 
  3833.  
  3834.  The warpto option can cause elvis to force the mouse pointer to move whenever 
  3835.  you use keyboard commands such as ^W^W to switch from one elvis window to 
  3836.  another. There are two reasons you may wish to do this: either your window 
  3837.  manager requires the pointer to be in a window for that window to receive 
  3838.  keystrokes, or you want to have your X server automatically pan the screen to 
  3839.  bring the next window into view. 
  3840.  
  3841.  You can set the warpto option to any one of the following values: don't, 
  3842.  scrollbar, origin, or corners. The default is don't which prevents any 
  3843.  automatic pointer movement. The scrollbar value causes the pointer to move to 
  3844.  the scrollbar, and origin moves it to the upper-left corner. The corners value 
  3845.  causes the pointer to move first to the corner furthest from the window's text 
  3846.  cursor, and then to the nearest corner; this will cause the X server to pan 
  3847.  (if necessary) to bring the entire window into view. 
  3848.  
  3849.  The warpback option, if set, causes the X terminal's graphic cursor to be 
  3850.  moved back to the window which held keyboard focus at the time when elvis was 
  3851.  started. Usually this will be the xterm where you typed in the "elvis 
  3852.  files..." command line. Just as the firstx, firsty, and stagger options are 
  3853.  intended to allow mouseless positioning of elvis windows, the warpback option 
  3854.  is intended to serve as a mouseless way to switch keyboard focus back to the 
  3855.  original xterm, so that mouse haters will find elvis' x11 interface as 
  3856.  convenient to use as the termcap interface. By default, warpback is false. 
  3857.  
  3858.  The outlinemono option affects the way that text is drawn against a stippled 
  3859.  background when elvis is run on monochrome X terminals (or with the -mono 
  3860.  command-line flag).  It has no effect on color systems. Because characters 
  3861.  drawn on a stippled background can be hard to read, elvis can draw a white 
  3862.  outline around the black characters.  The value of outlinemono is a number 
  3863.  that indicates how thick the outline should be.  3 is the thickest supported 
  3864.  outline, and 0 is no outline at all. The default is 2. 
  3865.  
  3866.  6.1.11 Regular expression options 
  3867.  
  3868.   .---------------------.---------.--------.-----------------------------.
  3869.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3870.   |---------------------|---------|--------|-----------------------------|
  3871.   | ignorecase, ic      | Boolean | global | regexp uppercase=lowercase  |
  3872.   | magic, ma           | Boolean | global | use normal regexp syntax    |
  3873.   | autoselect, as      | Boolean | global | visibly mark searched text  |
  3874.   | wrapscan, ws        | Boolean | global | searching wraps at EOF<->BOF|
  3875.   | gdefault, gd        | Boolean | global | default change all instances|
  3876.   | edcompatible, ed    | Boolean | global | remember regsub flags       |
  3877.   | saveregexp, sre     | Boolean | global | remember regexp to use as //|
  3878.   ^---------------------^---------^--------^-----------------------------^
  3879.   Setting the ignorecase option to true will cause elvis to treat uppercase and 
  3880.  lowercase letters as being equal, except in character list metacharacters. 
  3881.  When ignorecase is false (the default), they are treated as different. 
  3882.  
  3883.  The magic option selects one of two different syntaxes for regular 
  3884.  expressions. When magic is true, it uses the normal syntax in which * and . 
  3885.  are special characters. When magic is false, it uses a simplified syntax. 
  3886.  
  3887.  The autoselect option, when true, causes a successful visual search command 
  3888.  such as /regexp to visibly mark the matching text just like the v command 
  3889.  does. This is intended to compensate for elvis 2.1's lack of a "c" option in 
  3890.  the :s/old/new/ command. By default, autoselect is false. 
  3891.  
  3892.  The wrapscan option determines what happens when a search command bumps into 
  3893.  the top or bottom of a buffer. If wrapscan is true, then the search will wrap 
  3894.  around to the other end of the buffer, so if there's a match anywhere in the 
  3895.  buffer, the search will find it. If wrapscan is false, then searches fail when 
  3896.  they hit the end of the buffer. By default, wrapscan is true. 
  3897.  
  3898.  The gdefault option affects the default behavior of the :s/old/new/ command. 
  3899.  It is false by default, which causes :s/old/new/ to assume a count of 1 so 
  3900.  only the first instance in each line is changed. Making gdefault true will 
  3901.  cause it change all instances in each line, as though the "g" flag had 
  3902.  been given. If you give an explicit count or "g" flag, then the value of 
  3903.  gdefault is ignored. 
  3904.  
  3905.  The edcompatible option causes elvis to remember any flags that are passed 
  3906.  into the :s/old/new/flags command, and use them as the default for the next 
  3907.  such command. Explicitly naming a flag will toggle that flag's value. This is 
  3908.  not the way the old ed editor worked, but this option's name and behavior are 
  3909.  traditional in vi. This option is false by default. 
  3910.  
  3911.  The saveregexp option is normally true, which causes elvis to remember each 
  3912.  regular expression.  If, in a latter command, you give an empty regular 
  3913.  expression, then elvis will recall the saved regular expression instead.  This 
  3914.  also affects the n and N commands.  You may wish to turn this option off 
  3915.  temporarily in a the lib/elvis.arf file if you're using any regular 
  3916.  expressions there, so that loading a file doesn't interfere with n and N. 
  3917.  
  3918.  6.1.12 Tag options 
  3919.  
  3920.   .---------------------.---------.--------.-----------------------------.
  3921.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3922.   |---------------------|---------|--------|-----------------------------|
  3923.   | taglength, tl       | Number  | global | significant length of tags  |
  3924.   | tags, tagpath       | String  | global | list of possible tag files  |
  3925.   | tagstack, tsk       | Boolean | global | remember origin of tag srch |
  3926.   | tagprg, tp          | String  | global | external tag search program |
  3927.   | tagprgonce, tpo     | String  | global | like tagprg, but auto-resets|
  3928.   ^---------------------^---------^--------^-----------------------------^
  3929.   These options control how elvis performs tag lookup, as for the :tag ex 
  3930.  command or the ^] visual command. You should also check out the previoustag 
  3931.  and showtag options. 
  3932.  
  3933.  The taglength option defines how many characters are significant in a tag 
  3934.  name. By default this option is set to 0, which is a special value indicating 
  3935.  that all characters are significant. If you have a lot of long names, you 
  3936.  might want to set this to some other value so that you could type in 
  3937.  abbreviated names. 
  3938.  
  3939.  The tags option stores a list of filenames or directory names where tags are 
  3940.  stored. (For directory names, it looks for a file named "tags" in that 
  3941.  directory.) When performing tag lookup, elvis will begin by looking for it in 
  3942.  the first directory/file mentioned in the list; if it doesn't find it there, 
  3943.  then it moves on to the next one, and so on. By default, it just looks in a 
  3944.  file named "tags" in the current directory. 
  3945.  
  3946.  In a path, names which start with "./" (or ".\" in MS-Windows) are assumed to 
  3947.  be relative to the directory of the current file.  This means that ":set 
  3948.  tags=./tags:tags" will cause elvis to first check the "tags" file in the 
  3949.  directory of the current text file, and then the "tags" file in the current 
  3950.  directory. 
  3951.  
  3952.  NOTE: Traditionally, this elements in this path have been space-delimited. 
  3953.  Since every other path in any other context is either colon-delimited (for 
  3954.  Unix) or semicolon-delimited (for Microsoft), and it is becoming more common 
  3955.  for filenames to contain spaces, elvis uses colons or semicolons for the tag 
  3956.  path too.  This makes elvis' "tags" settings incompatible with other versions 
  3957.  of vi, though. 
  3958.  
  3959.  If the tagstack option is true, then before switching to the file and location 
  3960.  of a looked-up tag, elvis will store the original file and position on a 
  3961.  stack. Later, you can use the :pop or visual ^T commands to return to your 
  3962.  original position. If tagstack is false, then the tag stack is unaffected by 
  3963.  tag look-up. It is true by default. 
  3964.  
  3965.  If the tagprg option is set to any value other than "", then whenever you try 
  3966.  to do a tag search via :tag or :browse, elvis will execute tagprg's value as a 
  3967.  shell command and interpret its stdout as a list of matching tags.  Before the 
  3968.  command is run, it is evaluated using the simpler expression syntax with $1 
  3969.  indicating where the arguments should go. The default value of tagprg is "" 
  3970.  which causes elvis to use the internal tag search algorithm. 
  3971.  
  3972.  The tagprgonce options acts just like the tagprg option, except that 
  3973.  tagprgonce automatically reverts to "" the first time it is used.  If tagprg 
  3974.  and tagprgonce are both set, then tagprgonce is used. It exists mostly so you 
  3975.  can easily write aliases which perform specialized searches, without 
  3976.  interfering with normal tag searches.  The following example creates a new 
  3977.  :text command which finds instances of a given text string in any *.c or *.h 
  3978.  files. (Note that the "set tagprgonce..." command should be entered on one 
  3979.  line; it is shown here on three lines simply as a typographical convenience.) 
  3980.  
  3981.   :alias text {
  3982.   set tagprgonce="grep -nsw '(quote(\"'\",$1))' *.[ch] /dev/null \|
  3983.       sed 's/^\\\\\\(.*\\\\\\):\\\\\\(.*\\\\\\):.*/!^    \\1     \\2/'"
  3984.   tag!? !*
  3985.   }
  3986.  
  3987.  NOTE: You might also consider using the ccprg option for this sort of thing, 
  3988.  since the :cc command has a smarter line parser than the :tag command. 
  3989.  
  3990.  6.1.13 Window update parameters 
  3991.  
  3992.   .---------------------.---------.--------.-----------------------------.
  3993.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  3994.   |---------------------|---------|--------|-----------------------------|
  3995.   | exrefresh, er       | Boolean | global | redraw scrn after each line |
  3996.   | nearscroll, ns      | Number  | global | scroll vs. jump¢er param|
  3997.   | wrap                | Boolean | win    | how long lines are displayed|
  3998.   | sidescroll, ss      | Number  | win    | sideways scrolling amount   |
  3999.   | optimize, op        | Boolean | global | run faster                  |
  4000.   | animation, anim     | Number  | global | animation macro speed       |
  4001.   | window, wi          | Number  | global | lines to show for :z command|
  4002.   | pollfrequency, pf   | Number  | global | rate of testing for ^C      |
  4003.   | maptrace, mt        | One of  | global | debugger: off, run, or step |
  4004.   | maplog, mlog        | One of  | global | logging: off, reset, append |
  4005.   ^---------------------^---------^--------^-----------------------------^
  4006.   The exrefresh option affects the frequency of window updates when in EX mode. 
  4007.  It is normally false, which causes the window to be refreshed at the end of 
  4008.  each EX command. If you set exrefresh to true, then elvis will update the 
  4009.  window's image every time an output line is generated; this makes the command 
  4010.  run much slower, but gives you more feedback. 
  4011.  
  4012.  The nearscroll option controls elvis' behavior when the cursor is moved off 
  4013.  the top or bottom of the window. If the new cursor position is within 
  4014.  nearscroll lines of the window, then the window is scrolled to bring the new 
  4015.  line into view. If the new cursor position is outside that range, then elvis 
  4016.  uses a "jump and center" approach, in which the window's image is drawn from 
  4017.  scratch with the new cursor line shown in the center of the window. Its 
  4018.  default value is 5. 
  4019.  
  4020.  The wrap option determines how elvis will display lines which are too long to 
  4021.  fit on a single row of the display. It is true by default, which causes long 
  4022.  lines to be wrapped onto multiple rows of the display. This is the traditional 
  4023.  vi behavior. Changing it to false will cause long lines to be partially 
  4024.  displayed on a single row of the display; you can scroll sideways to reveal 
  4025.  the rest of the line my moving the cursor onto it, and then off the edge. 
  4026.  
  4027.  If the wrap option is false (indicating that long lines should be displayed 
  4028.  via side-scrolling) then the sidescroll option controls the scrolling 
  4029.  increment. The default is 8, so the display will scroll sideways in chunks of 
  4030.  8 characters at a time. 
  4031.  
  4032.  The optimize option affects the efficiency of screen updates. It is normally 
  4033.  true, which tells elvis to update the screen image only when it must wait for 
  4034.  user input. If you make it false, then elvis will update the screen after 
  4035.  every command; among other things, this allows you to see intermediate effects 
  4036.  of macros. 
  4037.  
  4038.  The animation option is similar. When the optimize option is true, elvis still 
  4039.  refreshes the screen periodically while executing a large macro so that 
  4040.  animation macros can be seen in all their glory. Elvis attempts to figure out 
  4041.  which macros are loops, and when one of those macros is invoked elvis 
  4042.  considers updating the screen. If animation=1 then elvis updates the screen 
  4043.  every time; when animation=2 it updates the screen an alternate invocations of 
  4044.  those macros, and so on. The default, chosen simply through experimentation, 
  4045.  is 3. 
  4046.  
  4047.  Sometimes elvis will choose the wrong macros to refresh. If that happens, then 
  4048.  try running the macro with optimize option turned off. For example, the 
  4049.  bouncing ball macros look better with optimize turned off. 
  4050.  
  4051.  The window option stores the default number of lines to be displayed by the :z 
  4052.  command. Historically it has also been used for forcing vi to update only a 
  4053.  portion of the screen, but elvis doesn't use it for that. 
  4054.  
  4055.  When elvis is performing some time-consuming operations, such as a global 
  4056.  substitution, it will periodically check to see if the user is trying to 
  4057.  cancel the operation. For some user interfaces, this inspection takes a 
  4058.  significant amount of time so elvis allows the pollfrequency option to reduce 
  4059.  the frequency of these checks. The default is 20. Larger values of 
  4060.  pollfrequency will make global substitutions run faster; smaller values make 
  4061.  elvis respond to ^C sooner. 
  4062.  
  4063.  The maptrace option controls elvis' built-in macro debugger. It can be off, 
  4064.  run or step. The default is off, which causes macros to run normally. If you 
  4065.  change it to run then elvis will display the contents of the mapping queue at 
  4066.  the bottom of the screen while running any macro. The step value also displays 
  4067.  the mapping queue, but then waits for a keystroke before proceeding. If the 
  4068.  keystroke is ^C then the macro is terminated. If the keystroke is r then 
  4069.  maptrace is set to run. Any other keystroke causes elvis to pause again after 
  4070.  processing the macro's next character. See section 16.3 How to debug macros 
  4071.  for more suggestions for debugging macros. 
  4072.  
  4073.  The maplog option can be used to log the information displayed by the maptrace 
  4074.  option. It also logs any ex commands that are executed, other than those that 
  4075.  you enter manually. It is off by default. Setting it to append causes the map 
  4076.  trace information to be appended to an internal edit buffer named "Elvis map 
  4077.  log". Setting it to reset causes that buffer to be clobbered before the next 
  4078.  map trace; when that happens, maplog will be automatically switched to append. 
  4079.  You can view the logged data via the command... 
  4080.  
  4081.   :("Eml)sp
  4082.  or the long version, ":(Elvis map log)split". 
  4083.  
  4084.  6.1.14 Cache options 
  4085.  
  4086.   .---------------------.---------.--------.-----------------------------.
  4087.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4088.   |---------------------|---------|--------|-----------------------------|
  4089.   | blkcache, cache     | Number  | global | number of blocks in cache   |
  4090.   | blksize, bsz        | Number  | global | size of cache block         |
  4091.   | blkfill, bfill      | Number  | global | initial chars per text block|
  4092.   | blkhash, hash       | Number  | global | size of cache hash table    |
  4093.   | blkgrow, bgr        | Number  | global | allocation table parameter  |
  4094.   | blkhit, bh          | Number  | global | # of block requests in cache|
  4095.   | blkmiss, bm         | Number  | global | # of block req. not in cache|
  4096.   | blkwrite, bw        | Number  | global | # of blocks written         |
  4097.   | sync                | Boolean | global | force changes to disk       |
  4098.   ^---------------------^---------^--------^-----------------------------^
  4099.    You probably don't need to know about the "blk" options. The blkcache option 
  4100.  indicates how many blocks from the session file elvis should keep in its own 
  4101.  internal cache, and blkhit and blkmiss can be used to gauge the efficiency of 
  4102.  the cache. blkwrite indicates how many blocks have been written to the session 
  4103.  file. The blksize option indicates the size of each block, blkfill indicates 
  4104.  how many characters should be stuffed into each block initially (leaving room 
  4105.  for more text that the user may insert later), and blkhash and blkgrow affect 
  4106.  a couple of internal tables. 
  4107.  
  4108.  Note that the value of blksize can only be set via the -bblksize command line 
  4109.  flag, and its value must be a power of 2 in the range [512, 8192]. You can't 
  4110.  change blksize after elvis has started (not even in configuration scripts), 
  4111.  because by then the session file has already been created with the other block 
  4112.  size. 
  4113.  
  4114.  If the sync option is true, then elvis will flush all dirty blocks from its 
  4115.  cache at the end of each edit command. Doing this will just about guarantee 
  4116.  that you can recover your changes after a crash, but it can slow down the 
  4117.  computer tremendously. The sync option is false by default, and on multi-user 
  4118.  systems it should be left that way. On a single-user system, you might 
  4119.  consider setting the sync option. 
  4120.  
  4121.  6.1.15 Options that describe the system 
  4122.  
  4123.   .---------------------.---------.--------.-----------------------------.
  4124.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4125.   |---------------------|---------|--------|-----------------------------|
  4126.   | version, ver        | String  | global | elvis version number (2.1)  |
  4127.   | bitsperchar, bits   | Number  | global | character size (always 8)   |
  4128.   | gui                 | String  | global | name of user interface      |
  4129.   | os                  | String  | global | name of operating system    |
  4130.   | program, argv0      | String  | global | invocation name of elvis    |
  4131.   | session, ses        | String  | global | name of session file        |
  4132.   | tempsession, temp   | Boolean | global | delete session file on exit |
  4133.   | newsession, newses  | Boolean | global | session file is new         |
  4134.   | recovering, rflag   | Boolean | global | recovering after a crash    |
  4135.   | exitcode, exit      | Number  | global | exit code of elvis process  |
  4136.   ^---------------------^---------^--------^-----------------------------^
  4137.   The version option stores the version number of elvis -- currently "2.1". If 
  4138.  later versions of elvis have features which are incompatible with this 
  4139.  version, your script files can use this to check the version number, and skip 
  4140.  the uncompatible commands. 
  4141.  
  4142.  The bitsperchar option indicates the size of characters that elvis uses 
  4143.  internally. Currently this is always 8, but I expect to support 16-bit 
  4144.  characters eventually. 
  4145.  
  4146.  The gui option indicates which user interface is being used. This can be handy 
  4147.  in your initialization files. For example, you might prefer white characters 
  4148.  on a blue background when using the "termcap" interface, and black characters 
  4149.  on a white background when using the "x11" interface. 
  4150.  
  4151.  The os option allows elvis' initialization files to act differently on 
  4152.  different operating systems. Its value indicates the name of the local 
  4153.  operating system. 
  4154.  
  4155.  The program option stores the name by which elvis was invoked; i.e., the value 
  4156.  of argv[0]. Typical values would be "elvis" under UNIX, "elvis.exe" under 
  4157.  Win32, or "C:\BIN\ELVIS.EXE" under MS-DOS. The default elvis.ini file 
  4158.  evaluates tolower(basename(program)) and compares the result to "ex" and 
  4159.  "view", to set the initialstate and defaultreadonly options, respectively. 
  4160.  
  4161.  The session option stores the name of the current session file. There is 
  4162.  rarely any need to check this, but I had to store it someplace and it might as 
  4163.  well be accessible, I figured. 
  4164.  
  4165.  The tempsession, newsession, and recovering options describe different aspects 
  4166.  of the session file. If tempsession is true, then elvis will delete the 
  4167.  session file when it exits. If newsession is true, then elvis has just created 
  4168.  the file so there may be extra initialization that needs to take place in 
  4169.  elvis.ini or someplace. If recovering is true, then the session file may be 
  4170.  damaged, so it may be a good idea to skip some initialization steps, or 
  4171.  automatically write out all user buffers. 
  4172.  
  4173.  The exitcode is the value that elvis will return to its parent process when 
  4174.  the elvis process exits. Initially this is 0, which is the conventional 
  4175.  indication of a normal, successful exit. You can explicitly set it to other 
  4176.  values to indicate special situations. Also, if elvis outputs an error message 
  4177.  and exitcode has not been explicitly set, then elvis changes exitcode to 1, so 
  4178.  the parent process can know that elvis had an error. 
  4179.  
  4180.  6.1.16 External programs 
  4181.  
  4182.   .---------------------.---------.--------.-----------------------------.
  4183.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4184.   |---------------------|---------|--------|-----------------------------|
  4185.   | ccprg, cp           | String  | buf    | shell command for :cc       |
  4186.   | makeprg, mp         | String  | buf    | shell command for :make     |
  4187.   | anyerror, ae        | Boolean | global | allow :errlist if readonly  |
  4188.   | equalprg, ep        | String  | buf    | shell command for = operator|
  4189.   | keywordprg, kp      | String  | buf    | shell command for K command |
  4190.   | shell, sh           | String  | global | name of shell program       |
  4191.   | warn                | Boolean | global | warn if file not saved      |
  4192.   ^---------------------^---------^--------^-----------------------------^
  4193.   The ccprg and makeprg are the programs used by the :cc and :make commands. 
  4194.  Before the program strings are executed, they are subjected to the same sort 
  4195.  of expression evaluation as the :eval command, with $1 representing any extra 
  4196.  arguments from the ex command line, and $2 representing the name of the 
  4197.  current file. Their defaults are cc="cc ($1?$1:$2)" and make="make $1". 
  4198.  
  4199.  When searching for error messages after a :cc or :make command, elvis will 
  4200.  normally ignore errors about files that you don't have write access to. 
  4201.  Usually this is convenient, because it prevents elvis from reading header 
  4202.  files that you've misused. However, setting anyerror to true will make it read 
  4203.  any file that generates a complaint, even if you can't write to it. 
  4204.  
  4205.  The equalprg option stores the name of a program to be executed for the visual 
  4206.  = operator command. Its default value is "fmt", which is a simple text 
  4207.  formatting program. 
  4208.  
  4209.  The keywordprg option stores the name of the program used by the visual K 
  4210.  command. This string is evaluated with $1 being replaced with the word under 
  4211.  the cursor at that time, and $2 the name of the current file. The default 
  4212.  value is "ref $1 file:$2"; the ref program looks up a tag and displays it. If 
  4213.  you're using the x11 user interface, then you might want try the following, 
  4214.  which  causes  the function's header to be displayed in a separate pop-up 
  4215.  window: 
  4216.  
  4217.       set kp="ref $1 file:$2 2>&1 \| xmessage -file - >/dev/null 2>&1 &"
  4218.  
  4219.  The shell option stores the name of the system's command-line interpreter. It 
  4220.  is used when executing all of the above programs, as well as commands entered 
  4221.  for the EX :! and visual ! commands. Its default value is system-dependent; 
  4222.  typically it will be "/bin/sh" for UNIX, and "C:\COMMAND.COM" for MS-DOS. 
  4223.  
  4224.  When any external program is executed, if the current buffer has been changed 
  4225.  but not written out to the file, then elvis will normally give a warning 
  4226.  message. Setting the warn option to false disables this message. 
  4227.  
  4228.  6.1.17 Directory names 
  4229.  
  4230.   .---------------------.---------.--------.-----------------------------.
  4231.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4232.   |---------------------|---------|--------|-----------------------------|
  4233.   | home                | String  | global | home directory              |
  4234.   | elvispath, epath    | String  | global | list of possible config dirs|
  4235.   | sessionpath, spath  | String  | global | list of possible session dir|
  4236.   | directory, dir      | String  | global | where to store temp files   |
  4237.   ^---------------------^---------^--------^-----------------------------^
  4238.   The home option is the name of your home directory. The value of this option 
  4239.  is used for replacing the ~ character at the start of a full pathname. If an 
  4240.  environment variable named HOME exists, then home is initialized from its 
  4241.  value. Otherwise, its default value is set as follows: 
  4242.  
  4243.  For UNIX: 
  4244.            The default is "/". 
  4245.  For Win32: 
  4246.            The default is derived from environment variables named HOMEDRIVE 
  4247.            and HOMEPATH, which will normally always be defined. Their default 
  4248.            value is usually "C:\users\default". If either of those environment 
  4249.            variables is undefined, then elvis will attempt to find the pathname 
  4250.            of the program, and use its directory. As a last resort, elvis will 
  4251.            use "C:\" as the default home directory. 
  4252.  For OS/2: 
  4253.            The default home directory is the one containing ELVIS.EXE, or if 
  4254.            that can't be found then it will use "C:\" as the default home 
  4255.            directory. 
  4256.  For MS-DOS: 
  4257.            The default home directory is the one containing ELVIS.EXE. 
  4258.  
  4259.  The elvispath option stores a list of directory names where elvis might find 
  4260.  its configuration files. If there is an ELVISPATH environment variable, then 
  4261.  the elvispath option is initialized from the value of ELVISPATH. Otherwise it 
  4262.  is set to a value such as "~/.elvislib:/usr/local/lib/elvis" so that elvis 
  4263.  will search first in a subdirectory of the user's home directory, and then in 
  4264.  the directory where the standard versions of those files were installed. A 
  4265.  path like this allows users to override elvis' behavior if they want. The 
  4266.  default value depends the operating system, as follows: 
  4267.  
  4268.  For UNIX: 
  4269.            The default contains ~/.elvislib and the directory that you 
  4270.            specified as the data directory when you ran the configure script. 
  4271.            (E.g, "configure --datadir=/usr/lib/elvis") The default data 
  4272.            directory is /usr/local/lib/elvis, so usually elvispath will default 
  4273.            to "~/.elvislib:/usr/local/lib/elvis". 
  4274.  For Win32, OS/2, or MS-DOS: 
  4275.            The default contains ~\elvislib, and the directory where elvis.exe 
  4276.            resides, and a subdirectory under that named "lib". For example, if 
  4277.            elvis is installed as C:\elvis\elvis.exe then elvispath would be 
  4278.            ~\elvislib;C:\elvis;C:\elvis\lib. 
  4279.  
  4280.  The sessionpath option gives elvis a list of possible directories where 
  4281.  session files might be placed. Elvis uses the first writable directory in that 
  4282.  list, and ignores all of the others. The default value depends on the 
  4283.  operating system, and can be overridden by the SESSIONPATH environment 
  4284.  variable. You can't change the sessionpath option after elvis has started, 
  4285.  because the session file has already been created by then. 
  4286.  
  4287.  The directory option gives the name of the directory where elvis will store 
  4288.  its temporary files. The default value is system-dependent. Note that this is 
  4289.  not where the session file is stored; the session option gives the name of the 
  4290.  session file. 
  4291.  
  4292.  6.1.18 Initialization options 
  4293.  
  4294.   .---------------------.---------.--------.-----------------------------.
  4295.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4296.   |---------------------|---------|--------|-----------------------------|
  4297.   | exrc, ex            | Boolean | global | interpret ./.exrc file      |
  4298.   | modeline, ml        | Boolean | global | interpret modelines         |
  4299.   | modelines, mls      | Number  | global | positions of modelines      |
  4300.   | safer, trapunsafe   | Boolean | global | be paranoid                 |
  4301.   | initialstate, is    | One-Of  | global | command mode of new windows |
  4302.   ^---------------------^---------^--------^-----------------------------^
  4303.   The exrc option has no built-in meaning to elvis, however the default 
  4304.  elvis.ini file uses this option to determine whether it should look for a 
  4305.  ".exrc" file in the current directory. 
  4306.  
  4307.  The modeline option controls whether elvis will look for modelines in each 
  4308.  buffer after it has been loaded from a file. If modelines is true, then elvis 
  4309.  will search through the first and last modelines lines of the buffer for 
  4310.  something that looks like "ex:commands:" or "vi:commands:" and if found, it 
  4311.  executes the commands as an ex command line. This is typically used for 
  4312.  changing tabstops and the like. The modeline option is false by default, and 
  4313.  modelines is 5. 
  4314.  
  4315.  The safer option closes some security holes. It is intended to make modelines 
  4316.  and a .exrc file in the current directory safe to use, but I'm not making any 
  4317.  promises. When the "safer" option is true, certain commands are disabled, 
  4318.  wildcard expansion in filenames is disabled, and certain options are locked 
  4319.  (including the safer option itself). Typically you will use the ex command 
  4320.  :safer to execute an untrusted file, and :source to execute a trusted one, 
  4321.  rather than futz with the value of the safer option directly. 
  4322.  
  4323.  The initialstate option determines what command mode new windows will start 
  4324.  in. It can be one of input, replace, vi, or ex. The default is vi, the visual 
  4325.  command mode. 
  4326.  
  4327.  6.1.19 Keyboard map options 
  4328.  
  4329.   .---------------------.---------.--------.-----------------------------.
  4330.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4331.   |---------------------|---------|--------|-----------------------------|
  4332.   | remap               | Boolean | global | allow key maps to use maps  |
  4333.   | keytime, kt         | Number  | global | timeout for function keys   |
  4334.   | usertime, ut        | Number  | global | timeout for multi-key maps  |
  4335.   ^---------------------^---------^--------^-----------------------------^
  4336.   Elvis allows keystrokes to be mapped via the :map command. Once a map has 
  4337.  been defined, these options control how and when those maps are recognized. 
  4338.  
  4339.  The remap option controls how many times elvis will attempt to reapply key 
  4340.  maps. If the remap option is true (the default), then elvis will repeatedly 
  4341.  attempt to reapply maps as long as there are any that match. This means that 
  4342.  maps can be written to use other maps, allowing some very complex behavior. If 
  4343.  remap is false, then it will attempt to apply maps only once, so the result of 
  4344.  any map is not altered any further. By default, remap is true. 
  4345.  
  4346.  The keytime and usertime options come into play when characters are received 
  4347.  which partially match one or more maps. For example, suppose the arrow keys 
  4348.  are mapped to h, j, k, and  l, those arrow keys send escape sequences when 
  4349.  pressed, and elvis has just received an escape character. How can it tell 
  4350.  whether the user hit the Esc key or an arrow key? 
  4351.  
  4352.  In this situation, elvis must perform a read-keystrokes-with-timeout operation 
  4353.  to determine which map applies, if any. If all of the partially matching maps 
  4354.  are for special keys such as function keys, then elvis will use the keytime 
  4355.  value. If at least one of them is for a user map, then elvis will use the 
  4356.  usertime value. Either way, the values indicate the time, in tenths of a 
  4357.  second, that elvis should allow for the rest of the map characters to arrive. 
  4358.  If they don't arrive, then none of the partially matching maps is used. 
  4359.  
  4360.  Typically, the usertime value will be much longer than the keytime value, 
  4361.  because the user must hit a series of keys for a user map. For example, many 
  4362.  people like to create maps consisting of a semicolon and one or two following 
  4363.  letters. (If you're a touch typist, then your right-hand pinky normally rests 
  4364.  on the semicolon key, so this is convenient.) By distinguishing between key 
  4365.  maps and user maps, elvis can give quick response to the Esc while still 
  4366.  allowing users to key in their own keymaps at a leisurely pace. Their default 
  4367.  values are keytime=3 and usertime=15. 
  4368.  
  4369.  6.1.20 Printing options 
  4370.  
  4371.   .---------------------.---------.--------.-----------------------------.
  4372.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4373.   |---------------------|---------|--------|-----------------------------|
  4374.   | lptype, lpt         | String  | lp     | printer type                |
  4375.   | lpconvert, lpcvt    | Boolean | lp     | convert Latin-1 to PC-8     |
  4376.   | lpcrlf, lpc         | Boolean | lp     | printer needs CR-LF newline |
  4377.   | lpout, lpo          | String  | lp     | printer file or filter      |
  4378.   | lpcolumns, lpcols   | Number  | lp     | width of printer page       |
  4379.   | lpwrap, lpw         | Boolean | lp     | simulate line-wrap          |
  4380.   | lplines, lprows     | Number  | lp     | length of printer page      |
  4381.   | lpnumber, lpn       | Boolean | lp     | print line numbers in margin|
  4382.   | lpheader, lph       | Boolean | lp     | print header at top of page |
  4383.   | lpformfeed, lpff    | Boolean | lp     | send form-feed after last pg|
  4384.   | lppaper, lpp        | String  | lp     | paper size (letter, a4, ...)|
  4385.   | lpcolor, lpcl       | Boolean | lp     | use colors when printing    |
  4386.   ^---------------------^---------^--------^-----------------------------^
  4387.   These options all affect hardcopy output, done via the :lpr command. Note 
  4388.  that these options are in a separate group, so you can display all of them by 
  4389.  giving the command "se lp?". 
  4390.  
  4391.  The lptype option lets elvis know what type of printer you're using, so it can 
  4392.  use the correct escape codes (or whatever) to switch fonts. The default is 
  4393.  "dumb" because it is the most conservative value, but it is also the least 
  4394.  expressive. (Exception: When using the Win32 user interface, the default is 
  4395.  "windows".) You should set lptype to one of the following values: 
  4396.  
  4397.           .---------.---------------------------------------------.
  4398.           |  VALUE  | PRINTER DESCRIPTION                         |
  4399.           |---------|---------------------------------------------|
  4400.           |   ps    | PostScript, one logical page per sheet      |
  4401.           |   ps2   | PostScript, two logical pages per sheet     |
  4402.           |  epson  | Most dot-matrix printers, no graphic chars  |
  4403.           |  pana   | Panasonic dot-matrix printers               |
  4404.           |   ibm   | Dot-matrix printers with IBM graphic chars  |
  4405.           |   hp    | HP printers, and most non-PostScript lasers |
  4406.           |   cr    | Line printers, overtypes via carriage-return|
  4407.           |   bs    | Overtypes via backspace, like nroff         |
  4408.           |  dumb   | Plain ASCII, no font control                |
  4409.           |-- --- --|-- --- --- --- --- --- --- --- --- --- --- --|
  4410.           | windows | The Win32 print facility (in WinElvis only) |
  4411.           ^---------^---------------------------------------------^
  4412.   The lpconvert option, when set, causes some printer types to convert 
  4413.  non-ASCII Latin-1 characters to PC-8 characters. Most computers use Latin-1 
  4414.  internally for storing text, but many printers use PC-8; hence the need for 
  4415.  conversion. This option has no effect on ASCII characters because they never 
  4416.  need conversion. This option is ignored if your computer doesn't appear to be 
  4417.  using Latin-1 (or, more precisely, if there is no digraph which maps AE to 
  4418.  0xc6, the Latin-1 code for the Γò₧ ligature.) This option is false by default. 
  4419.  
  4420.  NOTE: Not all printer types obey the lpconvert option. Postscript printers 
  4421.  don't do conversion because they use Latin-1 themselves. The "cr", "bs", and 
  4422.  "dumb" printer types ignore it simply because they are typically used for 
  4423.  writing to files, not actual printers, and as long as the text remains in the 
  4424.  computer no conversion is necessary. Only the "epson", "pana", "ibm", and "hp" 
  4425.  printers will obey the lpconvert option. 
  4426.  
  4427.  The lpcrlf option forces elvis to convert each newline character to a CR/LF 
  4428.  pair.  Some printers, on some systems, require this. Most don't, so this 
  4429.  option is false by default. If you attempt to print something and only the 
  4430.  first line is visible, or the text is badly jumbled, then try ":set lpcrlf" 
  4431.  and maybe that'll fix it. 
  4432.  
  4433.  The lpout option should be either the name of a file or device (such as "prn" 
  4434.  or "/dev/lp0") to which the printer output should be sent, or ! character 
  4435.  followed by a shell command (such as "!lp -s") which reads printer text from 
  4436.  stdin and submits it to the printer spooler. The default is system dependent. 
  4437.  
  4438.  The lpcolumns option tells elvis how wide the printer page is. The default is 
  4439.  80 columns. If you have a wide-carriage printer, you may wish to set 
  4440.  lpcolumns=132. If you have a postscript printer and set lpcolumns to a value 
  4441.  greater than 80, elvis will compress the characters to make the longer lines 
  4442.  fit. 
  4443.  
  4444.  The lpwrap option tells elvis how to handle lines that are wider than 
  4445.  lpcolumns. If this options is true (the default) then long lines will wrap 
  4446.  onto multiple printed lines. If lpwrap is false, then it will clip long lines. 
  4447.  
  4448.  The lplines option tells elvis how long the usable portion of each page is; 
  4449.  i.e., how many lines it should print on each page. The default is 60. Some 
  4450.  display modes ("html" and "man") print headers at the top of each page; those 
  4451.  lines are included in the lplines count. Setting lplines=0 causes elvis to 
  4452.  assume that pages are infinitely long, which sounds about right for fan-fold 
  4453.  printer paper. If you have a PostScript printer and set lplines to a value 
  4454.  greater than 60, then the page will be compressed vertically to make it fit. 
  4455.  
  4456.  The lpnumber option does to printouts what the number option does for a window 
  4457.  -- it causes the line number to be output in the left margin. If the buffer's 
  4458.  bufdisplay option is "normal" or "syntax", then it also causes a header to be 
  4459.  printed at the top of each page, showing the file name, page number, and 
  4460.  date/time when the printout was created. 
  4461.  
  4462.  The lpheader option controls whether printouts will have a line at the top of 
  4463.  each page showing the file name, date, and page number. It only affects the 
  4464.  normal, syntax, and hex display modes; the others always have a header. 
  4465.  
  4466.  The lpformfeed option controls whether elvis will send a form-feed control 
  4467.  character after the last page of any print job. This should generally be false 
  4468.  if you're printing through a print spooler program, because print spoolers 
  4469.  usually add the final formfeed themselves. Under MS-DOS, elvis is normally 
  4470.  configured to send the text directly to the printer device, prn, and you may 
  4471.  wish to set the lpformfeed option there. 
  4472.  
  4473.  The lppaper option is only significant for PostScript printers. The value of 
  4474.  lppaper is inserted into the PostScript output before the contents of the 
  4475.  elvis.ps file. elvis.ps contains code which scales the output to fit on the 
  4476.  paper. The default version supports letter, legal, executive, a4 and a3 paper 
  4477.  sizes. Adding new paper sizes to that file is fairly easy. You should be 
  4478.  careful when setting lppaper because elvis won't prevent you from setting it 
  4479.  to an unsupported value. The default value is letter. 
  4480.  
  4481.  The lpcolor option is currently only supported for the "windows" printer type 
  4482.  under Microsoft Windows95/98/NT. When true, it allows printouts to use color 
  4483.  for the foreground. (The background is always white.) Normally it is false 
  4484.  (nolpcolor), which forces all printouts to use black since that usually prints 
  4485.  faster and looks better, and is always less expensive. 
  4486.  
  4487.  6.1.21 Previous arguments 
  4488.  
  4489.   .---------------------.---------.--------.-----------------------------.
  4490.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4491.   |---------------------|---------|--------|-----------------------------|
  4492.   | previousdir, pdir   | String  | global | previous directory name     |
  4493.   | previousfile        | String  | global | name of alternate file      |
  4494.   | previousfileline    | Number  | global | line# from previousfile     |
  4495.   | previouscommand     | String  | global | previous shell command line |
  4496.   | previoustag, ptag   | String  | global | previous search tag         |
  4497.   ^---------------------^---------^--------^-----------------------------^
  4498.   These options all store the previous value of some type of input, so that the 
  4499.  same value can be used again later. You can set these options, but there 
  4500.  really isn't much point to it, usually. 
  4501.  
  4502.  The previousdir option stores the name of the previous working directory. 
  4503.  Initially it is set from the value of the $OLDPWD environment variable.  After 
  4504.  that, each :cd command will store the old current working directory into this 
  4505.  option before switching to the new working directory.  If you give elvis a 
  4506.  file name which begins with "~-", elvis will replace the "~-" with the value 
  4507.  of this option. 
  4508.  
  4509.  The previousfile option stores the name of an alternate file. Usually this is 
  4510.  the name of the last file you mentioned, other than that of the current file. 
  4511.  When you switch from one file to another, the name of the previous file is 
  4512.  stored here, along with the line number (in previousfileline), so you can 
  4513.  easily bounce between this file and the previous one. Whenever you type in a 
  4514.  filename as an argument to an ex command, any instances of the # character are 
  4515.  replaced by the value of previousfile. 
  4516.  
  4517.  The previouscommand option stores the last shell command you typed in. When 
  4518.  you enter the next shell command line, any instances of the ! character will 
  4519.  be replaced by the value of previouscommand. 
  4520.  
  4521.  The previoustag option stores the name of the last tag you looked up.  This 
  4522.  value is also stored on the tagstack in the hope that it may help you remember 
  4523.  where you were when you performed all of your recent tag lookups. 
  4524.  
  4525.  6.1.22 Unsupported options 
  4526.  
  4527.   .---------------------.---------.--------.-----------------------------.
  4528.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4529.   |---------------------|---------|--------|-----------------------------|
  4530.   | hardtabs, ht        | Number  | global | width of terminal's tabs    |
  4531.   | mesg                | Boolean | global | disable SysAdmin messages   |
  4532.   | more, mo            | Boolean | global | allow "Hit <Enter>" prompt  |
  4533.   | novice              | Boolean | global | beginner mode               |
  4534.   | redraw              | Boolean | global | redraw screen during input  |
  4535.   ^---------------------^---------^--------^-----------------------------^
  4536.     The hardtabs, mesg, more, novice, and redraw options exist in elvis, but 
  4537.  they don't do anything. Perhaps some day... 
  4538.  
  4539.  6.1.23 User variables 
  4540.  
  4541.   .---------------------.---------.--------.-----------------------------.
  4542.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4543.   |---------------------|---------|--------|-----------------------------|
  4544.   | a                   | String  | user   | user variable               |
  4545.   | b                   | String  | user   | user variable               |
  4546.   | c                   | String  | user   | user variable               |
  4547.   | d                   | String  | user   | user variable               |
  4548.   | e                   | String  | user   | user variable               |
  4549.   | f                   | String  | user   | user variable               |
  4550.   | g                   | String  | user   | user variable               |
  4551.   | h                   | String  | user   | user variable               |
  4552.   | i                   | String  | user   | user variable               |
  4553.   | j                   | String  | user   | user variable               |
  4554.   | k                   | String  | user   | user variable               |
  4555.   | l                   | String  | user   | user variable               |
  4556.   | m                   | String  | user   | user variable               |
  4557.   | n                   | String  | user   | user variable               |
  4558.   | o                   | String  | user   | user variable               |
  4559.   | p                   | String  | user   | user variable               |
  4560.   | q                   | String  | user   | user variable               |
  4561.   | r                   | String  | user   | user variable               |
  4562.   | s                   | String  | user   | user variable               |
  4563.   | t                   | String  | user   | user variable               |
  4564.   | u                   | String  | user   | user variable               |
  4565.   | v                   | String  | user   | user variable               |
  4566.   | w                   | String  | user   | user variable               |
  4567.   | x                   | String  | user   | user variable               |
  4568.   | y                   | String  | user   | user variable               |
  4569.   | z                   | String  | user   | user variable               |
  4570.   ^---------------------^---------^--------^-----------------------------^
  4571.               These one-letter options have no preset purpose. They are useful 
  4572.  for holding temporary values which you expect to use in an expression later. 
  4573.  These are all string values, but because the expression evaluator doesn't 
  4574.  distinguish between a number and a string which happens to look like number, 
  4575.  you can also use these as numbers. For example, the command... 
  4576.  
  4577.   :let i=i+1
  4578.   ...does exactly what you would expect. 
  4579.  
  4580.  6.2 Alphabetical list of options 
  4581.  
  4582.   .---------------------.---------.--------.-----------------------------.
  4583.   | OPTION NAMES        | TYPE    | GROUP  | DESCRIPTION                 |
  4584.   |---------------------|---------|--------|-----------------------------|
  4585.   | a                   | String  | user   | user variable               |
  4586.   | altkey, metakey     | One of  | x11    | effect of the Alt key       |
  4587.   | animation, anim     | Number  | global | animation macro speed       |
  4588.   | anyerror, ae        | Boolean | global | allow :errlist if readonly  |
  4589.   | autoiconify, aic    | Boolean | x11    | iconify old window          |
  4590.   | autoindent, ai      | Boolean | buf    | auto-indent new text        |
  4591.   | autoprint, ap       | Boolean | global | print current line in ex    |
  4592.   | autoselect, as      | Boolean | global | visibly mark searched text  |
  4593.   | autotab, at         | Boolean | buf    | allow autoindent to use '\t'|
  4594.   | autowrite, aw       | Boolean | global | save file before switching  |
  4595.   | b                   | String  | user   | user variable               |
  4596.   | backup, bk          | Boolean | global | make *.bak file before write|
  4597.   | beautify, bf        | Boolean | global | strip ctrl chars from files |
  4598.   | bitsperchar, bits   | Number  | global | character size (always 8)   |
  4599.   | blkcache, cache     | Number  | global | number of blocks in cache   |
  4600.   | blkfill, bfill      | Number  | global | initial chars per text block|
  4601.   | blkgrow, bgr        | Number  | global | allocation table parameter  |
  4602.   | blkhash, hash       | Number  | global | size of cache hash table    |
  4603.   | blkhit, bh          | Number  | global | # of block requests in cache|
  4604.   | blkmiss, bm         | Number  | global | # of block req. not in cache|
  4605.   | blksize, bsz        | Number  | global | size of cache block         |
  4606.   | boldstyle, bfn      | String  | windows| n or combination of b/i/u   |
  4607.   | boldfont, xfb       | String  | x11    | name of bold font           |
  4608.   | borderwidth, xbw    | Number  | x11    | size of text area's border  |
  4609.   | bufchars, bc        | Number  | buf    | number of characters        |
  4610.   | bufdisplay, bd      | String  | buf    | default display mode        |
  4611.   | bufid, bufferid     | Number  | buf    | ID number of user buffer    |
  4612.   | buflines, bl        | Number  | buf    | number of lines             |
  4613.   | bufname, buffer     | String  | buf    | name of buffer              |
  4614.   | c                   | String  | user   | user variable               |
  4615.   | ccprg, cp           | String  | buf    | shell command for :cc       |
  4616.   | codepage, cpg       | Number  | win32  | console character set       |
  4617.   | columns, cols       | Number  | win    | width of window             |
  4618.   | commentfont, cfont  | One-Of  | syntax | font used for comments      |
  4619.   | d                   | String  | user   | user variable               |
  4620.   | dblclicktime, xdct  | Number  | x11    | double-click milliseconds   |
  4621.   | defaultreadonly, dro| Boolean | global | assume all files readonly   |
  4622.   | digraph, dig        | Boolean | global | allow X-backspace-Y entry   |
  4623.   | directory, dir      | String  | global | where to store temp files   |
  4624.   | display, mode       | String  | win    | name of current display mode|
  4625.   | e                   | String  | user   | user variable               |
  4626.   | edcompatible, ed    | Boolean | global | remember regsub flags       |
  4627.   | edited, samename    | Boolean | buf    | buffer loaded from filename |
  4628.   | elvispath, epath    | String  | global | list of possible config dirs|
  4629.   | emphasizedstyle, efn| String  | windows| n or combination of b/i/u   |
  4630.   | equalprg, ep        | String  | buf    | shell command for = operator|
  4631.   | errlines            | Number  | buf    | buflines when :make was run |
  4632.   | errorbells, eb      | Boolean | global | ring bell for error message |
  4633.   | exitcode, exit      | Number  | global | exit code of elvis process  |
  4634.   | completebinary, cob | Boolean | global | complete names of binaries? |
  4635.   | exrc, ex            | Boolean | global | interpret ./.exrc file      |
  4636.   | exrefresh, er       | Boolean | global | redraw scrn after each line |
  4637.   | f                   | String  | user   | user variable               |
  4638.   | filename, file      | String  | buf    | name of file in buffer      |
  4639.   | firstx, xpos        | Number  | x11    | horiz. position of first win|
  4640.   | firsty, ypos        | Number  | x11    | vert. position of first win |
  4641.   | fixedstyle, ffn     | String  | windows| n or combination of b/i/u   |
  4642.   | flash, vbell        | Boolean | global | substitute flash for bell   |
  4643.   | focusnew, fn        | Boolean | x11    | force focus into new window |
  4644.   | font, fnt           | String  | windows| base font                   |
  4645.   | functionfont, ffont | One-Of  | syntax | font used for function names|
  4646.   | g                   | String  | user   | user variable               |
  4647.   | gdefault, gd        | Boolean | global | default change all instances|
  4648.   | gui                 | String  | global | name of user interface      |
  4649.   | h                   | String  | user   | user variable               |
  4650.   | hardtabs, ht        | Number  | global | width of terminal's tabs    |
  4651.   | home                | String  | global | home directory              |
  4652.   | i                   | String  | user   | user variable               |
  4653.   | icon                | Boolean | x11    | use the built-in icon?      |
  4654.   | ignorecase, ic      | Boolean | global | regexp uppercase=lowercase  |
  4655.   | initialstate, is    | One-Of  | global | command mode of new windows |
  4656.   | inputtab, itab      | One-Of  | buf    | input mode's (Tab) key      |
  4657.   | internal            | Boolean | buf    | elvis requires this buffer  |
  4658.   | italicstyle, ifn    | String  | windows| n or combination of b/i/u   |
  4659.   | italicfont, xfi     | String  | x11    | name of italic font         |
  4660.   | j                   | String  | user   | user variable               |
  4661.   | k                   | String  | user   | user variable               |
  4662.   | keytime, kt         | Number  | global | timeout for function keys   |
  4663.   | keywordfont, kfont  | One-Of  | syntax | font used for reserved words|
  4664.   | keywordprg, kp      | String  | buf    | shell command for K command |
  4665.   | l                   | String  | user   | user variable               |
  4666.   | lines, rows         | Number  | win    | height of window            |
  4667.   | list, li            | Boolean | win    | show markups, newlines, etc.|
  4668.   | locked, lock        | Boolean | win    | prevent any alterations     |
  4669.   | lpcolor, lpcl       | Boolean | lp     | use colors when printing    |
  4670.   | lpcolumns, lpcols   | Number  | lp     | width of printer page       |
  4671.   | lpcrlf, lpc         | Boolean | lp     | printer needs CR-LF newline |
  4672.   | lpformfeed, lpff    | Boolean | lp     | send form-feed after last pg|
  4673.   | lpheader, lph       | Boolean | lp     | print header at top of page |
  4674.   | lplines, lprows     | Number  | lp     | length of printer page      |
  4675.   | lpnumber, lpn       | Boolean | lp     | print line numbers in margin|
  4676.   | lpout, lpo          | String  | lp     | printer file or filter      |
  4677.   | lppaper, lpp        | String  | lp     | paper size (letter, a4, ...)|
  4678.   | lptype, lpt         | String  | lp     | printer type                |
  4679.   | lpwrap, lpw         | Boolean | lp     | simulate line-wrap          |
  4680.   | m                   | String  | user   | user variable               |
  4681.   | magic, ma           | Boolean | global | use normal regexp syntax    |
  4682.   | makeprg, mp         | String  | buf    | shell command for :make     |
  4683.   | maplog, mlog        | One of  | global | logging: off, reset, append |
  4684.   | maptrace, mt        | One of  | global | debugger: off, run, or step |
  4685.   | mesg                | Boolean | global | disable SysAdmin messages   |
  4686.   | modeline, ml        | Boolean | global | interpret modelines         |
  4687.   | modelines, mls      | Number  | global | positions of modelines      |
  4688.   | modified, mod       | Boolean | buf    | buffer differs from file    |
  4689.   | n                   | String  | user   | user variable               |
  4690.   | nearscroll, ns      | Number  | global | scroll vs. jump¢er param|
  4691.   | newfile, new        | Boolean | buf    | filename doesn't exist yet  |
  4692.   | newsession, newses  | Boolean | global | session file is new         |
  4693.   | nonascii, asc       | One-Of  | global | how to display non-ascii    |
  4694.   | normalstyle, nfn    | String  | windows| n or combination of b/i/u   |
  4695.   | normalfont, xfn     | String  | x11    | name of normal font         |
  4696.   | novice              | Boolean | global | beginner mode               |
  4697.   | number, nu          | Boolean | win    | display line numbers        |
  4698.   | o                   | String  | user   | user variable               |
  4699.   | optimize, opt       | Boolean | global | run faster                  |
  4700.   | optionwidth, ow     | Number  | global | widths of ":set all" values |
  4701.   | os                  | String  | global | name of operating system    |
  4702.   | otherfont, ofont    | One-Of  | syntax | font used for other symbols |
  4703.   | outlinemono, om     | Number  | x11    | char outlining for X11-mono |
  4704.   | p                   | String  | user   | user variable               |
  4705.   | paragraphs, para    | String  | buf    | nroff paragraph commands    |
  4706.   | partiallastline, pll| Boolean | buf    | file didn't end with newline|
  4707.   | pollfrequency, pf   | Number  | global | rate of testing for ^C      |
  4708.   | prepfont, pfont     | One-Of  | syntax | font used for preprocessor  |
  4709.   | previouscommand     | String  | global | previous shell command line |
  4710.   | previousdir, pdir   | String  | global | previous directory name     |
  4711.   | previousfile        | String  | global | name of alternate file      |
  4712.   | previousfileline    | Number  | global | line# from previousfile     |
  4713.   | previoustag, ptag   | String  | global | previous search tag         |
  4714.   | program, argv0      | String  | global | invocation name of elvis    |
  4715.   | prompt              | Boolean | global | issue ":" prompt in ex mode |
  4716.   | putstyle, ps        | One of  | buf    | type of text in a cut buffer|
  4717.   | q                   | String  | user   | user variable               |
  4718.   | r                   | String  | user   | user variable               |
  4719.   | readeol, reol       | One of  | buf    | newline mode when reading   |
  4720.   | readonly, ro        | Boolean | buf    | don't overwrite filename    |
  4721.   | recovering, rflag   | Boolean | global | recovering after a crash    |
  4722.   | redraw              | Boolean | global | redraw screen during input  |
  4723.   | remap               | Boolean | global | allow key maps to use maps  |
  4724.   | report              | Number  | global | minimum # lines to report   |
  4725.   | retain, ret         | Boolean | buf    | keep buffer in session file |
  4726.   | ruler, ru           | Boolean | win    | display cursor's line/column|
  4727.   | s                   | String  | user   | user variable               |
  4728.   | safer, trapunsafe   | Boolean | global | be paranoid                 |
  4729.   | saveregexp, sre     | Boolean | global | remember regexp to use as //|
  4730.   | scroll, scr         | Number  | win    | scroll amount for ^D/^U     |
  4731.   | scrollbar, sb       | Boolean | (gui)  | enable the scrollbar        |
  4732.   | scrollbarleft, xsl  | Boolean | x11    | draw scrollbar on left side |
  4733.   | scrollbartime, xst  | Number  | x11    | delay for scrollbar repeat  |
  4734.   | scrollbarwidth, xsw | Number  | x11    | size of scrollbar, in pixels|
  4735.   | sections, sect      | String  | buf    | nroff section commands      |
  4736.   | sentenceend, se     | String  | global | punct at end of sentence    |
  4737.   | sentencegap, sg     | Number  | global | spaces required after sq    |
  4738.   | sentencequote, sq   | String  | global | punct allowed after se      |
  4739.   | session, ses        | String  | global | name of session file        |
  4740.   | sessionpath, spath  | String  | global | list of possible session dir|
  4741.   | shell, sh           | String  | global | name of shell program       |
  4742.   | shiftwidth, sw      | Number  | buf    | width used by < and >       |
  4743.   | showcmd, sc         | Boolean | win    | display command characters  |
  4744.   | showmarkups, smu    | Boolean | global | show markup at cursor       |
  4745.   | showmatch, sm       | Boolean | win    | highlight matching parens   |
  4746.   | showmode, smd       | Boolean | win    | display the command state   |
  4747.   | showname, snm       | Boolean | global | display the buffer name     |
  4748.   | showstack, sstk     | Boolean | win    | display some debugging info |
  4749.   | showtag, st         | Boolean | global | display tag on status line  |
  4750.   | sidescroll, ss      | Number  | win    | sideways scrolling amount   |
  4751.   | stagger             | Number  | x11    | offset for next new window  |
  4752.   | statusbar, xstat    | Boolean | x11    | enables the statusbar       |
  4753.   | stringfont, sfont   | One-Of  | syntax | font used for strings       |
  4754.   | sync                | Boolean | global | force changes to disk       |
  4755.   | t                   | String  | user   | user variable               |
  4756.   | tabstop, ts         | Number  | buf    | width of tabstop columns    |
  4757.   | taglength, tl       | Number  | global | significant length of tags  |
  4758.   | tagprg, tp          | String  | global | external tag search program |
  4759.   | tagprgonce, tpo     | String  | global | like tagprg, but auto-resets|
  4760.   | tags, tagpath       | String  | global | list of possible tag files  |
  4761.   | tagstack, tsk       | Boolean | global | remember origin of tag srch |
  4762.   | tempsession, temp   | Boolean | global | delete session file on exit |
  4763.   | term, ttytype       | String  | tcap   | terminal's termcap entry    |
  4764.   | terse, te           | Boolean | global | don't translate messages    |
  4765.   | textcursor, tc      | Number  | x11    | one of hollow, opaque, xor  |
  4766.   | textwidth, tw       | Number  | buf    | width for word-wrap, or 0   |
  4767.   | toolbar, tb         | Boolean | (gui)  | enable the toolbar          |
  4768.   | ttycolumns, ttycols | Number  | tcap   | width of screen             |
  4769.   | ttyrows, ttylines   | Number  | tcap   | height of screen            |
  4770.   | ttyunderline, ttyu  | Boolean | tcap   | okay to mix color & underln |
  4771.   | u                   | String  | user   | user variable               |
  4772.   | underline, uln      | Boolean | x11    | enables underlining         |
  4773.   | underlinedstyle, nfn| String  | windows| n or combination of b/i/u   |
  4774.   | undolevels, ul      | Number  | buf    | number of undoable commands |
  4775.   | usertime, ut        | Number  | global | timeout for multi-key maps  |
  4776.   | v                   | String  | user   | user variable               |
  4777.   | variablefont, vfont | One-Of  | syntax | font used for variables     |
  4778.   | verbose             | Boolean | global | give more status messages   |
  4779.   | w                   | String  | user   | user variable               |
  4780.   | warn                | Boolean | global | warn if file not saved      |
  4781.   | warningbells, wb    | Boolean | global | ring bell for warning msg   |
  4782.   | warpback, xwb       | Boolean | x11    | upon exit, point to xterm   |
  4783.   | warpto, wt          | One of  | x11    | ^W^W forces pointer movement|
  4784.   | window, wi          | Number  | global | lines to show for :z command|
  4785.   | windowid, id        | Number  | win    | ID number of current window |
  4786.   | wrap                | Boolean | win    | how long lines are displayed|
  4787.   | wrapmargin, wm      | Boolean | win    | set textwidth from right    |
  4788.   | wrapscan, ws        | Boolean | global | searching wraps at EOF<->BOF|
  4789.   | writeany, wa        | Boolean | global | don't warn of existing file |
  4790.   | writeeol, weol      | One of  | buf    | newline mode when writing   |
  4791.   | x                   | String  | user   | user variable               |
  4792.   | xcolumns, xcols     | Number  | x11    | width of new windows        |
  4793.   | xrows, xlines       | Number  | x11    | height of new windows       |
  4794.   | y                   | String  | user   | user variable               |
  4795.   | z                   | String  | user   | user variable               |
  4796.   ^---------------------^---------^--------^-----------------------------^
  4797.  
  4798.  
  4799. ΓòÉΓòÉΓòÉ 1.7. Elvis 2.1 Display Modes ΓòÉΓòÉΓòÉ
  4800.  
  4801.  
  4802.  
  4803. 7. DISPLAY MODES 
  4804.  
  4805.  A "display mode" consists primarily of an algorithm that elvis uses internally 
  4806. to convert the bytes in a buffer into an image in a window. The same algorithm 
  4807. is also used for printing via the ":lpr" command. 
  4808.  
  4809. The display mode also affects tag lookup, and image-dependent operations such 
  4810. as determining the column number of the cursor's location, and moving the 
  4811. cursor vertically. 
  4812.  
  4813. You can list the supported display modes by giving the ":display" command 
  4814. without any arguments. Typically, the supported modes will include the 
  4815. following: 
  4816.  
  4817. .--------.----------------------------------------------.
  4818. |  MODE  | DESCRIPTION                                  |
  4819. |--------|----------------------------------------------|
  4820. | normal | Traditional vi, displays plain ASCII         |
  4821. | syntax | Like "normal" but does syntax coloring       |
  4822. | hex    | Interactive hex dump, good for binary files  |
  4823. | html   | Simple Web page formatter                    |
  4824. | man    | Simple Man page formatter, like "nroff -man" |
  4825. | tex    | Simple subset of the TeX formatter           |
  4826. ^--------^----------------------------------------------^
  4827.  
  4828. Elvis 2.1 allows each window to be in a different display mode. You can 
  4829. manually change a window's display mode via the ":display mode" command, where 
  4830. mode is the name of a supported display mode. There is also a ":no" command, 
  4831. which is short for ":display normal". 
  4832.  
  4833. 7.1 Options 
  4834.  
  4835.  There are two options which pertain to display modes: display and bufdisplay. 
  4836.  
  4837. The display option is associated with a window. It always contains the name of 
  4838. the window's current display mode. You aren't allowed to change the value of 
  4839. this option directly; you must use the ":display mode" command to change the 
  4840. display mode. This option exists solely so that you can write EX scripts which 
  4841. behave differently, depending on the display mode. 
  4842.  
  4843. The bufdisplay option is associated with a buffer. It should be set to the name 
  4844. of the usual display mode for that buffer. Typically this option will be set 
  4845. from the elvis.arf initialization file, based on the name of the file like 
  4846. this: 
  4847.  
  4848.         let e=tolower(dirext(filename))
  4849.         if knownsyntax(filename)
  4850.         then set! bufdisplay=syntax
  4851.         else if os=="unix" && buflines >= 1
  4852.         then 1s/^#! *[^ ]*\/\([^ ]\+\).*/set! bufdisplay="syntax \1"/x
  4853.         if e<<4==".htm"
  4854.         then set! bufdisplay=html
  4855.         if e==".man" || e==".1"
  4856.         then set! bufdisplay=man
  4857.         if binary
  4858.         then set! bufdisplay=hex
  4859. When a new window is created for that buffer, or an existing window switches to 
  4860. that buffer, that window's display mode will automatically be switched to the 
  4861. bufdisplay mode. 
  4862.  
  4863. The bufdisplay mode also affects the ^Wd visual command. This command toggles 
  4864. the window between the normal mode and the bufdisplay mode. If bufdisplay is 
  4865. also set to "normal", then ^Wd will toggle between the normal and hex display 
  4866. modes. 
  4867.  
  4868. 7.2 Normal mode 
  4869.  
  4870.  The "normal" display mode looks like a traditional vi screen. All characters 
  4871. are displayed literally except for the following... 
  4872.  
  4873.  Tab 
  4874.            The tab character is displayed as a variable number of spaces -- 
  4875.            however many are needed to move to the next tabstop position. 
  4876.  Newline 
  4877.            The newline character (linefeed) marks the end of a line. 
  4878.  Other control characters 
  4879.            Control characters other than tab and newline are displayed as a 
  4880.            caret and a printable ASCII character. For example Control-A is 
  4881.            displayed as ^A, and NUL is displayed as ^@. The delete character is 
  4882.            displayed as ^?. 
  4883.  Non-ASCII characters 
  4884.            The appearance of non-ASCII characters (i.e., characters 128-255) is 
  4885.            controlled by the nonascii option. By default, most non-ASCII 
  4886.            characters are assumed to be ordinary printable characters. 
  4887.  
  4888.  
  4889.  7.3 Syntax mode 
  4890.  
  4891.   The "syntax" display mode acts exactly like the normal mode, except that this 
  4892.  mode automatically uses different fonts for various types of tokens in any 
  4893.  supported programming language. You can then use the :color command to assign 
  4894.  colors for each font. 
  4895.  
  4896.  7.3.1 Options 
  4897.  
  4898.  The following options determine which font is used for each type of token: 
  4899.  
  4900.   .---------------------.----------^-------------------------------------.
  4901.   | OPTION NAMES        | DEFAULT  | AFFECTED TOKEN TYPE                 |
  4902.   |---------------------|----------^-------------------------------------|
  4903.   | commentfont, cfont  |  italic  | comments                            |
  4904.   | stringfont, sfont   |  fixed   | string, character, & regexp literals|
  4905.   | prepfont, pfont     |emphasized| preprocessor directives             |
  4906.   | keywordfont, kfont  |   bold   | keywords                            |
  4907.   | functionfont, ffont |  normal  | identifier followed by function char|
  4908.   | otherfont, ofont    |   bold   | other special words                 |
  4909.   | variablefont, vfont |  normal  | variables, fields, etc.             |
  4910.   ^---------------------^----------^-------------------------------------^
  4911.   Each of those options can be set to one of normal, bold, italic, underlined, 
  4912.  emphasized, or fixed. When typing these values into a :set command line, you 
  4913.  are only required to type the initial letter (n, b, i, u, e or f). 
  4914.  
  4915.  Any text that doesn't fall into one of the above groups (punctuation, mostly) 
  4916.  is displayed in the normal font. There is no option that controls this; it is 
  4917.  hard coded. 
  4918.  
  4919.  You can use the :color command to choose a color for each font, if you wish. 
  4920.  Not all user interfaces support color, but the "x11" and "termcap" interfaces 
  4921.  do. 
  4922.  
  4923.  7.3.2 Language specification 
  4924.  
  4925.   All supported languages are described in a file named "elvis.syn". Each time 
  4926.  a window switches to the "syntax" display mode, elvis scans this file for a 
  4927.  description of the language. If it can't find a description of the language, 
  4928.  then nothing will be displayed in a different font; "syntax" mode will look 
  4929.  exactly like "normal" mode. 
  4930.  
  4931.  The "elvis.syn" file is a text file. In it, blank lines and lines which start 
  4932.  with a '#' are ignored. Other lines begin with the name of an attribute; the 
  4933.  remaining words in the line are values for that attribute. Each language's 
  4934.  description begins with an attribute named "language". The following lines (up 
  4935.  to the next "language" line or the end of the file) describe that language. 
  4936.  
  4937.  The attributes names are: 
  4938.  
  4939.  language 
  4940.            This word is followed by a whitespace-delimited list of language 
  4941.            names. The names are case-sensitive, so you should probably give all 
  4942.            names in lowercase so they're easier for the user to type in. The 
  4943.            user can indicate which language to use by appending its name to the 
  4944.            name of the "syntax" display mode. For example, ":display syntax 
  4945.            c++" causes elvis to highlight the text appropriately for C++. 
  4946.  extension 
  4947.            This word is followed by the filename extensions which are commonly 
  4948.            used for this language. If the user doesn't specify which language 
  4949.            to load, then elvis scans through "elvis.syn" for an extension line 
  4950.            which matches the current file name. The extension lines must come 
  4951.            immediately after the language line. 
  4952.  
  4953.            NOTE: This is case sensitive!  If the file name extension will often 
  4954.            be used on case-insensitive file systems (e.g., most Microsoft) then 
  4955.            you'll probably want to give both uppercase and lowercase versions 
  4956.            of the extension.  For example, the description of Microsoft batch 
  4957.            file syntax includes "extension .bat .BAT". 
  4958.  keyword 
  4959.            This word is followed by a list of words which should be shown in 
  4960.            the keywordfont font. If omitted, then no words are shown in the 
  4961.            keywordfont. Long lists can be split into several keyword lines, if 
  4962.            you wish. Elvis doesn't care about the order of the words, but the 
  4963.            list will be easier to maintain if you keep it alphabetized. 
  4964.  
  4965.            Elvis supports three forms of keywords... 
  4966.                Most keywords begin with an alphanumeric character or a 
  4967.                 character in the startword list, and continue with zero or more 
  4968.                 characters which are alphanumeric or in the inword list. 
  4969.                The same startword/inword type of keywords can be made somewhat 
  4970.                 context sensitive by appending a single character which does 
  4971.                 not appear in the inword.  The keyword will only be recognized 
  4972.                 when it is immediately followed by that character.  The HTML 
  4973.                 syntax highlighting uses this feature to display parameters in 
  4974.                 a distinctive font. 
  4975.                Rarely, you may find it convenient to have keywords which 
  4976.                 consist of one or two punctuation characters, but which don't 
  4977.                 match the first form of keywords. This is mostly so that Perl's 
  4978.                 $# variable won't be displayed as a simple dollar sign followed 
  4979.                 by a comment. 
  4980.  
  4981.            You can list the same keyword in multiple lines (once each in a 
  4982.            keyword line, a font line, an anchor line, and a comment line) to 
  4983.            specify the various attributes of each keyword. You don't need to 
  4984.            list it in a keyword line first; you can introduce new keywords in 
  4985.            any of these four line types. 
  4986.  font 
  4987.            This word can be used to cause certain keywords to be displayed in 
  4988.            some font other than the keywordfont. The first word after font 
  4989.            should be the name of the font (normal, fixed, bold, emphasized, 
  4990.            italic, or underlined) or a one-letter abbreviation of a font name. 
  4991.            The line's remaining words are keywords which will be displayed in 
  4992.            that font. 
  4993.  anchor 
  4994.            This offers a way to restrict certain keywords, so they will only be 
  4995.            recognized as such if they occur in a particular column.  The first 
  4996.            word after "anchor" is a column number -- 1 for the leftmost column, 
  4997.            9 for the first tabstop, and so on. You can also use ^ instead of a 
  4998.            number to indicate that the keyword can only appear after whitespace 
  4999.            at the front of a line. The remainder of the "anchor" line is the 
  5000.            list of keywords which are only special when they occur in that 
  5001.            column. 
  5002.  comment 
  5003.            This word is followed by a keyword which marks the beginning of a 
  5004.            comment. The comment is assumed to end at the end of the line. 
  5005.            Comments are normally shown in the commentfont font, but if you've 
  5006.            overridden the keyword's font via a font line in elvis.syn, then the 
  5007.            whole comment will be displayed in that font instead. You can define 
  5008.            multiple comment keywords, and assign different fonts to them if you 
  5009.            wish. 
  5010.  
  5011.            The comment word  can also be followed by a pair of one- or 
  5012.            two-character sequences which mark the beginning and end of comments 
  5013.            which can include newlines. Elvis only supports one multi-line 
  5014.            comment style for each language, and it will always be displayed in 
  5015.            the commentfont font. 
  5016.  operator 
  5017.            This word is followed by a keyword which the language uses as a 
  5018.            prefix for operators, and then by a list of characters which can 
  5019.            appear in the operator itself.  This affects the ^] visual command 
  5020.            for tag searches.  As far as I know, the only language that uses 
  5021.            this is C++, where it is specified like this: 
  5022.  
  5023.                       operator operator ~!%^&*+|-=[]<>/
  5024.  
  5025.  preprocessor 
  5026.            This word is followed by a single character which, when used at the 
  5027.            beginning of a line, marks the start of a preprocessor directive. 
  5028.            For C, this is the # character. All preprocessor directives will 
  5029.            then be shown in the prepfont font. If omitted, nothing is displayed 
  5030.            in the prepfont. 
  5031.  prepquote 
  5032.            This word is followed by a single character, or a pair of single 
  5033.            characters, which are used as the quote characters surrounding a 
  5034.            file name in a preprocessor directive. For C, this is the < and > 
  5035.            characters. The name of the included file will then be displayed 
  5036.            using the stringfont font. If omitted, then preprocessor file names 
  5037.            will be highlighted as though they were arithmetic expressions. 
  5038.  function 
  5039.            This word is followed by a single character which, if it appears 
  5040.            after a word, indicates that the word should be displayed in the 
  5041.            functionfont font. For most languages, this will be a ( character. 
  5042.            If omitted, nothing is displayed in the functionfont. 
  5043.  startword 
  5044.  inword 
  5045.            These can be followed by a list of punctuation characters which may 
  5046.            appear at the start of a word, or in the remainder of the word, 
  5047.            respectively. Letters and digits are always legal in words; you 
  5048.            don't need to list them. 
  5049.  other 
  5050.            This word indicates which types of words should be displayed in the 
  5051.            otherfont font. If omitted, nothing is displayed in the otherfont. 
  5052.            It can be any combination of the following symbols: 
  5053.  
  5054.                       .-------------.-------------------------------------------------.
  5055.                       | SYMBOL      | HOW TO RECOGNIZE "OTHER" WORDS                  |
  5056.                       |-------------|-------------------------------------------------|
  5057.                       | allcaps     | length >= 2 chars, no lowercase characters      |
  5058.                       | initialcaps | 1st character is uppercase, some are lowercase  |
  5059.                       | initialpunct| 1st character is punctuation, from "startword"  |
  5060.                       | mixedcaps   | 1st character is lowercase, some are uppercase  |
  5061.                       | final_t     | length >= 3 chars, ends with "_t"               |
  5062.                       ^-------------^-------------------------------------------------^
  5063.  
  5064.  string 
  5065.            This word is followed by a single character, or a pair of single 
  5066.            characters, which are used as the quote characters surrounding 
  5067.            string literals. For C, this is the " character. String literals 
  5068.            will then be displayed using the stringfont font. If omitted, then 
  5069.            strings will not be recognized. 
  5070.  strnewline 
  5071.            This is followed by backslash, allowed, indent, or empty to indicate 
  5072.            how strings can be continued across lines. The default is backslash 
  5073.            which indicates a C-style backslash is required to quote the newline 
  5074.            characters (which C will then exclude from the string, but elvis 
  5075.            doesn't care about that). The other values all indicate that a 
  5076.            backslash is not needed, and also give some hints that help elvis 
  5077.            detect whether the top of the screen is inside a multi-line string. 
  5078.            Specifically, the indent value means that indented lines are rarely 
  5079.            a continuation of a string, empty means that empty lines are 
  5080.            probably not part of a string, and allowed makes no promises. 
  5081.  
  5082.            The allowed value would be too slow if strings' opening and closing 
  5083.            quotes are identical (e.g., if the " character appears at both ends 
  5084.            of a string); in this situation, elvis uses empty instead. 
  5085.  
  5086.            Note that the hints are only used for detecting whether the first 
  5087.            line starts in a multi-line string. When drawing text after that, 
  5088.            elvis treats all non-backslash values identically. 
  5089.  character 
  5090.            This word is followed by a single character, or a pair of single 
  5091.            characters, which are used as the quote characters surrounding 
  5092.            character literals. For C, this is the ' character. This is shown 
  5093.            using the stringfont font, like strings. When parsing, the only 
  5094.            difference between the two is that characters can't span lines, but 
  5095.            strings can. 
  5096.  regexp 
  5097.            This word is followed by a list of characters which can be used for 
  5098.            delimiting a regular expression, which some languages support as a 
  5099.            means for specifying strings with metacharacters. (See Section 5 of 
  5100.            this manual for a description of elvis' own implementation of 
  5101.            regular expressions, which is a typical example.) Regular 
  5102.            expressions are displayed using the stringfont font. 
  5103.  
  5104.            Note that regexp accepts a list of characters, while string and 
  5105.            character support only a single character. This is because many 
  5106.            programming languages allow the programmer to choose from a variety 
  5107.            of delimiting characters. 
  5108.  useregexp 
  5109.            The most commonly used delimiter for regular expressions is '/', 
  5110.            which many languages also use as the division operator. To avoid 
  5111.            mistakenly displaying the division operator as the start of a 
  5112.            regular expression, elvis must be sensitive to the context in which 
  5113.            it is used. That's what this word is for. The useregexp word is 
  5114.            followed by a list of keywords and/or punctuation characters which 
  5115.            allow the next character to be recognized as a regular expression. 
  5116.            Additionally, regular expressions are allowed at the start of a 
  5117.            line. 
  5118.  useregsub 
  5119.            This is used for listing keywords and punctuation characters which 
  5120.            may be followed by a regular expression and then substitution text. 
  5121.  ignorecase 
  5122.            This word should be followed by true or false. If true, then elvis 
  5123.            won't distinguish between uppercase and lowercase letters when 
  5124.            testing whether a word is a keyword (except that in the elvis.syn 
  5125.            file, the keywords should be listed in lowercase). If omitted, elvis 
  5126.            assumes it should be false. 
  5127.  
  5128.  
  5129.  7.3.3 Example 
  5130.  
  5131.   The elvis.syn file shipped with elvis contains some good examples of language 
  5132.  descriptions. Here's an excerpt from it, describing the Java language. 
  5133.  
  5134.   language java
  5135.   extension .java .jav
  5136.   keyword abstract boolean break byte byvalue case cast catch char
  5137.   keyword class const continue default do double else extends false
  5138.   keyword final finally float for future generic goto if implements
  5139.   keyword import inner instanceof int interface long native new null
  5140.   keyword operator outer package private protected public rest return
  5141.   keyword short static super switch synchronized this throw throws
  5142.   keyword transient true try var void volatile while
  5143.   comment //
  5144.   comment /* */
  5145.   function (
  5146.   string "
  5147.   character '
  5148.   startword _
  5149.   inword _
  5150.   other allcaps initialcaps
  5151.  
  5152.  There is no preprocessor line, because java doesn't use a preprocessor. The 
  5153.  "allcaps" and "initialcaps" symbols are given so that constants and class 
  5154.  names will be shown in the otherfont. 
  5155.  
  5156.  7.4 Hex mode 
  5157.  
  5158.   The "hex" display mode is an interactive hex dump of the buffer. This is good 
  5159.  for examining or editing binary files. 
  5160.  
  5161.  One handy feature is the ability to enter characters in hex (either in input 
  5162.  mode or as the argument to an r visual command) by typing ^X followed by two 
  5163.  hex digits. This feature is always available regardless of the display mode... 
  5164.  but this is where is it most useful. 
  5165.  
  5166.  7.5 HTML mode 
  5167.  
  5168.   HTML is the language used for constructing pages on the World Wide Web. 
  5169.  Elvis' "html" display mode supports a subset of HTML, which it uses for 
  5170.  displaying the online help documentation (including this very document). 
  5171.  
  5172.  HTML is a markup language. This means that documents contain a mixture of text 
  5173.  and formatting instructions. In HTML there are two types of instructions, 
  5174.  called tags and entities. When the document is processed by a program such as 
  5175.  Netscape or elvis (in html mode), the tags are stripped out, the entities are 
  5176.  converted to a kind of text, and the text is formatted and presented to the 
  5177.  user. Ordinarily the user will never see the tags. 
  5178.  
  5179.  Since elvis is primarily an editor, not a viewer, it has two options which 
  5180.  allow the tags to become visible: the showmarkups option causes a tag to 
  5181.  become visible if the cursor is moved onto it, and the list option makes all 
  5182.  tags visible regardless of the cursor position. 
  5183.  
  5184.  There are a lot of good "How To Use HTML" documents on the Net. This is not 
  5185.  one of them! I don't intend to do much more than describe the quirks of elvis' 
  5186.  implementation of HTML here. 
  5187.  
  5188.  I added HTML support to elvis mostly to support the online help. Consequently, 
  5189.  if a feature is hard to implement and the online documentation doesn't use it, 
  5190.  then I didn't implement that feature. 
  5191.  
  5192.  If you intend to use elvis as a browser, then I suggest you read the 
  5193.  approriate section in the Tip chapter. 
  5194.  
  5195.  7.5.1 Formatting tags 
  5196.  
  5197.   Elvis supports the following HTML tags. Unsupported tags are silently 
  5198.  ignored. Newline characters aren't supported within tags; each tag must fit on 
  5199.  a single line. 
  5200.  
  5201.  <html> ... </html> 
  5202.            The entire document should be enclosed in these tags. They don't 
  5203.            actually do anything to help format the document, but they may help 
  5204.            programs recognize that the document is, in fact, written in HTML. 
  5205.  <head> ... </head> 
  5206.            These should be used to bracket the document's header, if it has 
  5207.            one. 
  5208.  <title> ... </title> 
  5209.            These tags are only legal in the document's header. Any text between 
  5210.            the <title> and </title> tags will be stored internally as the title 
  5211.            of the document. If you print the document, elvis will display the 
  5212.            title at the top of each page. 
  5213.  <body> ... </body> 
  5214.            These should be used to bracket the body of the document. They don't 
  5215.            actually do anything in elvis, but real Web browsers such as 
  5216.            Netscape allow you to specify backgrounds and patterns via 
  5217.            BGCOLOR=... and BACKGROUND=... arguments, respectively. 
  5218.  <h1> ... </h1> 
  5219.            These tags bracket the most visible type of section header. Elvis 
  5220.            displays <h1> ... </h1> headers in boldface, flush against the left 
  5221.            edge of the page. When printing, these headers cause a page break. 
  5222.  <h2> ... </h2> 
  5223.            These bracket the second most visible type of section header. Elvis 
  5224.            displays <h2> ... </h2> headers in boldface, indented slightly from 
  5225.            the left edge. When printing, these may cause a page break if they 
  5226.            would otherwise appear near the bottom of a page. 
  5227.  <h3> ... </h3> 
  5228.            These bracket the third most visible type of section header. Elvis 
  5229.            displays them in boldface, indented fully from the left edge so that 
  5230.            it lines up with normal text. 
  5231.  <h4>...</h4> 
  5232.  <h5>...</h5> 
  5233.  <h6>...</h6> 
  5234.            These are very minor section headers. Conventional wisdom says that 
  5235.            if you're using this many section headers then you would probably do 
  5236.            better to split your document into several smaller documents. Elvis 
  5237.            displays these headers in an italic font. 
  5238.  <p> 
  5239.            This tag should be placed at the start of each normal paragraph, 
  5240.            with the possible exception of the first paragraph after a section 
  5241.            header. It causes a blank line to be generated, and any later text 
  5242.            to appear starting on a new line. 
  5243.  <br> 
  5244.            This causes any later text to appear starting on a new line. It 
  5245.            differs from <p> in that <br> doesn't output a blank line. 
  5246.  <hr> 
  5247.            This outputs a "horizontal rule" -- a line all the way across the 
  5248.            page. 
  5249.  <img alt=... src=...> 
  5250.            Elvis can't display graphics, but if it encounters an <img> tag 
  5251.            which has an alternate text form (as denoted by an img="text" 
  5252.            parameter) then it'll display the alternate text. Otherwise elvis 
  5253.            will display "src" URL. Also, if the image isn't already part of a 
  5254.            hypertext link, then elvis will treat it as a link to the image's 
  5255.            binary data; this offers you a way to fetch images, even though 
  5256.            elvis can't display them. The supported URL formats are described in 
  5257.            the discussion of the <a> tag, below. 
  5258.  <frame name=... src=...> 
  5259.            Elvis can't display frames either, but it will display the frame's 
  5260.            name, and treat that name as a hypertext link to the frame's 
  5261.            document. This offers a simple work-around for elvis' lack of real 
  5262.            frame support. The supported URL formats are described in the 
  5263.            discussion of the <a> tag, below. 
  5264.  <blockquote> ... </blockquote> 
  5265.            This is used to mark a large chunk text which is quoted from another 
  5266.            source. Elvis will indent the enclosed text. 
  5267.  <pre> ... </pre> 
  5268.            This brackets text which has already been preformatted by the 
  5269.            document's author. Elvis will treat tabs and newlines literally. 
  5270.            (Outside of <pre> ... </pre>, they would normally be treated like 
  5271.            spaces.) This has been used for presenting tables, poetry, and 
  5272.            source code examples. 
  5273.  
  5274.            In fact, elvis has an extension that is useful for tables: If you 
  5275.            start with <pre graphic> then elvis will convert certain characters 
  5276.            into graphic line-drawing characters. When adjacent to a hyphen 
  5277.            character, the hyphen, period, caret are converted into appropriate 
  5278.            graphic characters. Additionally, the vertical bar character is 
  5279.            always converted to a graphic character. The following was done with 
  5280.            a plain <pre>... 
  5281.  
  5282.                       .--.--.
  5283.                       |--|--|
  5284.                       |  |  |
  5285.                       ^--^--^
  5286.            ... and this was done with <pre graphic>... 
  5287.  
  5288.                       .--.--.
  5289.                       |--|--|
  5290.                       |  |  |
  5291.                       ^--^--^
  5292.  
  5293.  <table>...</table> 
  5294.  <tr>...</tr> 
  5295.  <th>...</th> 
  5296.  <td>...</td> 
  5297.            These are used for implementing tables in HTML 3.0. Each table 
  5298.            should be enclosed in a <table>...</table> pair. Within the table, 
  5299.            each row should be delimited with a <tr>...</tr> pair. Within each 
  5300.            row, the information for each column should be enclosed in either a 
  5301.            <th>...</th> pair for headers, or a <td>...</td> pair for data. 
  5302.  
  5303.            Elvis doesn't really support these tags very well. Only the bare 
  5304.            essentials of these commands have been implemented. They are 
  5305.            intended to make tables recognizable as being tables, but not 
  5306.            necessarily make them easy to read. 
  5307.  <dir>...</dir> 
  5308.  <xmp>...</xmp> 
  5309.            These are treated almost exactly like <pre> ... </pre>. There are 
  5310.            supposed to be some differences, but elvis doesn't support those 
  5311.            differences. 
  5312.  <dl> ... </dl> 
  5313.            These are used to bracket a list of definitions. The definitions 
  5314.            themselves are marked with the <dt> and <dd> tags, described below. 
  5315.  <dt> 
  5316.            The text after this tag is used as a term to be defined. Elvis 
  5317.            displays this text in bold face, indented by the same amount as 
  5318.            normal text. This is only legal in a <dl>...</dl> pair. 
  5319.  <dd> 
  5320.            The text after this tag is used as the definition of a term. Elvis 
  5321.            displays it in the normal font, indented somewhat more than normal 
  5322.            text or the <dt> text. This is only legal in a <dl>...</dl> pair. 
  5323.  <ol> ... </ol> 
  5324.            These are used to enclose an ordered list. The official 
  5325.            specifications say that lists may be nested inside one another, but 
  5326.            elvis doesn't allow ordered lists to appear inside any other type of 
  5327.            list. If a document uses <ol> ... </ol> inside another list, then 
  5328.            elvis will act as though  <ul> ... </ul> had been used instead. This 
  5329.            means that the list items will be marked with bullets instead of 
  5330.            numbers. Within the list, <li> tags are used to mark the items. 
  5331.  <ul> ... </ul> 
  5332.            These enclose an unordered list. Each item in the list should be 
  5333.            marked with a <li> tag. 
  5334.  <menu> ... </menu> 
  5335.            These enclose an unordered list, like <ul> ... </ul>, but other Web 
  5336.            browsers may display <menu> ... </menu> lists in a more compact 
  5337.            manner. 
  5338.  <li> 
  5339.            This is used to mark the start of a new item in a list. 
  5340.  <input type=... size=... value=...> 
  5341.  <textarea cols=...> 
  5342.            Elvis can display a mockup of a form, so you can have some idea of 
  5343.            how the form would look on a real browser. The forms won't really 
  5344.            work in elvis! Elvis displays forms for the sole purpose of helping 
  5345.            you define the form layout. Buttons are displayed as reverse-video 
  5346.            characters, and text input areas are displayed as underlined spaces. 
  5347.            The <textarea> image is always 3 rows high, regardless of any 
  5348.            rows=... value you supply. 
  5349.  <a> ... </a> 
  5350.            There are two forms of this tag: <a href=URL>...</a> to mark the 
  5351.            source of a hypertext link, and <a name=anchor></a> to mark the 
  5352.            destination of a hypertext link. 
  5353.  
  5354.            Elvis doesn't support as many URL protocols as a real browser. It 
  5355.            only supports the pseudo-protocol "buffer:", and the real protocols 
  5356.            "file:" and (on some platforms) "http:" and "ftp:". Only the 
  5357.            following URL formats are supported: 
  5358.  
  5359.                               buffer:bufname
  5360.                                       Switch to the buffer named bufname.  Within that
  5361.                                       buffer, the cursor will be moved to the position
  5362.                                       of the most recent activity to that buffer.  This
  5363.                                       is an elvis-only extension!
  5364.  
  5365.                               [protocol:]filename.ext
  5366.                                       Load the named file, and move the cursor to the
  5367.                                       top of that file's buffer.
  5368.  
  5369.                               [protocol:]filename.html#anchor
  5370.                                       Load the named file, and move the cursor to the
  5371.                                       first visible character after an <a name=anchor>
  5372.                                       tag.  This is only useful for HTML files.
  5373.  
  5374.                               [protocol:]filename.ext?data
  5375.                                       For the "file:" protocol, the data can be any valid
  5376.                                       ex line address, including a "nomagic" regular
  5377.                                       expression or a line number.  Elvis loads the file
  5378.                                       and moves the cursor to the address.  This is an
  5379.                                       elvis-only extension!
  5380.  
  5381.                                       For the "http:" protocol, the data is passed to the
  5382.                                       HTTP server; it's interpretation is handled by the
  5383.                                       HTTP server (or more likely a CGI script).
  5384.  
  5385.                                       Either way, the data should be URL-encoded,
  5386.                                       which means...
  5387.                                               * + represents a space character
  5388.                                               * %2B represents a '+' character
  5389.                                               * %25 represents a '%' character
  5390.                                               * %22 represents a '"' character
  5391.                                               * %3C represents a '<' character
  5392.                                               * %3E represents a '>' character
  5393.                                               * Other printable ASCII characters can be
  5394.                                                 given literally
  5395.                                               * Anything else (non-ASCII characters or
  5396.                                                 ASCII control characters) should be given
  5397.                                                 as a '%' followed by two hex digits for
  5398.                                                 its ordinal value.
  5399.  
  5400.  <cite> ... </cite> 
  5401.            These enclose a citation.  Elvis displays the citation in italics. 
  5402.  <dfn> ... </dfn> 
  5403.            These enclose a term that is being defined.  Elvis displays the term 
  5404.            in italics. Netscape doesn't support this tag, so you should 
  5405.            probably avoid it. Use <em> ... </em> instead. 
  5406.  <em> ... </em> 
  5407.            These enclose text which should be emphasized some way. Elvis 
  5408.            displays the text in (you guessed it) italics. 
  5409.  <kbd> ... </kbd> 
  5410.            These enclose text which the user might want to type into the 
  5411.            computer some day. Generally, each word of the text will be the 
  5412.            legend from a keytop on the user's keyboard, such as Esc or Tab. 
  5413.            Elvis displays this text in boldface. 
  5414.  <strong> ... </strong> 
  5415.            These enclose text which should be emphasized a heck of a lot. Elvis 
  5416.            displays this text in boldface. 
  5417.  <var> ... </var> 
  5418.            These enclose text which indicates where some variable argument is 
  5419.            to be placed.  Elvis displays this text in italics. 
  5420.  <address> ... </address> 
  5421.            These enclose an address.  Elvis displays the address in italics. 
  5422.            Note that this is typically used for e-mail addresses and Web URLs, 
  5423.            not postal addresses. 
  5424.  <code> ... </code> 
  5425.            These enclose example code which is included in the body of a 
  5426.            paragraph. Elvis displays the text in the fixed font -- which, 
  5427.            unfortunately, looks exactly like the normal font on most printers. 
  5428.  <b> ... </b> 
  5429.            The enclosed text is displayed in bold. The <strong> ... </strong> 
  5430.            tags are preferred, if you really want to emphasize text. 
  5431.  <i> ... </i> 
  5432.            The enclosed text is displayed in italics. The <em> ... </em> tags 
  5433.            are preferred, if you really want to emphasize text. 
  5434.  <u> ... </u> 
  5435.            The enclosed text is displayed underlined. You should avoid using 
  5436.            this tag, because underlining is also used to indicate hypertext 
  5437.            links.  The <u> ... </u> text would look like a hypertext link but 
  5438.            wouldn't work like one. 
  5439.  <tt> ... </tt> 
  5440.            The enclosed text is displayed in the fixed font. The <code> ... 
  5441.            </code> tags are preferred, if you really want to embed code 
  5442.            examples in the body of a paragraph. 
  5443.  
  5444.  Note that most of these tags come in pairs, and the ending tag's name includes 
  5445.  a '/' character. Elvis doesn't verify that the pairs match up correctly. 
  5446.  Because of this, I strongly suggest that you preview your document using a 
  5447.  more powerful HTML viewer such as Netscape before sharing it with the world. 
  5448.  
  5449.  7.5.2 Character entities 
  5450.  
  5451.   Most text characters can be given literally in an HTML file, but some need 
  5452.  special treatment. The most notable are <, >, &, and non-ASCII characters. 
  5453.  HTML uses "character entities" to represent them. 
  5454.  
  5455.  Many of the entities are automatically derived from the digraph table. If you 
  5456.  don't know about digraphs, you should look up the :digraph command, and the 
  5457.  discussion on how to use them in input mode. 
  5458.  
  5459.  All of these must begin with an '&' character and end with a ';' character. In 
  5460.  the earliest HTML standard, the ';' was optional, but elvis requires it. If 
  5461.  you omit the ';' from an entity, then elvis will display it literally (not 
  5462.  translate it to a single character). 
  5463.  
  5464.  Elvis supports the following character entities: 
  5465.  
  5466.  < or < 
  5467.  > or > 
  5468.            The less-than and greater-than symbols (< and >). 
  5469.  & or & 
  5470.            The ampersand character character (&). 
  5471.  " or " 
  5472.  “ 
  5473.  ” 
  5474.            The double-quote character ("). 
  5475.  ‘ 
  5476.  ’ 
  5477.            The left and right single quote characters (‘ and ’). 
  5478.  « 
  5479.  » 
  5480.            The left and right angle quote characters (« and Γòù). These are 
  5481.            formed from digraphs which combine two < characters or two > 
  5482.            characters, respectively. 
  5483.    or &NBSP; 
  5484.            A non-breaking space. This is displayed as a space character. It 
  5485.            differs from plain old whitespace in that   can't be converted 
  5486.            into a line break. 
  5487.  © or © 
  5488.            The copyright symbol ((C)). Elvis looks for a digraph which combines 
  5489.            a lowercase c and uppercase O. If there is no such digraph, then 
  5490.            elvis displays c. 
  5491.  ® or ® 
  5492.            The registered trademark symbol (╨╛). Elvis looks for a digraph which 
  5493.            combines a lowercase r and uppercase O. If there is no such digraph, 
  5494.            then elvis displays r. 
  5495.  £ 
  5496.  ¢ 
  5497.  ¥ 
  5498.  ¤ 
  5499.            Currency symbols (╨│, ╨▓, ╨╡, and ╨┤). These are formed from digraphs 
  5500.            combining the letter L, C, Y or X (respectively) with the $ 
  5501.            character. 
  5502.  ° 
  5503.            The degree symbol (Γûæ). This is formed from a digraph combining two * 
  5504.            characters. 
  5505.  & iexcl; 
  5506.  ¿ 
  5507.            Inverted exclamation mark and inverted question mark (╨▒ and ΓöÉ). 
  5508.            These are formed from digraphs combining the ! or ? character 
  5509.            (respectively) with the ~ character.  If no such digraph exists, 
  5510.            then the non-inverted version of that character is shown. 
  5511.  ­ 
  5512.            A small hyphen (╨╜). 
  5513.  Æ 
  5514.            A digraph combining the letters A and E (Γò₧). If no such digraph has 
  5515.            been defined, then elvis will display E. 
  5516.  æ 
  5517.            A digraph combining the letters a and e (Γò₧). If no such digraph has 
  5518.            been defined, then elvis will display e. 
  5519.  Ð 
  5520.            A digraph combining a hyphen and the letter D (Γò¿). 
  5521.  ð 
  5522.            A digraph combining a hyphen and the letter d (Γò¿). 
  5523.  Þ 
  5524.            A digraph combining the letters T and P (ΓûÉ), or just plain P if 
  5525.            there is no such digraph. 
  5526.  þ 
  5527.            A digraph combining the letters t and p (ΓûÉ), or just plain p if 
  5528.            there is no such digraph. 
  5529.  ß 
  5530.            A digraph combining the letters s and z (ΓûÇ), or just plain z if 
  5531.            there is no such digraph. 
  5532.  &lettergrave; 
  5533.            A digraph combining the ` and letter, such as à (Γöö). 
  5534.  &letteracute; 
  5535.            A digraph combining the ' and letter, such as á (Γö┤). 
  5536.  &lettercirc; 
  5537.            A digraph combining the ^ and letter, such as â (Γö¼). 
  5538.  &lettertilde; 
  5539.            A digraph combining the ~ and letter, such as ã (Γö£). 
  5540.  &letteruml; 
  5541.            A digraph combining the " and letter, such as ä (ΓöÇ). 
  5542.  &letterring; 
  5543.            A digraph combining the * and letter, such as å (Γö╝). 
  5544.  &lettercedil; 
  5545.            A digraph combining the , and letter, such as ç (Γòƒ). 
  5546.  &letterslash; 
  5547.            A digraph combining the / and letter, such as ø (Γò¬). 
  5548.  &#number; 
  5549.            The character whose ordinal value is number. This should be avoided, 
  5550.            because you can't be sure which symbol set will be used when 
  5551.            somebody else views the document. Some documents use   which is 
  5552.            a "hard" space in the ISO Latin-1 symbol set, but they should really 
  5553.            use  . 
  5554.  
  5555.  If your document uses a character entity which elvis doesn't support, then 
  5556.  elvis will not convert that entity into a single character; instead, it will 
  5557.  be displayed literally. 
  5558.  
  5559.  If elvis looks for a digraph containing a punctuation character and a letter, 
  5560.  and no such digraph has been defined, then elvis will use the plain ASCII 
  5561.  letter. 
  5562.  
  5563.  7.5.3 Using hypertext 
  5564.  
  5565.  The HTML hypertext has been implemented as a variation on the standard vi :tag 
  5566.  command. Consequently, all of the wonderful commands that elvis offers for 
  5567.  browsing C source code can also be used for browsing HTML documents. 
  5568.  
  5569.  In EX mode, you can use :tag URL to pursue a hypertext reference, and :pop to 
  5570.  come back afterward. 
  5571.  
  5572.  In VI mode, you can move the cursor onto the underlined text which denotes a 
  5573.  hypertext reference, and hit ^] to pursue the reference, and ^T to come back 
  5574.  afterward. Also, when in html mode the Tab key searches forward for the next 
  5575.  hypertext reference, and the Enter key performs tag lookup just like the ^] 
  5576.  key. 
  5577.  
  5578.  If elvis' user interface supports a mouse, then you can double-click the left 
  5579.  button to follow a hypertext reference, and double-click the right button to 
  5580.  come back afterward. 
  5581.  
  5582.  7.6 Man mode 
  5583.  
  5584.   The man display mode uses a markup language, as does the html display mode. 
  5585.  The difference is that the man display mode's markup language resembles that 
  5586.  of "troff -man". It is used for formatting entries in the UNIX user manuals. 
  5587.  
  5588.  Elvis supports only a tiny subset of the troff commands and -man macros. It is 
  5589.  adequate for a surprising number of man pages, though. The most notable 
  5590.  failing is the lack of number/string registers. 
  5591.  
  5592.  Commands which start with a "." are only recognized at the start of a line. 
  5593.  The remainder of the line is used as arguments to the command. Commands which 
  5594.  start with a "\" are recognized anywhere. 
  5595.  
  5596.  .\" comment 
  5597.            Elvis ignores any text on a .\" command line. 
  5598.  .TH name section 
  5599.            This command should appear at the top of the man page. It declares 
  5600.            the name of the program to be described, and the section of the 
  5601.            manual where it should appear. User programs are usually documented 
  5602.            in section 1. 
  5603.  .SH name 
  5604.            The name is displayed as a section header. If name contains 
  5605.            whitespace, then it should be enclosed in quotes. Man pages usually 
  5606.            have sections named NAME, SYNOPSIS, DESCRIPTION, OPTIONS, FILES, 
  5607.            ENVIRONMENT, "SEE ALSO", BUGS, and AUTHOR, in that order. The 
  5608.            "elvis.man" file is a typical example. 
  5609.  .SS name 
  5610.            The name is displayed as a subsection header. If name contains 
  5611.            whitespace, then it should be enclosed in quotes. Man pages rarely 
  5612.            use subsections. 
  5613.  .B text 
  5614.            The text is displayed in boldface. 
  5615.  .I text 
  5616.            The text is displayed in italics. 
  5617.  .SM text 
  5618.            Troff would display the text in a slightly smaller font. Elvis 
  5619.            doesn't support multiple font sizes, though, so it simply outputs 
  5620.            the text. 
  5621.  .RB text1 text2 ... 
  5622.  .BR text1 text2 ... 
  5623.  .RI text1 text2 ... 
  5624.  .IR text1 text2 ... 
  5625.  .BS text1 text2 ... 
  5626.  .SB text1 text2 ... 
  5627.            These output the argument text, alternating between two fonts. For 
  5628.            example, .BR outputs the first argument word in boldface, the second 
  5629.            in normal (a.k.a. Roman), the third in boldface again, and so on. 
  5630.            The "S" font is supposed to be small, but elvis uses the normal font 
  5631.            for that. All whitespace is removed from between the argument words. 
  5632.  .IP label 
  5633.            This starts an indented paragraph.  The label, if given, is output 
  5634.            before the paragraph, and without indentation. This is typically 
  5635.            used for presenting a term (the label) and its definition (the 
  5636.            paragraph). 
  5637.  .TP 
  5638.            This starts a hanging paragraph. That's like a .IP indented 
  5639.            paragraph, except the label is declared on the line following the 
  5640.            command, instead of on the command line itself. The body of the 
  5641.            paragraph starts on the second line after the command line. 
  5642.  .P 
  5643.  .LP 
  5644.  .HP 
  5645.            Any of these will start a regular paragraph. In addition, a series 
  5646.            of one or more blank lines will also start a paragraph. 
  5647.  .RS 
  5648.  .RE 
  5649.            These start and end a relative indentation, respectively. In other 
  5650.            words, .RS increases the indentation of any subsequent text, and .RE 
  5651.            reduces indentation. 
  5652.  .br 
  5653.            This causes a line break. 
  5654.  .sp 
  5655.            This causes a line break, and then leaves a blank line. 
  5656.  .nf 
  5657.  .fi 
  5658.            These turn "fill mode" off and on, respectively. When fill mode is 
  5659.            turned off, elvis will perform much less formatting. It is similar 
  5660.            to the <pre>...</pre> tags in HTML. 
  5661.  .TS 
  5662.  .TE 
  5663.            In the real troff, these mark the start and end of a table, and the 
  5664.            line after the .TS indicates the format of the table. For elvis, 
  5665.            these are just like .nf and .fi, respectively, except that .TS hides 
  5666.            the line that follows it (so the table format is hidden). 
  5667.  .DS 
  5668.  .DE 
  5669.            These mark the beginning and end of a "display." Inside the display, 
  5670.            "fill mode" is turned off, just as it is for the .fi and .nf 
  5671.            markups. The real troff tries to avoid page-breaks inside a display, 
  5672.            but elvis isn't that smart. 
  5673.  \e 
  5674.            This is replaced by the backslash character. 
  5675.  \| 
  5676.  \& 
  5677.  \^ 
  5678.            These are deleted. If you ever feel a need to put a period at the 
  5679.            start of a line, and don't want it to be treated like a command 
  5680.            line, then put \&. in your file. The \& will prevent the period from 
  5681.            being interpreted as the start of a command line, but will not show 
  5682.            in the output. 
  5683.  \fB 
  5684.  \f1 
  5685.            Switch to boldface. 
  5686.  \fI 
  5687.  \f2 
  5688.            Switch to italics. 
  5689.  \fR 
  5690.  \f0 
  5691.            Switch to the normal font. 
  5692.  \fP 
  5693.            Switch to the default font for this context. That's boldface in 
  5694.            headings, and normal the rest of the time. Actually, \fP is supposed 
  5695.            to switch to the "previous" font, whatever that was, but elvis 
  5696.            doesn't do it that way. 
  5697.  \* 
  5698.  \n 
  5699.            In the real troff, these are used for accessing the value of a 
  5700.            string or numeric register, respectively. Elvis doesn't support 
  5701.            registers; it'll just display the \* or \n expression literally. 
  5702.  \character 
  5703.            When character is something other than one of the above, output the 
  5704.            character. In particular, \\ outputs a single backslash. 
  5705.  
  5706.  Troff source was never designed to be interactively edited, and although I did 
  5707.  the best I could, attempting to edit in "man" mode is still a disorienting 
  5708.  experience. I suggest you get in the habit of using "normal" mode when making 
  5709.  changes, and "man" mode to preview the effect of those changes. The ^Wd 
  5710.  command makes switching between modes a pretty easy thing to do. 
  5711.  
  5712.  Unrecognized commands which start with "." are silently ignored. 
  5713.  
  5714.  Unrecognized commands which start with "\" will be output without the initial 
  5715.  "\" character. This falls far short of the ideal, but there are just too many 
  5716.  weird escapes to bother implementing in something that isn't being advertised 
  5717.  as a troff clone. (NOTE: Elvis is not a troff clone.) 
  5718.  
  5719.  A tip: If your document contains sequences which look like \*X or \*(XY (for 
  5720.  any characters X and Y), then it is trying to use defined strings. Look for a 
  5721.  ".ds X foo" command near the top of the document to find out what that string 
  5722.  is supposed to look like. The string \*(bu is a bullet character. 
  5723.  
  5724.  7.7 TeX mode 
  5725.  
  5726.   Don't get excited, this isn't that good. I spent two days adding a quick hack 
  5727.  to the html/man display code to allow it to almost format some TeX documents. 
  5728.  But the semantics of TeX are sufficiently different from HTML or nroff -man 
  5729.  that a truly satisfying TeX formatter would need totally separate formatting 
  5730.  code, which would require a couple of weeks to implement and would add about 
  5731.  25k bytes to the elvis executable. Since I don't use TeX myself, my priorities 
  5732.  don't justify that. They justify a two-day hack and about 3k bytes of extra 
  5733.  code. 
  5734.  
  5735.  7.7.1 Supported TeX markups 
  5736.  
  5737.   The following describes the subset of TeX that elvis now supports. It also 
  5738.  describes the quirks of elvis' implementation. 
  5739.  
  5740.  %comment 
  5741.            Anything between a % and the end of the line is ignored. 
  5742.  (blank lines) 
  5743.  \p 
  5744.            Two or more consecutive newlines (i.e., one or more blank lines) 
  5745.            indicate a paragraph break. You can also use \p to start a new 
  5746.            paragraph; in fact, that's how all paragraph breaks are displayed if 
  5747.            you set the list or showmarkups options. 
  5748.  { ... } 
  5749.            The { character causes the current font to be stored in a hidden 
  5750.            memory location, and } resets the current font to the stored value. 
  5751.            A few other markups, described below, use the { ... } notation for 
  5752.            their arguments. 
  5753.  
  5754.            This differs from TeX in two major ways: 
  5755.                In addition to the font, TeX stores other attributes such as 
  5756.                 the indentation level. Elvis only stores the font. 
  5757.                Elvis has only a single location for storing fonts, but TeX 
  5758.                 uses a stack, which allows you to nest { ... } pairs to good 
  5759.                 effect. Elvis will become confused by nested { ... } pairs. 
  5760.  \mathrelpunctuation 
  5761.  \charpunctuation 
  5762.  \punctuation 
  5763.            These output the punctuation character literally. In the real TeX, 
  5764.            \mathrel is more subtle than that. 
  5765.  \title{text} 
  5766.            Display the text as a title: Centered, in the "bold" font. 
  5767.  \author{text} 
  5768.            Display the text as an author name: Centered, in the "italic" font. 
  5769.  \section{text} 
  5770.            Display the text as a section title:  Starting at the leftmost 
  5771.            column, in the "bold" font. Also, if it would be printed near the 
  5772.            end of a page then it will be moved to the start of the next page 
  5773.            instead. 
  5774.  \subsection{text} 
  5775.            Display the text as a subsection title: Indented slightly from the 
  5776.            left edge, and in the "bold" font. 
  5777.  \hline 
  5778.            Draw a horizonal line across the page. Unfortunately, elvis' 
  5779.            implementation tends to leave a blank line above the horizontal 
  5780.            line. 
  5781.  \begin{table} 
  5782.  \hfil or \hfill or & ; 
  5783.  \cr or \\ 
  5784.  \end{table} 
  5785.            These are used  to present tables. \cr or \\ marks the end of each 
  5786.            row, and \hfil, \hfill, or & mark the end of a column's data within 
  5787.            a row. TeX actually offers other commands to control the shape of 
  5788.            the table, but elvis doesn't support those commands. 
  5789.  \begin{quote} 
  5790.  \end{quote} 
  5791.            These are used to enclose a quoted paragraph. Elvis uses extra 
  5792.            indentation while displaying the paragraph. 
  5793.  \begin{verbatim} 
  5794.  \end{verbatim} 
  5795.            These are used to enclose text which should be subjected to less 
  5796.            processing; in particular, indentation and line breaks are 
  5797.            preserved. 
  5798.  $$ 
  5799.            A $$ pair toggles between the "normal" font with standard text 
  5800.            filling, and the "fixed" font with lines displayed verbatim. This is 
  5801.            typically used for presenting longer command-line examples on lines 
  5802.            by themselves between paragraphs. 
  5803.  \begin{description} 
  5804.  \item[term] 
  5805.  \end{description} 
  5806.            This is used for presenting a series of terms followed by their 
  5807.            definitions. 
  5808.  \begin{enumerate} 
  5809.  \item 
  5810.  \end{enumerate} 
  5811.            This is used for presenting a numbered list of items. Each item 
  5812.            should be preceeded by \item. 
  5813.  \begin{itemize} 
  5814.  \item 
  5815.  \item[bullet] 
  5816.  \end{itemize} 
  5817.            This is used for presenting a list of items. Each item should be 
  5818.            preceded either by \item to mark it with an asterisk, or by 
  5819.            \item[bullet] to mark it with something other than an asterisk. 
  5820.  \tt 
  5821.            Switch to the "fixed" font. Generally, all of these font-switching 
  5822.            commands will be used with { ... }, like this: 
  5823.  
  5824.                       Normal text {\tt Fixed-font text} Normal again.
  5825.  
  5826.  \bf 
  5827.            Switch to the "bold" font. 
  5828.  \em 
  5829.  \it 
  5830.            Switch to the "italic" font. 
  5831.  \fo 
  5832.            This is a common macro which indicates the following text is in a 
  5833.            foreign language. Elvis supports it; it switches to the "italic" 
  5834.            font. 
  5835.  $ 
  5836.            A single $ character toggles between the "normal" font and the 
  5837.            "fixed" font. This is often used for marking computer commands in 
  5838.            the body of a paragraph. 
  5839.  
  5840.  
  5841.  7.7.2 Unsupported TeX markups 
  5842.  
  5843.   The following describes how elvis deals with certain unsupported features of 
  5844.  TeX. 
  5845.  
  5846.  \vspace{value} 
  5847.            This is treated like a paragraph break. 
  5848.  \footnote{text} 
  5849.            The footnote is completely hidden, including its text. 
  5850.  \halign... 
  5851.  \begin{tabular}... 
  5852.  \multicolumn... 
  5853.  \set... 
  5854.  \def... 
  5855.  \new... 
  5856.  \catcode... 
  5857.  \document... 
  5858.  \other=... 
  5859.            Everything up to the end of the line is skipped. Other than that, 
  5860.            the markup has no effect. 
  5861.  \other{text} 
  5862.            The markup and its text are ignored. 
  5863.  \other 
  5864.            Unrecognized markups are generally ignored. The single big exception 
  5865.            is that if the markup is followed by punctuation or a 
  5866.            backslash-space pair, then elvis assumes the markup is probably just 
  5867.            an abbreviation for some word or phrase which is supposed to be 
  5868.            displayed in a special font; so elvis displays the markup's name 
  5869.            (without the leading backslash) in the "bold" font. 
  5870.  
  5871.  
  5872. ΓòÉΓòÉΓòÉ 1.8. Elvis 2.1 User Interfaces ΓòÉΓòÉΓòÉ
  5873.  
  5874.  
  5875.  
  5876. 8. USER INTERFACES 
  5877.  
  5878.  A single elvis binary can be compiled to support multiple user interfaces. For 
  5879. example, under UNIX elvis can be compiled to have a graphical user interface 
  5880. when run under X-windows, a termcap interface for use on most text terminals, 
  5881. an "open" interface for use on any terminal, and a "quit" interface for running 
  5882. scripts.  Here's a comprehensive list of the user interfaces which may be 
  5883. available in your copy of elvis: 
  5884.  
  5885.      x11 - a graphical interface under Unix and OS/2. 
  5886.      windows - a graphical interface under Win32. 
  5887.      termcap - a full-screen text-based interface. 
  5888.      vio - OS/2-specific version of the termcap interface. 
  5889.      open - a simpler text-based interface. 
  5890.      quit - a pseudo-interface for non-interactive editing. 
  5891.  
  5892.  The exact list of available user interfaces will vary from one system to 
  5893.  another. You can make elvis output a list of available interfaces by running 
  5894.  "elvis -G?". This will also show you which interface elvis will use by 
  5895.  default. 
  5896.  
  5897.  Elvis chooses the default user interface at run time by testing each user 
  5898.  interface in turn, starting with the most desirable, and working its way down 
  5899.  the list until it finds one that appears to be supported in the current 
  5900.  environment. For example, if you're using elvis on a text terminal under UNIX, 
  5901.  then elvis will bypass the "x11" interface because X-windows doesn't work on 
  5902.  text terminals, and then elvis will find that the "termcap" interface would 
  5903.  work, so that'll be the default. 
  5904.  
  5905.  If you don't want to use the default user interface, you can specify which 
  5906.  interface to use via the -G gui command-line flag. 
  5907.  
  5908.  8.1 X11 Interface 
  5909.  
  5910.   The x11 interface is used under X-Windows on UNIX or OS/2 systems. (See the 
  5911.  OS/2 section of the OS chapter for a description of what you need to run X11 
  5912.  under OS/2.) Subsections here are command line flags, the mouse, the toolbar, 
  5913.  resources, keys, and icons. 
  5914.  
  5915.  The x11 interface provides a scrollbar and mouse support, and allows you to 
  5916.  select which fonts to use. Fonts are specified via command-line flags; there 
  5917.  is no way to change fonts after elvis has created the first window. 
  5918.  
  5919.  The x11 interface reads app-defaults (as listed below) but those are only used 
  5920.  to provided default values for options and colors.  You can override them with 
  5921.  :set and :color commands. The x11-specific options are described in the 
  5922.  options chapter. 
  5923.  
  5924.  8.1.1 X11 Command-line Flags 
  5925.  
  5926.   To specify a normal font, use -font fontname or -fn fontname. Proportional 
  5927.  fonts are not supported. If you don't specify a normal font, then elvis will 
  5928.  use a font named "fixed" by default. 
  5929.  
  5930.  To specify a bold font, use -fb fontname. The specified font should have the 
  5931.  same size character cell as the normal font, but elvis does not verify this. 
  5932.  If you don't specify a bold font, then elvis will fake it by smearing the 
  5933.  normal font rightward one pixel. 
  5934.  
  5935.  To specify an italic font, use -fi fontname. The specified font should have 
  5936.  the same size character cell as the normal font, but elvis does not verify 
  5937.  this. If you don't specify an italic font, then elvis will fake it by sliding 
  5938.  the top half of the normal font rightward one pixel. 
  5939.  
  5940.  The -fc fontname flag can be used to specify the font to be used for controls 
  5941.  -- currently just the toolbar, but eventually elvis will offer a scrollbar and 
  5942.  maybe a statusbar. If you don't specify a control font, then elvis will use 
  5943.  the "variable" font by default. 
  5944.  
  5945.  If you want to use Courier fonts, there is a shortcut: -courier size will use 
  5946.  the normal, bold, and italic versions of the courier font in the requested 
  5947.  size. 
  5948.  
  5949.  You can also specify the foreground and background colors with -fg color and 
  5950.  -bg color, respectively. All standard X color names are supported. 
  5951.  
  5952.  Elvis has a built-in icon, which is generally a good thing. Some window 
  5953.  managers won't allow you to assign a new icon to a program that has a built-in 
  5954.  one, so elvis has a -noicon flag which disables the built-in icon. 
  5955.  
  5956.  Elvis also supports the -geometry WxH+X+Y flag for specifying the size and/or 
  5957.  position of the first window. 
  5958.  
  5959.  The -fork option causes elvis to fork a new process, so you get a new shell 
  5960.  prompt immediately. 
  5961.  
  5962.  The -client option causes elvis to look for an already-running elvis process 
  5963.  on the same X server, and if there is one, send the new arguments to it. This 
  5964.  causes the old elvis process to create new windows for file arguments. The new 
  5965.  elvis process then exits, leaving the old one to do the real work. If there is 
  5966.  no elvis process already running, then -client will act like -fork so that 
  5967.  either way, you get a new shell prompt immediately. 
  5968.  
  5969.  You can change elvis' defaults by editing the elvis.ini or ~/.exrc file. You 
  5970.  can use the :color command to assign colors to various fonts, and the cursor 
  5971.  and scrollbar/toolbar. Most other aspects are controlled via options. 
  5972.  
  5973.  8.1.2 X11 Mouse 
  5974.  
  5975.   I've tried to reach a balance between the mouse behavior of xterm(1) and what 
  5976.  makes sense for an editor. To do this right, elvis has to distinguish between 
  5977.  clicking and dragging. 
  5978.  
  5979.  Dragging the mouse always selects text. Dragging with button 1 pressed 
  5980.  (usually the left button) selects characters, dragging with button 2 (the 
  5981.  middle button) selects a rectangular area, and dragging with button 3 (usually 
  5982.  the right button) selects whole lines. These operations correspond to elvis' 
  5983.  v, ^V, and V commands, respectively. When you release the button at the end of 
  5984.  the drag, the selected text is immediately copied into an X11 cut buffer, so 
  5985.  you can paste it into another application such as xterm. The text remains 
  5986.  selected, so you can apply an operator command to it. 
  5987.  
  5988.  Clicking button 1 cancels any pending selection, and moves the cursor to the 
  5989.  clicked-on character. Clicking button 3 moves the cursor without cancelling 
  5990.  the pending selection; you can use this to extend a pending selection. 
  5991.  
  5992.  Clicking button 2 "pastes" text from the X11 cut butter. If you're entering an 
  5993.  ex command line, the text will be pasted into the command line as though you 
  5994.  had typed it. If you're in visual command mode or input mode, the text will be 
  5995.  pasted into your edit buffer. When pasting, it doesn't matter where you click 
  5996.  in the window; elvis always inserts the text at the position of the text 
  5997.  cursor. 
  5998.  
  5999.  Double-clicking button 1 simulates a ^] keystroke, causing elvis to perform 
  6000.  tag lookup on the clicked-on word. If elvis happens to be displaying an HTML 
  6001.  document, then tag lookup pursues hypertext links so you can double-click on 
  6002.  any underlined text to view the topic that describes that text. 
  6003.  Double-clicking button 3 simulates a ^T keystroke, taking you back to where 
  6004.  you did the last tag lookup. 
  6005.  
  6006.  8.1.3 Toolbar 
  6007.  
  6008.   The X11 interface supports a user-configurable toolbar. The toolbar is 
  6009.  enabled by default; you can disable it in your ~/.exrc file by adding a "set 
  6010.  notoolbar" command. 
  6011.  
  6012.  If enabled, you will find that the default toolbar already has some buttons 
  6013.  defined. You can use the :gui command to reconfigure the toolbar. The 
  6014.  following commands are supported: 
  6015.  
  6016.  :gui 
  6017.            This displays the :gui commands which were used to set up all 
  6018.            toolbar buttons. 
  6019.  :gui label 
  6020.            This displays the :gui commands which were used to set up the 
  6021.            toolbar button that has the given label. 
  6022.  :gui newtoolbar 
  6023.            This deletes all buttons from the toolbar. 
  6024.  :gui ~label 
  6025.            This deletes a single, specific button from the toolbar. 
  6026.  :gui gap 
  6027.            This leaves a small gap between the previous button and the 
  6028.            following button. 
  6029.  :gui label : excommand 
  6030.            This creates a button named label. Whenever you click the button, 
  6031.            the excommand will be interpreted as an ex command line. The label 
  6032.            can begin with any non-whitespace character. The remaining 
  6033.            characters can be letters, digits, or another instance of the 
  6034.            initial character. 
  6035.  
  6036.                       :gui Help:help
  6037.  
  6038.            NOTE: If you want to have more than one line's worth of ex commands 
  6039.            associated with a toolbar button, then you might consider defining 
  6040.            an alias. 
  6041.  :gui label = condition 
  6042.            Normally buttons are drawn as though sticking out; this command 
  6043.            gives you a way to make them selectively appear to be stuck in. The 
  6044.            condition is a C-like expression. When it is true, the button will 
  6045.            be drawn "sticking in". When it is false, the button will be drawn 
  6046.            "sticking out". The button behaves exactly the same either way. 
  6047.  
  6048.                       :gui List:set neglist
  6049.                       :gui List=list
  6050.  
  6051.  :gui label ? condition 
  6052.            This gives you a way to selectively disable the button. The 
  6053.            condition is a C-like expression. When it is true, the button 
  6054.            behaves as normal; when it is false, the button ignores any mouse 
  6055.            clicks. Also, buttons which are disabled this way are displayed as 
  6056.            being "flat", instead of the normal 3D shading that makes them 
  6057.            appear to stick out or in. 
  6058.  
  6059.                       :gui Quit:q
  6060.                       :gui Quit?!modified
  6061.  
  6062.            NOTE: The condition expressions are re-evaluated after nearly every 
  6063.            input event. If you have many complex expressions, this may take a 
  6064.            noticeable amount of time. With the default toolbar, elvis seems to 
  6065.            slow down by about 20%. Toolbar buttons which don't use condition 
  6066.            expressions have no such overhead. 
  6067.  :gui label " description 
  6068.            Add a one-line description to the button. The description is shown 
  6069.            on the status line when the button is pressed. It is also displayed 
  6070.            on pop-up dialogs, as described below. 
  6071.  
  6072.                       :gui Quit"Close this window, and maybe exit elvis
  6073.  
  6074.  :gui label ; ; 
  6075.  :gui label ; option ; ... 
  6076.  :gui label ; "prompt" (type) option = value ; ... 
  6077.            This allows you to define a pop-up dialog for a given toolbar 
  6078.            button. When you click on the toolbar button, the dialog appears 
  6079.            immediately. You can then edit some values, and then hit the 
  6080.            [Submit] button to store the edited values into options and run the 
  6081.            toolbar button's ex command (if any), or hit the [Cancel] button to 
  6082.            do nothing. 
  6083.  
  6084.            The simplest dialog is specified by giving just a pair of semicolons 
  6085.            after the label.  This dialog will have no editable fields, but it 
  6086.            still shows the [Submit] and [Cancel] buttons, so it is a handy way 
  6087.            to ask for confirmation before doing something. 
  6088.  
  6089.            But usually you'll give a semicolon-delimited list of options after 
  6090.            the toolbar button's label.  The dialog will then allow you to edit 
  6091.            those options. When you hit the [Submit] button on that dialog 
  6092.            window, elvis will store the values into the options before running 
  6093.            the ex command. 
  6094.  
  6095.            The default prompt for each option is its name.  If you precede the 
  6096.            option name with a quoted string, then the string is used for the 
  6097.            prompt instead. 
  6098.  
  6099.            You can also override the option's data type.  The default type for 
  6100.            each option is the same type used by the :set command.  You can 
  6101.            override that by placing one of the following before the option 
  6102.            name: 
  6103.  
  6104.                       ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6105.                       ΓöéTYPE                                  ΓöéMEANING                               Γöé
  6106.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6107.                       Γöé(oneof list)                          ΓöéAllow any single value from the       Γöé
  6108.                       Γöé                                      Γöéspace-delimited list                  Γöé
  6109.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6110.                       Γöé(boolean)                             ΓöéSame as (oneof true false)            Γöé
  6111.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6112.                       Γöé(number)                              ΓöéAllow any number                      Γöé
  6113.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6114.                       Γöé(number m:n)                          ΓöéAllow number between m and n,         Γöé
  6115.                       Γöé                                      Γöéinclusive                             Γöé
  6116.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6117.                       Γöé(string)                              ΓöéAllow any string                      Γöé
  6118.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6119.                       Γöé(file)                                ΓöéAllow any string, but use the Tab key Γöé
  6120.                       Γöé                                      Γöéfor file name completion              Γöé
  6121.                       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6122.                       Γöé(locked)                              ΓöéDisplay it, but don't allow any       Γöé
  6123.                       Γöé                                      Γöéediting                               Γöé
  6124.                       ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6125.  
  6126.            The default value for each option is the option's actual value at 
  6127.            the time the dialog pops up.  You can override that by appending an 
  6128.            '=' followed by an expression for some other value.  Note that the 
  6129.            option itself isn't changed unless/until you hit the [Submit] 
  6130.            button. 
  6131.  
  6132.            NOTE: The user options "a" through "z" are useful for inputting (via 
  6133.            the dialog) and storing temporary values. You'll almost certainly 
  6134.            want to override the prompt and type of those options. 
  6135.  
  6136.            NOTE: Because the edited option values are stored before the toolbar 
  6137.            button's ex command is executed, the ex command can access the 
  6138.            options' values via commands such as :eval.  Also, since elvis 
  6139.            always subjects file names to evaluation via the simpler expression 
  6140.            syntax, you can don't need to use :eval to expand file names. The 
  6141.            following shows one useful example of this: 
  6142.  
  6143.                       :gui Split;"File to load:" (file) f = filename
  6144.                       :gui Split:split (f)
  6145.  
  6146.            NOTE: If you just want to use the dialog for adjusting options, and 
  6147.            don't need to run an ex command afterward, then you can simply omit 
  6148.            the ex command definition for that toolbar button.  For example, the 
  6149.            following is sufficient for editing the display options: 
  6150.  
  6151.                       :gui Display Options; list; number; wrap; sidescroll
  6152.  
  6153.            NOTE: You can display a non-editable line of text in the dialog by 
  6154.            using ="string" without giving any option name.  Here's an example: 
  6155.  
  6156.                       :gui Save;"Save as:"(file)f=basename(file);="In current directory!"
  6157.                       :gui Save:w (f)
  6158.  
  6159.  
  6160.  
  6161.  8.1.4 Resources 
  6162.  
  6163.  Elvis uses the following X resources.  The resource values can be overridden 
  6164.  by command-line flags, or by explicit :set or :color commands in the 
  6165.  initialization scripts. 
  6166.  
  6167.   .----------------------------.---------.----------.--------------------.
  6168.   |      RESOURCE CLASS        |         | DEFAULT  |                    |
  6169.   |(name is lowercase of class)|  TYPE   |  VALUE   | PARTIAL EX COMMAND |
  6170.   |----------------------------|---------|----------|--------------------|
  6171.   | Elvis.Toolbar              | Boolean | True     | set toolbar        |
  6172.   | Elvis.Statusbar            | Boolean | True     | set statusbar      |
  6173.   | Elvis.Font                 | Font    | fixed    | set normalfont=    |
  6174.   | Elvis.Geometry             | Geometry| 80x34    | set firstx= xrows= |
  6175.   | Elvis.Foreground           | Color   | black    | color normal       |
  6176.   | Elvis.Background           | Color   | gray90   | color normal       |
  6177.   | Elvis.MultiClickTimeout    | Timeout | 3        | set dblclicktime=  |
  6178.   | Elvis.Control.Font         | Font    | variable | set controlfont=   |
  6179.   | Elvis.Cursor.Foreground    | Color   | red      | color cursor       |
  6180.   | Elvis.Cursor.Selected      | Color   | red      | color cursor       |
  6181.   | Elvis.Cursor.BlinkTime     | Timeout | 3        | set blinktime=     |
  6182.   | Elvis.Tool.Foreground      | Color   | black    | color tool         |
  6183.   | Elvis.Tool.Background      | Color   | gray75   | color tool         |
  6184.   | Elvis.Scrollbar.Foreground | Color   | gray75   | color scrollbar    |
  6185.   | Elvis.Scrollbar.Background | Color   | gray60   | color scrollbar    |
  6186.   | Elvis.Scrollbar.Width      | Number  | 11       | set scrollbarwidth=|
  6187.   | Elvis.Scrollbar.Repeat     | Timeout | 4        | set scrollbartime= |
  6188.   | Elvis.Scrollbar.Enabled    | Boolean | True     | set scrollbar      |
  6189.   ^----------------------------^---------^----------^--------------------^
  6190.  The "Timeout" type gives a time value, in tenths of a second. 
  6191.  
  6192.  For example, if your X resources database contains the line "elvis.font: 
  6193.  10x20" then the default text font would be "10x20". This value would therefore 
  6194.  be used if the normalfont option was unset. 
  6195.  
  6196.  8.1.5 X11 Keys 
  6197.  
  6198.  If there is a standard way to map a Keysym value into a text string, then 
  6199.  elvis will use it. This means that when you hit the <m> key, you get an "m" 
  6200.  character. Function keys and cursor keys have no standard translation, so 
  6201.  elvis converts them to a ^K character followed the Keysym binary value, 
  6202.  expressed as four hex digits. 
  6203.  
  6204.  You can use the "^Kxxxx" character sequences as the first argument to a :map 
  6205.  command. In the interest of readability and portability, though, elvis also 
  6206.  allows you to use the symbolic name of a key in that context, instead of the 
  6207.  raw characters. These are the same key names that are used by (among other 
  6208.  things) the xmodmap command. Here are some of the more important names: Begin, 
  6209.  End, Home, Print, Menu, Insert, Undo, Redo, Help, Break, Multi_key, Kanji, and 
  6210.  Mode_switch. 
  6211.  
  6212.  8.1.6 X11 Icons 
  6213.  
  6214.  Elvis has a 48x32 monochrome icon compiled into it.  This icon is stored in 
  6215.  the file guix11/elvis.xbm.  It is a standard X11 bitmap file. 
  6216.  
  6217.  There are also a variety of colored icons in that directory, in standard X11 
  6218.  pixmap files.  These are not compiled into elvis.  If you want to use one of 
  6219.  these, you'll need to configure your window manager to substitute the colored 
  6220.  icon for the compiled-in monochrome icon.  Each window manager is configured 
  6221.  in a different way, and I can't tell you about every single one out there. 
  6222.  But I use FVWM2, and I can tell you how to configure that: In your ~/.fvwm2rc 
  6223.  file, add a line which reads... 
  6224.  
  6225.           Style "elvis" Icon /usr/include/X11/pixmaps/elvis.xpm
  6226.  
  6227.  Note that this expects the elvis.xpm file to be copied into 
  6228.  /usr/include/X11/pixmaps/.  When you install elvis by running make install, 
  6229.  the insticon.sh shell script is run; this checks for a whole series of likely 
  6230.  places to copy icons of various sizes, and copies them there. 
  6231.  
  6232.  The following color icons are available: 
  6233.  
  6234.       .------------.------------------------------------------------.
  6235.       |    NAME    | DESCRIPTION                                    |
  6236.       |------------|------------------------------------------------|
  6237.       | elvis.xpm  | 48x32, 4 colors, same as the monochrome icon   |
  6238.       | mini.xpm   | 16x14, 6 colors, for fvwm95 taskbar            |
  6239.       | normal.xpm | 56x46, on a shaded button for NextStep-ish WMs |
  6240.       | small.xpm  | 21x18, on a shaded button for NextStep-ish WMs |
  6241.       ^------------^------------------------------------------------^
  6242.  The last two use many colors, but most of those colors are for the shaded 
  6243.  button background, not the icon itself.  Other shaded-button icons use the 
  6244.  exact same colors for the shading, so the overall impact on your color table 
  6245.  isn't too bad.  But if you don't normally use icons on shaded buttons, then 
  6246.  you should probably use only the first two icons. 
  6247.  
  6248.  8.2 Windows Interface 
  6249.  
  6250.   The windows interface works under Microsoft's Windows95, Windows98, or 
  6251.  WindowsNT (version 3.51 or later) operating systems. It offers a full 
  6252.  graphical interface with all the usual bells and whistles. Subsections here 
  6253.  discuss the mouse, keys, colors, printing, and fonts. 
  6254.  
  6255.  Because Microsoft doesn't allow a single .EXE file to contain both a Windows 
  6256.  interface and a text-based interface, the Windows version resides in a 
  6257.  separate file named WinElvis.exe. (The text-based version is named elvis.exe, 
  6258.  and it uses the termcap interface.) 
  6259.  
  6260.  8.2.1 Windows Mouse 
  6261.  
  6262.   In addition to all the usual mouse actions in the menubar, toolbar, and 
  6263.  scrollbar, you can use the mouse in elvis' main text area as follows. 
  6264.  
  6265.  Dragging the mouse with the left button pressed causes elvis to select 
  6266.  characters, like the lowercase v command. Dragging with the right button 
  6267.  pressed causes it to select a rectangular area, like the ^V command.  Dragging 
  6268.  in the left margin (where the mouse cursor changes to up-and-right-arrow) 
  6269.  causes whole lines to be selected. 
  6270.  
  6271.  Clicking with either the left or right mouse button will move the cursor to 
  6272.  the clicked-on character.  When you click with the left button, if a selection 
  6273.  is highlighted then elvis will cancel the selection; clicking with the right 
  6274.  extends the selection to include the clicked-on character. 
  6275.  
  6276.  Double-clicking on a word with the left button causes elvis to perform a tag 
  6277.  search, like the ^] command. Double-clicking with the right button pops back 
  6278.  to the previous position via the tag stack, like the ^T command. 
  6279.  
  6280.  8.2.2 Windows Keys 
  6281.  
  6282.   In addition to all the ASCII keys, WinElvis allows you to :map any cursor 
  6283.  keys or function keys.  In fact, the cursor keys all have rather convenient 
  6284.  maps built-in; you can see them by running ":map" with no arguments. 
  6285.  
  6286.  All of the cursor keys and function keys send multi-character sequences to 
  6287.  WinElvis.  WinElvis then uses its standard mapping facilities to convert those 
  6288.  sequences into something that it can recognize and act on.  Since the 
  6289.  multi-character sequences aren't standardized, and are usually hard to guess 
  6290.  or remember, WinElvis allows you to refer to them symbolically.  The following 
  6291.  symbols are used for referring to the cursor keys: 
  6292.  
  6293.   .--------------------.----------.-----------.
  6294.   | KEY                | SYMBOL   | MAPPED TO |
  6295.   |--------------------|----------|-----------|
  6296.   | up arrow           | <Up>     |     k     |
  6297.   | down arrow         | <Down>   |     j     |
  6298.   | left arrow         | <Left>   |     h     |
  6299.   | right arrow        | <Right>  |     l     |
  6300.   | Page Up            | <PgUp>   |     ^B    |
  6301.   | Page Down          | <PgDn>   |     ^F    |
  6302.   | Home               | <Home>   |     ^     |
  6303.   | End                | <End>    |     $     |
  6304.   | Ctrl + left arrow  | <CLeft>  |     B     |
  6305.   | Ctrl + right arrow | <CRight> |     W     |
  6306.   | Ctrl + Page Up     | <CPgUp>  |     1G    |
  6307.   | Ctrl + Page Down   | <CPgDn>  |     G     |
  6308.   | Ctrl + Home        | <CHome>  |     1G    |
  6309.   | Ctrl + End         | <CEnd>   |     G     |
  6310.   | Ctrl + Insert      | <Insert> |     i     |
  6311.   | Ctrl + Delete      | <Delete> |     x     |
  6312.   ^--------------------^----------^-----------^
  6313.  
  6314.  The function keys are a different story.  Vi has a traditional way to access 
  6315.  function keys in a terminal-independent manner, so WinElvis starts with that 
  6316.  and extends it just slightly.  The benefit of this is that you can use the 
  6317.  same function key maps in other versions of elvis, or even in other 
  6318.  implementations of vi. 
  6319.  
  6320.  The basic function key symbols are #1 for the F1 key, #2 for the F2 key, and 
  6321.  so on through #12 for the F12 key.  Combinations involving the Shift, Ctrl, 
  6322.  and Alt keys are specified by appending "s", "c", or "a" onto the symbol.  For 
  6323.  example, Ctrl-F1 is mapped using the symbol #1c. 
  6324.  
  6325.  8.2.3 Windows colors 
  6326.  
  6327.   WinElvis allows you use the :color command to change the colors used for the 
  6328.  different fonts.  The color names that it supports are: black, blue, cyan, 
  6329.  green, red, magenta, brown, gray, darkgray, lightblue, lightcyan, lightgreen, 
  6330.  lightred, lightgray, yellow, and white. 
  6331.  
  6332.  8.2.4 Windows Printing 
  6333.  
  6334.   The default value of the lptype option is "windows".  This uses the standard 
  6335.  Windows graphical print spooler and should be able to print on any printer 
  6336.  that Windows supports.  The lpout option is ignored when lptype=windows. 
  6337.  
  6338.  However you still have the option of changing lptype to one of its other 
  6339.  values. The other values will generally print faster, and may even look 
  6340.  slightly better, but that isn't much of a motivation. A more common reason for 
  6341.  changing lptype would be to print into a file in a specified format. 
  6342.  
  6343.  8.2.5 Windows Fonts 
  6344.  
  6345.   WinElvis allows you to specify one base font for each window, via the font 
  6346.  option.  You can set this to the name of any fixed-pitch font, such as 
  6347.  "courier*12". 
  6348.  
  6349.  Conceptually elvis supports six different fonts: normal, bold, italic, fixed, 
  6350.  emphasized, and underlined.  WinElvis derives these six fonts from the base 
  6351.  font, via options named normalstyle, boldstyle, italicstyle, fixedstyle, 
  6352.  emphasizedstyle, and underlinedstyle, respectively. 
  6353.  
  6354.  Each of these options may be "n" to use the base font without any changes, or 
  6355.  any combination of "b" for bolding, "i" for italicizing, or "u" for 
  6356.  underlining.  By default, boldstyle and emphasizedstyle use "b", italicstyle 
  6357.  uses "i", and underlinedstyle uses "u". You can override these via :set, and 
  6358.  make them be different colors via the :color command. 
  6359.  
  6360.  However, when printing WinElvis will always make them all black, and always 
  6361.  uses the default derived fonts. 
  6362.  
  6363.  8.3 Termcap Interface 
  6364.  
  6365.   The termcap interface is the one you'll use most often on non-graphic 
  6366.  terminals. It looks and acts a heck of a lot like the traditional vi. The 
  6367.  biggest addition is the support for multiple windows. (For more information on 
  6368.  how to use multiple windows, start elvis and give the command :help ^W.) 
  6369.  Subsections here discuss terminal databases, termcap fields, keys, and graphic 
  6370.  characters. 
  6371.  
  6372.  If your terminal supports ANSI color escape sequences, then you can use the 
  6373.  :color command to assign different colors to the six basic fonts: normal, 
  6374.  bold, italic, underlined, emphasized, and fixed. You must assign a normal 
  6375.  color first, e.g., ":color normal yellow". 
  6376.  
  6377.  There are three additional options when using the termcap interface: term, 
  6378.  ttyrows,and ttycolumns. The term option contains the name of the termcap entry 
  6379.  being used; it should correspond to the type of terminal you're using. The 
  6380.  ttyrows and ttycolumns options give the size of the screen. 
  6381.  
  6382.  Under Win32, there is also a codepage option for detecting or changing the 
  6383.  current code page. Win32's termcap interface also supports the mouse, using 
  6384.  basically the same rules as the x11 interface. The only differences are that 
  6385.  it doesn't cut & paste via the clipboard, and pressing both buttons of a 
  6386.  two-button mouse will simulate pressing the missing middle button. 
  6387.  
  6388.  8.3.1 Termcap, Terminfo, and tinytcap 
  6389.  
  6390.   Termcap is a database of terminal characteristics, and a library of C 
  6391.  functions for accessing that database. It was created at Berkeley to allow the 
  6392.  original vi editor to be terminal-independent. Elvis' termcap user interface 
  6393.  was written to use this. 
  6394.  
  6395.  AT&T created the terminfo database and library, adding a few minor features. 
  6396.  Most modern UNIX systems use terminfo instead of termcap. Fortunately, 
  6397.  terminfo's library contains functions which emulate the termcap functions, so 
  6398.  the termcap interface can be compiled to work with the terminfo library. 
  6399.  
  6400.  The tinytcap.c file contains a simple reimplementation of the termcap library, 
  6401.  for those systems (such as MS-DOS) which don't have either a real termcap, or 
  6402.  terminfo. Tinytcap's database is hard-coded into it; to add or modify a 
  6403.  terminal description, you need to edit tinytcap.c and recompile elvis. 
  6404.  
  6405.  8.3.2 Common termcap values 
  6406.  
  6407.   This section describes most of the termcap values used by elvis. The values 
  6408.  which deal with cursor keys and graphic characters will be described in the 
  6409.  following sections. 
  6410.  
  6411.  Termcap field names are two characters long. Some names supply Boolean values, 
  6412.  and others supply numeric or string values. A Boolean value is made true by 
  6413.  giving the name; the absence of its name in a terminal's entry indicates a 
  6414.  false value for that field, for that terminal. For numeric fields, the name is 
  6415.  followed by a '#' character and then decimal digits specifying the value. For 
  6416.  string fields, the name is followed by a '=' character and then a string. 
  6417.  Fields are delimited by ':' characters. 
  6418.  
  6419.   .-------.----------------------------------------------------.
  6420.   |TERMCAP|                                                    |
  6421.   | FIELD |                   DESCRIPTION                      |
  6422.   |-------|----------------------------------------------------|
  6423.   | :AL=: | Insert a given number of lines before current line |
  6424.   | :al=: | Insert one line before the current line            |
  6425.   | :am:  | Automargin - cursor wraps at end-of-line           |
  6426.   | :bc=: | Move the cursor back one character                 |
  6427.   | :cI=: | Set cursor shape to "insert" shape                 |
  6428.   | :cQ=: | Set cursor shape to "quit" shape                   |
  6429.   | :cR=: | Set cursor shape to "replace" shape                |
  6430.   | :cV=: | Set cursor shape to "vi command" shape             |
  6431.   | :cX=: | Set cursor shape to "ex command" shape             |
  6432.   | :ce=: | Clear from cursor to end-of-line                   |
  6433.   | :cm=: | Move cursor to a given row/column                  |
  6434.   | :co#: | Width of screen, in columns                        |
  6435.   | :DC=: | Delete a given number of character at the cursor   |
  6436.   | :dc=: | Delete one character at the cursor position        |
  6437.   | :DL=: | Delete a given number of lines at the cursor       |
  6438.   | :dl=: | Delete one line at the cursor position             |
  6439.   | :IC=: | Insert a given number of characters at the cursor  |
  6440.   | :ic=: | Insert one character at the cursor position        |
  6441.   | :ke=: | Disable the cursor keypad                          |
  6442.   | :ks=: | Enable the cursor keypad                           |
  6443.   | :li#: | Height of screen, in lines                         |
  6444.   | :md=: | Start bold text                                    |
  6445.   | :me=: | End bold or half-bright text                       |
  6446.   | :mh=: | Start half-bright text (used for italic text)      |
  6447.   | :pt:  | Terminal supports physical tabs                    |
  6448.   | :se=: | End standout text                                  |
  6449.   | :sg#: | Width of gap required by the :so=:se=: strings     |
  6450.   | :so=: | Start standout text                                |
  6451.   | :sr=: | Reverse scroll one line (limited form of :ic=:)    |
  6452.   | :te=: | String that elvis sends upon exiting               |
  6453.   | :ti=: | String that elvis sends when starting              |
  6454.   | :us=: | End underlined text                                |
  6455.   | :ug#: | Width of gap required by the :us:ue:md:me: strings |
  6456.   | :up=: | move cursor up one line                            |
  6457.   | :us=: | Start underlined text                              |
  6458.   | :vb=: | Visible alternative to the bell                    |
  6459.   | :ve=: | Set cursor shape to "quit" shape                   |
  6460.   | :vs=: | Set cursor shape to "vi command" shape             |
  6461.   | :xn:  | Brain-damaged newline; ignore the :am: flag        |
  6462.   ^-------^----------------------------------------------------^
  6463.  
  6464.  
  6465.  8.3.3 Cursor Keys and Function Keys 
  6466.  
  6467.   Cursor keys and function keys generally send escape sequences when struck. 
  6468.  Elvis needs to know what those escape sequences are, so it can recognize the 
  6469.  keystroke and act accordingly. 
  6470.  
  6471.  The names of the fields for the arrows are pretty well standardized in 
  6472.  termcap, but the other cursor keys are still rather unsettled. Different UNIX 
  6473.  variants use different names for the same key. Elvis supports all common names 
  6474.  for each key. 
  6475.  
  6476.  Function keys are even more challenging. Originally termcap only had strings 
  6477.  which described the first 4 function keys. This was easy to extend to 9 keys, 
  6478.  but starting with the 10th function key things get strange because termcap 
  6479.  field names must be two characters long. Also, there was no way to describe 
  6480.  shift-function keys, control-function keys, or alt-function keys, so I 
  6481.  invented by own fields for them. 
  6482.  
  6483.  The following table lists all of the key field names, and the keys they refer 
  6484.  to. For keys which may be described via more than one field name, the 
  6485.  preferred field name is listed first. It also lists the key's label, as 
  6486.  reported by :map and what (if anything) that key is normally mapped to. 
  6487.  
  6488.   .-----------.---------------.-----------------------------------.
  6489.   | KEY LABEL | TERMCAP NAMES |            DESCRIPTION            |
  6490.   |-----------|---------------|-----------------------------------|
  6491.   |  <Up>     | :ku=:         | Up arrow, mapped to "k"           |
  6492.   |  <Down>   | :kd=:         | Down arrow, mapped to "j"         |
  6493.   |  <Left>   | :kl=:         | Left arrow, mapped to "h"         |
  6494.   |  <Right>  | :kr=:         | Right arrow, mapped to "l"        |
  6495.   |  <PgUp>   | :kP=:PU=:K2=: | Previous Page, mapped to "^B"     |
  6496.   |  <PgDn>   | :kN=:PD=:K5=: | Next Page, mapped to "^F"         |
  6497.   |  <Home>   | :kh=:HM=:K1=: | Home, mapped to "^"               |
  6498.   |  <End>    | :kH=:EN=:K4=: | End, mapped to "$"                |
  6499.   |  <Insert> | :kI=:         | Insert key, mapped to "i"         |
  6500.   |  <Delete> | :kD=:         | Delete key, mapped to "x"         |
  6501.   |  <CLeft>  | :#4=:KL=:     | Ctrl + Left arrow, mapped to "B"  |
  6502.   |  <CRight> | :%i=:KR=:     | Ctrl + Right arrow, mapped to "W" |
  6503.   |  #1       | :k1=:         | F1 key                            |
  6504.   |  #2       | :k2=:         | F2 key                            |
  6505.   |  #3       | :k3=:         | F3 key                            |
  6506.   |  #4       | :k4=:         | F4 key                            |
  6507.   |  #5       | :k5=:         | F5 key                            |
  6508.   |  #6       | :k6=:         | F6 key                            |
  6509.   |  #7       | :k7=:         | F7 key                            |
  6510.   |  #8       | :k8=:         | F8 key                            |
  6511.   |  #9       | :k9=:         | F9 key                            |
  6512.   |  #10      | :k0=:ka=:k;=: | F10 key                           |
  6513.   |  #1s      | :s1=:         | Shift-F1 key                      |
  6514.   |  #2s      | :s2=:         | Shift-F2 key                      |
  6515.   |  #3s      | :s3=:         | Shift-F3 key                      |
  6516.   |  #4s      | :s4=:         | Shift-F4 key                      |
  6517.   |  #5s      | :s5=:         | Shift-F5 key                      |
  6518.   |  #6s      | :s6=:         | Shift-F6 key                      |
  6519.   |  #7s      | :s7=:         | Shift-F7 key                      |
  6520.   |  #8s      | :s8=:         | Shift-F8 key                      |
  6521.   |  #9s      | :s9=:         | Shift-F9 key                      |
  6522.   |  #10s     | :s0=:         | Shift-F10 key                     |
  6523.   |  #1c      | :c1=:         | Control-F1 key                    |
  6524.   |  #2c      | :c2=:         | Control-F2 key                    |
  6525.   |  #3c      | :c3=:         | Control-F3 key                    |
  6526.   |  #4c      | :c4=:         | Control-F4 key                    |
  6527.   |  #5c      | :c5=:         | Control-F5 key                    |
  6528.   |  #6c      | :c6=:         | Control-F6 key                    |
  6529.   |  #7c      | :c7=:         | Control-F7 key                    |
  6530.   |  #8c      | :c8=:         | Control-F8 key                    |
  6531.   |  #9c      | :c9=:         | Control-F9 key                    |
  6532.   |  #10c     | :c0=:         | Control-F10 key                   |
  6533.   |  #1a      | :a1=:         | Alt-F1 key                        |
  6534.   |  #2a      | :a2=:         | Alt-F2 key                        |
  6535.   |  #3a      | :a3=:         | Alt-F3 key                        |
  6536.   |  #4a      | :a4=:         | Alt-F4 key                        |
  6537.   |  #5a      | :a5=:         | Alt-F5 key                        |
  6538.   |  #6a      | :a6=:         | Alt-F6 key                        |
  6539.   |  #7a      | :a7=:         | Alt-F7 key                        |
  6540.   |  #8a      | :a8=:         | Alt-F8 key                        |
  6541.   |  #9a      | :a9=:         | Alt-F9 key                        |
  6542.   |  #10a     | :a0=:         | Alt-F10 key                       |
  6543.   ^-----------^---------------^-----------------------------------^
  6544.  
  6545.  
  6546.  8.3.4 Graphic characters 
  6547.  
  6548.   Elvis uses graphic characters for HTML mode's <pre graphic> and <hr> tags. 
  6549.  
  6550.  Originally termcap didn't support a way to access the terminal's graphic 
  6551.  characters. A standard of sorts was eventually developed under the XENIX 
  6552.  variant of UNIX. Later, the terminfo library adopted a different way to access 
  6553.  the graphic characters, and this was worked back into the termcap standard, 
  6554.  displacing the XENIX standard. The terminfo method is preferred, these days. 
  6555.  Elvis supports both. 
  6556.  
  6557.                         Terminfo Strings
  6558.   .-------.---------------------------------------------------.
  6559.   |TERMCAP|                                                   |
  6560.   | FIELD |                  DESCRIPTION                      |
  6561.   |-------|---------------------------------------------------|
  6562.   | :as=: |Start graphic text                                 |
  6563.   | :ae=: |End graphic text                                   |
  6564.   | :ac=: |Maps VT100 graphic chars to this terminal's chars  |
  6565.   ^-------^---------------------------------------------------^
  6566.   The terminfo method uses the :as=:ae=: strings for turning the graphical 
  6567.  character attribute on and off. While in graphic mode, the value of the :ac=: 
  6568.  string is interpreted as a list of character pairs; the first character is a 
  6569.  VT-100 graphic character, and the following character is this terminal's 
  6570.  corresponding graphic character. The following table lists the (text versions 
  6571.  of) VT-100 graphic characters, and descriptions of them. It also includes IBM 
  6572.  PC characters. 
  6573.  
  6574.      .--------.--------.--------------------------------------.
  6575.      | VT-100 | IBM PC |             DESCRIPTION              |
  6576.      |--------|--------|--------------------------------------|
  6577.      |   'q'  | '\304' | horizontal line                      |
  6578.      |   'x'  | '\263' | vertical line                        |
  6579.      |   'm'  | '\300' | lower left corner (third quadrant)   |
  6580.      |   'v'  | '\301' | horizontal line with up-tick         |
  6581.      |   'j'  | '\331' | lower right corner (fourth quadrant) |
  6582.      |   't'  | '\303' | vertical line with right-tick        |
  6583.      |   'n'  | '\305' | four-way intersection, like '+' sign |
  6584.      |   'u'  | '\264' | vertical line with left-tick         |
  6585.      |   'l'  | '\332' | upper left corner (second quadrant)  |
  6586.      |   'w'  | '\302' | horizontal line with down-tick       |
  6587.      |   'k'  | '\277' | upper right corner (first quadrant)  |
  6588.      ^--------^--------^--------------------------------------^
  6589.   So, for example, an entry describing the IBM PC would contain the following: 
  6590.  
  6591.   :ac=q\304x\263m\300v\301j\331t\303n\305u\264l\332w\302k\277:
  6592.  
  6593.                       XENIX Termcap Strings
  6594.   .-------.---------------------------------------------------.
  6595.   |TERMCAP|                                                   |
  6596.   | FIELD |                  DESCRIPTION                      |
  6597.   |-------|---------------------------------------------------|
  6598.   | :GS=: |Start graphic text                                 |
  6599.   | :GE=: |End graphic text                                   |
  6600.   | :GH=: |Horizontal bar                                     |
  6601.   | :GV=: |Vertical bar                                       |
  6602.   | :G3=: |Lower-left corner (i.e., third quadrant)           |
  6603.   | :GU=: |Horizontal bar with up-tick                        |
  6604.   | :G4=: |Lower-right corner (i.e., fourth quadrant)         |
  6605.   | :GR=: |Vertical bar with right-tick                       |
  6606.   | :GC=: |Center crosspiece (i.e., a big '+' sign)           |
  6607.   | :GL=: |Vertical bar with a left-tick                      |
  6608.   | :G2=: |Upper-left corner (i.e., second quadrant)          |
  6609.   | :GD=: |Horizontal bar with a down-tick                    |
  6610.   | :G1=: |Upper-right corner (i.e., first quadrant)          |
  6611.   ^-------^---------------------------------------------------^
  6612.  In Xenix, a separate string is used for each line-drawing graphic character. 
  6613.  There are also optional :GS=:GE=: strings for starting and ending graphic 
  6614.  mode. If the :GS=:GE=: strings aren't specified, then termcap is expected to 
  6615.  set the MSB of each character in the graphic character strings. 
  6616.  
  6617.  8.4 VIO Interface for OS/2 
  6618.  
  6619.   The vio interface is an OS/2-specific text-mode interface. It should behave 
  6620.  almost exactly like the termcap interface in all respects: same options, same 
  6621.  colors, same windowing features, etc. Unlike the termcap interface, the vio 
  6622.  interface must be run locally. It can't run over a network via telnet, but the 
  6623.  termcap interface can. 
  6624.  
  6625.  8.5 Open Interface 
  6626.  
  6627.   The open interface was created for use on terminals which lack some necessary 
  6628.  capability (such as the :cm=: cursor movement command), or terminals of an 
  6629.  unknown type. The open interface is ugly; if you have a choice, you should 
  6630.  always use the termcap interface instead. 
  6631.  
  6632.  The open interface works on all text terminals because the only control codes 
  6633.  it uses are backspace, carriage return, and line feed. 
  6634.  
  6635.  It only allows you to edit one line at a time. When you move to a new line 
  6636.  (e.g., by using the j or k commands), the screen scrolls up and the new line 
  6637.  is displayed at the bottom of the screen. This is true even when you're moving 
  6638.  the cursor back towards the beginning of the edit buffer; the lines of the 
  6639.  buffer will appear on the screen in reverse order! The open interface can be 
  6640.  very confusing. 
  6641.  
  6642.  However, practically all of the normal visual commands are available. The only 
  6643.  ones missing are those that specifically affect a whole window. 
  6644.  
  6645.  8.6 Quit Interface 
  6646.  
  6647.   The quit interface is intended to be used for executing scripts of ex 
  6648.  commands. It performs all of the usual initialization, and then quits. It is 
  6649.  normally used in conjunction with the -c command flag. 
  6650.  
  6651.  For example, you can have elvis load a file, print it, and then exit via the 
  6652.  following command line... 
  6653.  
  6654.   elvis -G quit -c lp somefile
  6655.   Because the usual initialization guesses a file's display mode automatically, 
  6656.  this one command can be used to format and print HTML documents, man pages, C 
  6657.  code, and possibly hex dumps of binary files. 
  6658.  
  6659.  
  6660. ΓòÉΓòÉΓòÉ 1.9. Elvis 2.1 Operating System Notes ΓòÉΓòÉΓòÉ
  6661.  
  6662.  
  6663.  
  6664. 9. Operating System Notes 
  6665.  
  6666.  Elvis 2.1 currently runs under MS-DOS, MS-WindowsNT/MS-Winsdows95, OS/2, and 
  6667. many versions of UNIX. This chapter describes the quirks of each 
  6668. implementation. 
  6669.  
  6670. In addition, elvis has been reported to work under a few other operating 
  6671. systems. It isn't officially supported under these yet. 
  6672.  
  6673. 9.1 MS-DOS 
  6674.  
  6675.  Elvis 2.1 was ported to MS-DOS by Steve Kirkendall, using code from Guntram 
  6676. Blohm and Martin Patzel's MS-DOS port elvis 1.X. It also uses Thomas Wagner's 
  6677. "exec" function to swap elvis out to EMS/XMS memory or disk, while running 
  6678. another program. 
  6679.  
  6680.  The "os" option 
  6681.            Under MS-DOS, the os option's value is "msdos". 
  6682.  The "shell" option 
  6683.            The default value of shell is "C:\COMMAND.COM". This can be 
  6684.            overridden by the value of the COMSPEC environment variable. 
  6685.  The "lpout" option 
  6686.            The default value of the lpout option is "prn", which causes the 
  6687.            :lpr command to write its output directly to the printer. 
  6688.  
  6689.            I tried to make it use the spooler program, PRINT, but failed. The 
  6690.            first problem I ran into was the fact that PRINT can't read data 
  6691.            from stdin; it must be given the name of a file. To work around this 
  6692.            problem, I modified the osmsdos/osprg.c file to allow $1 in the 
  6693.            command line to be replaced by the name of elvis' temporary file 
  6694.            that contains the print data. 
  6695.  
  6696.            This lead to the the second problem: PRINT doesn't make a copy of 
  6697.            the file, and elvis deletes the temporary file as soon as PRINT 
  6698.            exits. Since PRINT exits before the file has been printed 
  6699.            completely, this means that the file is deleted before PRINT is 
  6700.            through reading it. The print job is truncated. I was unable to find 
  6701.            a way around this problem, so I gave up and just set lpout=prn. 
  6702.  The "ccprg" option 
  6703.            The default value of the ccprg option is "cl /c ($1?$1:$2)", which 
  6704.            is appropriate for MSVC++ 1.5. This way, you can run :cc without 
  6705.            arguments to compile (but not link) the current source file. If you 
  6706.            supply arguments, they'll be used instead of the filename. 
  6707.  The "makeprg" option 
  6708.            The default value of the makeprg option is "make".  You might 
  6709.            consider changing it to "nmake -f ($1?$1:basename($2)".mak")", would 
  6710.            allow MSVC++ 1.5 to compile "foo.c" via the "foo.mak" makefile, 
  6711.            unless you invoke :make with command-line arguments naming a 
  6712.            different makefile. 
  6713.  The "elvispath" option 
  6714.            The default value of the elvispath option is 
  6715.            "~\elvislib;BIN\lib;BIN", where BIN is the directory where elvis.exe 
  6716.            resides. Note that elements of the path are separated with 
  6717.            semicolons. The ~ character is replaced by the value of the home 
  6718.            option, which is also usually the name of the directory where 
  6719.            elvis.exe resides. 
  6720.  The "blksize" option 
  6721.            The blksize option controls the size of elvis' data blocks. Under 
  6722.            other operating systems this is usually 2048, but for MS-DOS is it 
  6723.            reduced to 1024 because memory is tight. 
  6724.  
  6725.            If you're going to be editing a large file, you may want to increase 
  6726.            the block size. The only way to do that is to invoke elvis with a 
  6727.            "-b2048" argument. You can't change it via ":set blksize=..." 
  6728.            because by then the session file would have already been created 
  6729.            with the old block size. Once elvis starts, you should probably 
  6730.            ensure that the blkcache is no more than 6 or so, or else elvis may 
  6731.            run out of memory unexpectedly. 
  6732.  The "TERM" environment variable 
  6733.            The TERM environment variable tells elvis how to access the screen. 
  6734.            If it is undefined, or set to "pcbios", then elvis will use BIOS 
  6735.            calls to access the screen. This should work on all MS-DOS systems, 
  6736.            but it isn't very fast. 
  6737.  
  6738.            If TERM is set to "dosansi" then elvis will output escape sequences 
  6739.            which are supported by the ANSI.SYS driver. This isn't recommended; 
  6740.            ANSI.SYS is just as slow as the BIOS, and it isn't as powerful so 
  6741.            elvis is forced to redraw the screen instead of scrolling it, in 
  6742.            some circumstances. 
  6743.  
  6744.            If TERM is set to "nansi" then elvis will output escape sequences 
  6745.            which are supported by more capable drivers, such as NANSI.SYS and 
  6746.            FANSI.SYS. These drivers usually bypass the BIOS, so they are very 
  6747.            fast. If you're looking for a way to speed up elvis, this is 
  6748.            probably your best bet. The Web URL for these drivers is listed in 
  6749.            the Tips chapter. 
  6750.  
  6751.            Elvis also supports "vt220" which use DEC VT-220 escape codes, and 
  6752.            "ansi" which uses true ANSI escape codes for both input and output. 
  6753.            "ansi" doesn't work with ANSI.SYS! 
  6754.  The "termcap" user interface 
  6755.            Under MS-DOS, elvis normally uses the termcap user interface. It 
  6756.            supports the :color command, and the mouse. 
  6757.  Missing features 
  6758.            Because elvis must run in the lower 640k, it is normally compiled 
  6759.            with certain features disabled.  If you want to enable these, or 
  6760.            disable more of them, you'll need to edit the config.h file and 
  6761.            recompile elvis.  Normally the missing features are: 
  6762.                PROTOCOL_HTTP and PROTOCOL_FTP - These two must remain 
  6763.                 disabled, because no source code is provided for supporting 
  6764.                 these features under MS-DOS. You can't enable them unless you 
  6765.                 write the necessary WinSock code. (And if you do write that 
  6766.                 code, please share it with me!) 
  6767.                FEATURE_SHOWTAG - The showtag option, which attempts to 
  6768.                 continually display the name of the function you're editing. 
  6769.                FEATURE_COMPLETE - The <Tab> key in ex command lines normally 
  6770.                 attempts to complete a file name or other word. 
  6771.                FEATURE_RAM - This would allow elvis to store its edit buffers 
  6772.                 in EMS/XMS memory instead of a session file, by specifying "-f 
  6773.                 ram" on the command line.  This makes elvis run much faster, 
  6774.                 but you can't recover the contents of the edit buffers after a 
  6775.                 crash.  Also, the Microsoft functions for accessing EMS/XMS 
  6776.                 memory are bulky and require a fairly large buffer space, so if 
  6777.                 you #define FEATURE_RAM then you must #undef every other 
  6778.                 FEATURE_XXXXX, and even then you may run out of memory 
  6779.                 occasionally. 
  6780.  
  6781.  
  6782.  9.2 MS-Windows95/MS-WindowsNT 
  6783.  
  6784.   Elvis 2.1 was ported to Windows95/WindowsNT as a text application by Steve 
  6785.  Kirkendall. The graphical user interface was written by Serge Pirotte. 
  6786.  
  6787.  Windows doesn't allow a single program to have both a text-mode interface and 
  6788.  a graphical interface, so we include two separate versions of elvis. ELVIS.EXE 
  6789.  is the text-mode version, and WINELVIS.EXE is the graphical version. Run 
  6790.  "elvis -G?" for a list of the text-mode user interfaces supported; you will 
  6791.  generally want to use the "termcap" interface.  The graphical version, of 
  6792.  course, is unable to output such a list. It supports two user interfaces, 
  6793.  named "windows" and "quit". 
  6794.  
  6795.  The "os" option 
  6796.            Under Windows95/WindowsNT, the os option's value is "win32". 
  6797.  The "shell" option 
  6798.            The default value of shell is "cmd". If the COMSPEC environment 
  6799.            variable is set (and it normally is), then its value will be used 
  6800.            instead of "cmd". This is important, because Windows95 uses 
  6801.            "COMMAND.COM" instead of "CMD.EXE". 
  6802.  The "lpout" option 
  6803.            The default value of the lpout option is "prn", which causes the 
  6804.            :lpr command to send text directly to the printer. 
  6805.  The "lptype" option 
  6806.            The default value of the lptype option is "dumb" in elvis.exe, or 
  6807.            "windows" in WinElvis.exe. 
  6808.  
  6809.            The "windows" printer type is only available in WinElvis; it causes 
  6810.            elvis to use the standard Windows graphics-oriented print spooler. 
  6811.            This is a very slow way to print, but it is portable and produces 
  6812.            good-looking output. 
  6813.  The "ccprg" option 
  6814.            The default value of the ccprg option is "cl /c ($1?$1:$2)", which 
  6815.            is appropriate for MSVC++ 2.0 or later. This way, you can run :cc 
  6816.            without arguments to compile (but not link) the current source file. 
  6817.            If you supply arguments, they'll be used instead of the filename. 
  6818.  The "makeprg" option 
  6819.            The default value of the makeprg option is "make".  You might 
  6820.            consider changing it to "nmake -f ($1?$1:basename($2)".mak")", would 
  6821.            allow MSVC++ 2.0 (or later) to compile "foo.c" via the "foo.mak" 
  6822.            makefile, unless you invoke :make with command-line arguments naming 
  6823.            a different makefile. 
  6824.  The "elvispath" option 
  6825.            The default value of elvispath is "~\elvislib;BIN;BIN\lib", where 
  6826.            BIN is the name of the directory where ELVIS.EXE resides. Note that 
  6827.            elements of the path are separated with semicolons. The ~ character 
  6828.            is replaced by the value of the home option, which is usually 
  6829.            C:\users\default for WindowsNT. 
  6830.  
  6831.            Unlike MS-DOS, Win32 doesn't pass the full pathname of the .EXE file 
  6832.            as an argument to the program. So the when the Win32 version of 
  6833.            elvis starts up, the first thing it does is search for ELVIS.EXE in 
  6834.            your execution path. It must do this in order to find the value to 
  6835.            use as BIN. 
  6836.  The "TERM" environment variable 
  6837.            The TERM environment variable tells elvis how to access the screen. 
  6838.            It should probably be left undefined, or set to "console". Other 
  6839.            values have not been tested, but the following should work via 
  6840.            terminal emulators or whatever: dosansi, nansi, vt100, vt100w, and 
  6841.            vt52. 
  6842.  Console size 
  6843.            Win32 distinguishes between a console's buffer size and its window 
  6844.            size. Many users like to set the buffer to a huge size (e.g., 100 
  6845.            lines) but leave the window set at 25 lines. They do this so they 
  6846.            can scroll back and review earlier programs' output. 
  6847.  
  6848.            When elvis starts, it creates a separate buffer which is the same 
  6849.            size as the window (except under Windows95 which has bugs in this 
  6850.            area). Elvis does this mostly so the scrollbar will go away. If you 
  6851.            change the buffer size while elvis is running, elvis will adjust the 
  6852.            size of the window to match the new buffer size, and then redraw the 
  6853.            text to take advantage of the new screen size. 
  6854.  
  6855.            You can change the console buffer's size by setting the ttyrows and 
  6856.            ttycolumns options. In WindowsNT, you can also change the size via 
  6857.            the console's Properties dialog. 
  6858.  
  6859.            When you exit elvis, the console will revert to its original buffer 
  6860.            and original window size. 
  6861.  Mouse 
  6862.            In WinElvis (graphical mode), the mouse works about like you'd 
  6863.            expect. You can select character spans by dragging the mouse through 
  6864.            the text while holding the left button down.  You can select a 
  6865.            rectangular area by dragging with the right button down.  To select 
  6866.            whole lines, move the mouse to the left margin, where the cursor 
  6867.            shape changes to an up-and-right arrow, and start dragging with the 
  6868.            left button there.  Double-clicking on a word with the left button 
  6869.            will do a tag search on that word; double-clicking the right button 
  6870.            pops returns to the original position. At present, there is no way 
  6871.            to bring up a menu with the right button. 
  6872.  
  6873.            In elvis (text mode), the mouse should work both in full-screen mode 
  6874.            and in a window.  Dragging with the left, right, or both buttons 
  6875.            pressed is will select characters, whole lines, or a rectangular 
  6876.            block, respectively. If you have a three-button mouse and the 
  6877.            appropriate driver, dragging with the middle button pressed will 
  6878.            also select a rectangular block. Clicking the left button will 
  6879.            cancel a pending text selection, and move the cursor. Clicking the 
  6880.            right button will move the cursor; if a text selection is pending, 
  6881.            it will be extended to the new cursor position. Double-clicking the 
  6882.            left or right button will follow a hypertext reference or return 
  6883.            from one, respectively. 
  6884.  
  6885.            There is a weird bug in WindowsNT's text-mode mouse support. If, 
  6886.            when the console is shown in a window, part of that console is 
  6887.            located off-screen, then the mouse won't be able to move there, even 
  6888.            if you're currently in full-screen mode! Since WindowsNT will 
  6889.            sometimes resize your console when you switch between full-screen 
  6890.            and windowed modes, this might not be obvious. But if the mouse 
  6891.            refuses to move onto part of your full-screen console, I suggest you 
  6892.            switch back to windowed mode and reduce the size of your font there. 
  6893.            When you switch back to full-screen mode again it will look exactly 
  6894.            the same, but the mouse should be able to go where no mouse has gone 
  6895.            before. 
  6896.  
  6897.  
  6898.  9.3 OS/2 
  6899.  
  6900.   Elvis 2.0 was ported to OS/2 by Lee Johnson, but that port was too late to be 
  6901.  included in the standard distribution of elvis 2.0. After that, Martin 
  6902.  "Herbert" Dietze took over the job, and brought it up to date for elvis 2.1. 
  6903.  OS/2-specific bug reports or comments should be sent to 
  6904.  herbert@paulina.shnet.org. 
  6905.  
  6906.  The basic OS/2 version uses the vio user interface, and doesn't require any 
  6907.  special libraries. 
  6908.  
  6909.  There is also a version which supports the termcap user interface in addition 
  6910.  to the standard VIO interface. This should allow you to run elvis over a 
  6911.  telnet connection. However, it requires the EMX.DLL library. 
  6912.  
  6913.  Another supports the x11 graphical interface in addition to VIO and the 
  6914.  termcap interface. It requires the X11.DLL library from XFree86, and the 
  6915.  EMX.DLL library. The X11 version can run under PMX provided you have XFree86's 
  6916.  X11.DLL file, but if you want to recompile elvis from scratch you'll need the 
  6917.  whole XFree86 package. 
  6918.  
  6919.  There are two separate VIO versions: a full-featured version named elvis.exe, 
  6920.  and version which lacks Internet support, named elvis-no-tcp.exe.  The latter 
  6921.  version is required if your OS/2 system doesn't have TCP/IP software 
  6922.  installed; otherwise you should use the full-featured version. The termcap and 
  6923.  x11 versions both require TCP/IP. 
  6924.  
  6925.  The "os" option 
  6926.            Under OS/2, the os option's value is "os2". 
  6927.  The "shell" option 
  6928.            The default value of shell is "cmd.exe". 
  6929.  The "lpout" option 
  6930.            The default value of the lpout option is "prn", which causes the 
  6931.            :lpr command to send text directly to the printer. 
  6932.  The "ccprg" option 
  6933.            The default value of the ccprg option is "gcc -c ($1?$1:$2)".  You 
  6934.            may want to change it. This way, you can run :cc without arguments 
  6935.            to compile (but not link) the current source file. If you supply 
  6936.            arguments, they'll be used instead of the filename. 
  6937.  The "makeprg" option 
  6938.            The default value of the makeprg option is "make $1". 
  6939.  The "elvispath" option 
  6940.            The default value of elvispath is "~\elvislib;BIN;BIN\lib", where 
  6941.            BIN is the name of the directory where elvis.exe resides. Note that 
  6942.            elements of the path are separated with semicolons. The ~ character 
  6943.            is replaced by the value of the home option. 
  6944.  The "TERM" environment variable 
  6945.            Although the OS/2 version of elvis does support the "termcap" 
  6946.            interface, it usually uses its own "vio" interface for text console 
  6947.            I/O.  The "vio" interface ignores TERM completely. 
  6948.  
  6949.            But the termcap interface is still supported, if compiled using 
  6950.            emx/gcc and linked against emx.dll both the usual "vio" and a 
  6951.            termcap based interface are available. 
  6952.  The mouse 
  6953.            Elvis ignores the mouse, under OS/2. 
  6954.  
  6955.  
  6956.  9.4 UNIX 
  6957.  
  6958.   Elvis was originally written under UNIX, so it seems strange to say I ported 
  6959.  it to UNIX, but I'll say it anyway: Elvis 2.1 was ported to UNIX by Steve 
  6960.  Kirkendall, with a lot of feedback from many people on the net. 
  6961.  
  6962.  Since elvis (and vi, for that matter) were originally designed and written for 
  6963.  UNIX, there aren't many quirks that show up for generic UNIX. Most of this 
  6964.  section will describe the quirks of individual UNIX versions. 
  6965.  
  6966.  The "os" option 
  6967.            Under all versions of UNIX, the os option's value is "unix". 
  6968.  The "lpout" option 
  6969.            The default value of the lpout option is either "!lp -s" or "!lpr". 
  6970.            The choice is made by the configure script; if /usr/bin/lp exists 
  6971.            then it will use "!lp -s", else it will use "!lpr". 
  6972.  The "elvispath" option 
  6973.            The default value of elvispath is usually 
  6974.            ~/.elvislib:/usr/local/lib/elvis. The /usr/local/lib/elvis member of 
  6975.            that path can be set via the --datadir=directory flag to the 
  6976.            configure script. 
  6977.  Missing functions 
  6978.            If your linker reports an undefined function, such as strdup(), then 
  6979.            you should check the need.h and need.c files; they contain 
  6980.            implementations of many such functions. To use elvis' version of the 
  6981.            missing function, edit the config.h file and change "#undef 
  6982.            NEED_XXX" to "#define NEED_XXX". 
  6983.  
  6984.            In all of the officially supported Unix variants listed below, the 
  6985.            configure script automatically selects any necessary NEED_XXX 
  6986.            macros. 
  6987.  
  6988.  
  6989.  9.4.1  UNIX versions 
  6990.  
  6991.   The configure script works around most of the quirks of individual UNIX 
  6992.  versions. Here, I will describe what configure does, or fails to do, for each 
  6993.  type of UNIX. 
  6994.  
  6995.  SunOS and Solaris 
  6996.            SunOS and Solaris2 both claim to be SunOS, according to the uname 
  6997.            command. However, their configuration is quite different, so the 
  6998.            configure script distinguishes between them by looking at the 
  6999.            revision number output by "uname -r". 
  7000.  
  7001.            The SunOS port uses BSD's sgtty ioctl calls, instead of the POSIX 
  7002.            calls, even though SunOS supports the POSIX calls. This choice was 
  7003.            made because differences in signal handling were preventing the 
  7004.            SunOS port from responding to window resize signals. 
  7005.  
  7006.            Solaris2 seems to have a bad implementation of rlogin, at least on 
  7007.            the system where I tested it. It couldn't handle 2000-character 
  7008.            write() calls. Because this is a communication issue, and not purely 
  7009.            a Solaris issue, I decided to reduce the size of the output buffer 
  7010.            for all systems to 1500 bytes. 
  7011.  
  7012.            The SunOS port uses termcap because I prefer it. The Solaris port 
  7013.            uses terminfo because Solaris doesn't seem to have a termcap 
  7014.            library. 
  7015.  
  7016.            Sun's normal C compiler, "cc", only supports the old K&R syntax, not 
  7017.            ANSI syntax.  Some of your standard (non-elvis) header files may 
  7018.            include a "const" declaration which K&R doesn't understand, so if 
  7019.            you aren't using GCC then the configure script will append 
  7020.            "-Dconst=" to the value of the CC macro in your Makefile, so the 
  7021.            "const" keyword will be ignored. 
  7022.  
  7023.            If you configure elvis to support X-windows, and your 
  7024.            LD_LIBRARY_PATH environment variable doesn't contain an X11 library 
  7025.            directory, then the configure script will output a warning message 
  7026.            telling you how to set that variable. However, you might not need to 
  7027.            set it; try running elvis without setting it first. 
  7028.  OSF-1 
  7029.            This configuration is rather weird. I don't have access to an OSF-1 
  7030.            system myself, so it's hard for me to make it less weird. 
  7031.  
  7032.            The primary weirdness is that it uses tinytcap.c (by defining 
  7033.            NEED_TGETENT in the config.h file) instead of the real terminfo 
  7034.            functions. I suggest you try compiling without NEED_TGETENT. 
  7035.  BSD 
  7036.            For BSD, configure will try to use the shlicc2 compiler if it is 
  7037.            available, so elvis can use shared libraries. 
  7038.  
  7039.            Interestingly, the BSD port is configured to use POSIX ioctl calls 
  7040.            instead of BSD's own sgtty calls. This may be a mistake. If elvis 
  7041.            fails to adjust when you resize your xterm, then I suggest you run 
  7042.            "configure --ioctl=sgtty", and recompile. 
  7043.  SCO 
  7044.            SCO likes to change the operating system name (as reported by the 
  7045.            "uname" command) to match the network node name. If uname reports a 
  7046.            brand of Unix that configure doesn't recognize, then configure will 
  7047.            inspect the files on your system for evidence that you're running 
  7048.            SCO Unix/ODT or SCO Xenix. If that test fails, you'll need to give 
  7049.            the OS name on the the command line when invoking configure (e.g., 
  7050.            "configure sco" or "configure xenix"). 
  7051.  
  7052.            When using an ANSI compiler, SCO seems to require extern 
  7053.            declarations of the termcap functions. I added those declarations to 
  7054.            the end of the "osunix/osdef.h" file. 
  7055.  Linux 
  7056.            Newer versions of Linux seem to have moved the definition of the 
  7057.            speed_t data type from its tradional location, <sys/types.h>. The 
  7058.            new location is <termios.h>, which makes sense since that's where 
  7059.            the legal values of speed_t are defined... but because it is 
  7060.            non-standard, I had to add a little extra code to the 
  7061.            "osunix/osdef.h" file to include <termios.h> for Linux. 
  7062.  
  7063.  
  7064.  9.5 Other operating systems 
  7065.  
  7066.   Elvis has been reported to work without modification on Atari ST/TT systems 
  7067.  with MiNT. The only special trick is that you must configure it with 
  7068.  "configure --ioctl=sgtty". Without the "--ioctl=sgtty", elvis would be 
  7069.  configured to use the POSIX termios ioctl() calls, which don't work quite 
  7070.  right under MiNT. 
  7071.  
  7072.  If you would like to port elvis to another operating system, please contact me 
  7073.  first. I can send you some notes I have about how the OS-dependent functions 
  7074.  in the os*/*.c files should behave, and also how the GUI functions should 
  7075.  behave. That's normally all you need to write in order to port elvis to a new 
  7076.  operating system. 
  7077.  
  7078.  A Macintosh port is currently underway. I still need volunteers to port it to 
  7079.  VMS and OS-9. I would also welcome a port for any other popular system. 
  7080.  
  7081.  
  7082. ΓòÉΓòÉΓòÉ 1.10. Elvis 2.1 Sessions ΓòÉΓòÉΓòÉ
  7083.  
  7084.  
  7085.  
  7086. 10. SESSIONS, INITIALIZATION, AND RECOVERY 
  7087.  
  7088.  This section of the manual describes the life-cycle of an edit session. We 
  7089. begin with the definition of an edit session and what that means to elvis. This 
  7090. is followed by sections discussing initialization and recovery after a crash. 
  7091.  
  7092. 10.1 Sessions 
  7093.  
  7094.  Elvis is eventually expected to meet the COSE standards, which require (among 
  7095. other things) that programs be able to save their state so that they can be 
  7096. restarted later. It isn't required to restart in exactly the same state, but it 
  7097. should come as close as possible. 
  7098.  
  7099. For elvis, this means that edit sessions should be restartable. It is possible 
  7100. to begin an edit session with one elvis process, exit that process, and then 
  7101. later start a new elvis process which resumes the previous edit session. 
  7102.  
  7103. To accomplish this, elvis stores its state in a file, called the session file. 
  7104. For all practical purposes, the session file is the session. 
  7105.  
  7106. The name of the session file is stored in the session option. By default, this 
  7107. will be a file in your home directory, named "elvis*.ses", where "*" represents 
  7108. a number chosen at run-time to make the file name unique. You can specify some 
  7109. other name for the session file via the -ssession command-line flag. 
  7110.  
  7111. If the session file doesn't already exist when elvis starts running, then elvis 
  7112. will create it. 
  7113.  
  7114. When elvis exits, it will normally delete the session file if this is the elvis 
  7115. process that created it. If the session file was left over from some other 
  7116. elvis process, then elvis will not delete it upon exiting. This is controlled 
  7117. by the tempsession option; if you don't like elvis' default behavior then you 
  7118. can change it. 
  7119.  
  7120. 10.2 Initialization 
  7121.  
  7122.  Before discussing elvis' initialization, let me just say that if you're having 
  7123. trouble configuring elvis, you might want to try invoking elvis with the 
  7124. command line flag -VVV, which causes elvis to write status information to 
  7125. stdout/stderr so you can see what it is doing. The flag -ologfile will redirect 
  7126. this information to a file named logfile. Windows programs such as WinElvis.exe 
  7127. aren't allowed to write anything to stdout, so you must use -ologfile any time 
  7128. you use -VVV. Now, back to the topic at hand... 
  7129.  
  7130. Elvis begins by initializing some options to hardcoded values. 
  7131.  
  7132. Elvis then chooses which user interface it should use. Elvis does this by 
  7133. scanning the command line arguments for a -Ggui flag; if there is no such flag, 
  7134. then elvis tests each user interface and uses the best one that is expected to 
  7135. work. (For example, the "x11" interface is expected to work if there is a 
  7136. DISPLAY environment variable and the X server is accessible. If not, then the 
  7137. "x11" interface is rejected and some other interface is used.) 
  7138.  
  7139. The session file is then opened or created. For preexisting session files, 
  7140. elvis scans the session file for any buffers in it, and adds them to its 
  7141. internal list. Elvis can even reload the "undo" versions of some buffers. 
  7142.  
  7143. Elvis searches through the directories named in the elvispath option for a file 
  7144. named "elvis.ini". If it finds that file, then it loads it into a buffer named 
  7145. "Elvis initialization" and executes its contents as a series of ex commands. 
  7146. See section 10.2.1 for description of the default contents of this file. 
  7147.  
  7148. After that, it attempts to similarly load some other files, but they aren't 
  7149. executed. Some of them will be executed later. These files are: 
  7150.  
  7151. .-----------.----------------------.------------------------------.
  7152. | FILE NAME | BUFFER NAME          | PURPOSE                      |
  7153. |-----------|----------------------|------------------------------|
  7154. | elvis.msg | Elvis messages       | used to translate messages   |
  7155. | elvis.brf | Elvis before reading | executed before loading file |
  7156. | elvis.arf | Elvis after reading  | executed after loading file  |
  7157. | elvis.bwf | Elvis before writing | executed before saving file  |
  7158. | elvis.awf | Elvis after writing  | executed after saving file   |
  7159. ^-----------^----------------------^------------------------------^
  7160. The "elvis.msg" file is described in section 11: Messages. The other files are 
  7161. described later in this section. 
  7162.  
  7163. The next step in initialization is to load the first file and display it in a 
  7164. window. To do this, it first creates an empty buffer with the same name as the 
  7165. file. It then executes the "Elvis before reading" buffer (if it exists) on the 
  7166. empty buffer. The file's contents are then read into the buffer. Then the 
  7167. "Elvis after reading" buffer (if it exists) is executed on the new buffer. 
  7168. Finally, elvis creates a new window that shows the new buffer. 
  7169.  
  7170. If the -a flag was given on the command line, then elvis will repeat the above 
  7171. steps for each file named on the command line. On the other hand, if no 
  7172. filenames were given on the command line then elvis will simply create a single 
  7173. untitled buffer and a window that shows it. 
  7174.  
  7175. 10.2.1 The "elvis.ini" file 
  7176.  
  7177.  The "elvis.ini" file is loaded into a buffer named "Elvis initialization". 
  7178. That buffer is then executed before any other initialization files are loaded. 
  7179. If the session file is later restarted, this script will be executed again at 
  7180. that time. Here's a line-by-line analysis of the default "elvis.ini" file... 
  7181.  
  7182.         " DEFINE SOME DIGRAPHS
  7183.         if os=="msdos" || os=="os2" || (os=="win32" && gui!="windows")
  7184.         then source! (elvispath("elvis.pc8"))
  7185.         else source! (elvispath("elvis.lat"))
  7186. This attempts to locate the "elvis.lat" or "elvis.pc8" file and execute it. 
  7187. Those files contain ex scripts, consisting of a bunch of :digraph commands that 
  7188. set up the digraph table appropriately for the Latin-1 symbol set. The "!" at 
  7189. the end of the :source command name causes :source to silently ignore errors. 
  7190.  
  7191.         " CHOOSE SOME DEFAULT OPTION VALUES BASED ON THE INVOCATION NAME
  7192.         let p=tolower(basename(program))
  7193.         if p == "ex" || p == "edit"
  7194.         then set! initialstate=ex
  7195.         if p == "view"
  7196.         then set! defaultreadonly
  7197.         if p == "edit" || p == "vedit"
  7198.         then set! novice
  7199.         if home == ""
  7200.         then let home=dirdir(program)
  7201. These lines initialize certain options according to the name by which elvis was 
  7202. invoked. Traditionally, invoking vi by the name "ex" causes it to start up in 
  7203. ex mode instead of vi mode, and "view" causes the files to be treated as 
  7204. readonly. 
  7205.  
  7206.         " SYSTEM TWEAKS GO HERE
  7207.         "
  7208.         " The Linux console can't handle colors and underlining.
  7209.         if gui=="termcap"
  7210.         then {
  7211.          if term=="linux"
  7212.          then set! nottyunderline
  7213.         }
  7214. This is an attempt to work around a bug in the Linux console driver. The Linux 
  7215. console can't mix color attributes with the underline attribute. 
  7216.  
  7217. " WINDOWS DEFAULT COLORS GO HERE (may be overridden in elvis.rc file)
  7218. if gui=="windows"
  7219. then {
  7220.  color e green
  7221.  color i magenta
  7222.  color u blue
  7223.  color f red
  7224. }
  7225. " X11 DEFAULT COLORS AND TOOLBAR GO HERE (may be overridden in .exrc file)
  7226. if gui=="x11"
  7227. then so! (elvispath("elvis.x11"))
  7228. These lines set the defaults for the "windows" and "x11" user interfaces. 
  7229.  
  7230. Note that "x11" configuration commands are actually stored in a separate file. 
  7231. This is because there are large number of commands for setting up the toolbar, 
  7232. and I didn't want to force other GUIs to read them just to ignore them. You 
  7233. should set the defaults in "elvis.x11", and not in an app-defaults file. If you 
  7234. aren't using the "x11" user interface, then these lines have no effect. 
  7235.  
  7236.         " EXECUTE THE STANDARD CUSTOMIZATION SCRIPTS
  7237.         let f=(os=="unix" ? ".elvisrc" : "elvis.rc")
  7238.         if $EXINIT
  7239.         then eval $EXINIT
  7240.         else source! (exists("~"/f) ? "~"/f : "~/.exrc")
  7241.         if exrc && getcwd()!=home
  7242.         then safer! (exists(f) ? f : ".exrc")
  7243.         set f=""
  7244. ;
  7245.  These lines set the f option to either ".elvisrc" or "elvis.rc", whichever is 
  7246. appropriate for your operating system. They then check whether an environment 
  7247. variable named "EXINIT" is set to a non-empty value. If so, then the value of 
  7248. EXINIT is executed as an ex command line; otherwise the ".elvisrc" or 
  7249. "elvis.rc" file in your home directory is executed, if it exists. If that file 
  7250. doesn't exist, then it tries ".exrc"... which probably only makes sense for 
  7251. Unix, but it is quicker to try & fail then to test before trying. The "~" 
  7252. notation is UNIX's conventional alias for referring to files in your home 
  7253. directory; elvis handles it correctly on non-UNIX systems too. 
  7254.  
  7255. Note: There is a hardcoded limit of (normally) 1023 characters for the result 
  7256. of an expression.  If your EXINIT environment variable's value is longer than 
  7257. that, elvis won't be able to execute it. 
  7258.  
  7259. If EXINIT or .elvisrc/elvis.rc/.exrc (whichever was executed) has set the exrc 
  7260. option then elvis will execute ".elvisrc" or "elvis.rc" in the current 
  7261. directory, if it exists; if not, then it tries ".exrc". Elvis uses :safer 
  7262. instead of :source to execute the file for security reasons. 
  7263.  
  7264.         " X11 INTERFACE DEFAULT FONTS GO HERE
  7265.         if gui == "x11"
  7266.         then if normalfont == ""
  7267.         then {
  7268.          set! normalfont="*-courier-medium-r-*-18-*"
  7269.          set! boldfont="*-courier-bold-r-*-18-*"
  7270.          set! italicfont="*-courier-medium-o-*-18-*"
  7271.         }
  7272. These cause the x11 interface to use 18-point courier fonts, if you don't 
  7273. explicitly name some other font on the command line (-font fontname) or by 
  7274. setting the normalfont option in your .exrc file. 
  7275.  
  7276. 10.2.2 The "elvis.brf" file 
  7277.  
  7278.  The "elvis.brf" file is loaded into a buffer named "Elvis before reading". 
  7279. That buffer is executed immediately before loading any user file into a user 
  7280. buffer. 
  7281.  
  7282.         " TAKE A GUESS AT THE BUFFER'S TYPE
  7283.         let! readeol=fileeol(filename)
  7284. This line tries to guess whether the file is binary or not. This must be done 
  7285. before the file is loaded because for non-binary files elvis converts newlines 
  7286. to linefeeds as it reads the file. 
  7287.  
  7288. 10.2.3 The "elvis.arf" file 
  7289.  
  7290.  The "elvis.arf" file is loaded into a buffer named "Elvis after reading". That 
  7291. buffer is automatically executed immediately after a user file has been loaded 
  7292. into a user buffer. 
  7293.  
  7294.         " TAKE A GUESS AT THE BUFFER'S PREFERRED DISPLAY MODE
  7295.         let e=tolower(dirext(filename))
  7296.         if knownsyntax(filename)
  7297.         then set! bufdisplay=syntax
  7298.         if os=="unix" && buflines >= 1
  7299.         then 1s/^#! *[^ ]*\/\([^ ]\+\).*/set! bufdisplay="syntax \1"/x
  7300.         if !newfile
  7301.         then {
  7302.          if readeol=="binary" && bufdisplay=="normal"
  7303.          then set! bufdisplay=hex
  7304.          if e==".man"
  7305.          then set! bufdisplay=man
  7306.          if strlen(e)==2 && isnumber(e>>1) && buflines>=1
  7307.          then 1s/^\./set! bufdisplay=man/x
  7308.          if e==".tex"
  7309.          then set! bufdisplay=tex
  7310.          if e<<4==".htm"
  7311.          then set! bufdisplay=html
  7312.          if buflines >= 1 && bufdisplay=="hex"
  7313.          then 1s/^<[HIThit!]/set! bufdisplay=html/x
  7314.          if (filename<<5=="http:" || filename<<4=="ftp:")
  7315.                                           && strlen(e)<4 && bd=="hex"
  7316.          then set! bufdisplay=normal
  7317.          if bufdisplay=="normal" && buflines >= 1
  7318.          then 1s/^From .*/set! bufdisplay="syntax email"/x
  7319.          if dirdir(filename)=="/tmp" || dirdir(filename)=="/var/tmp"
  7320.          then set! bufdisplay="syntax email"
  7321.         }
  7322. These lines try to guess the preferred display mode for the file. First it 
  7323. checks to see if the filename's extension is listed in the elvis.syn file; if 
  7324. so, then the buffer is shown in the syntax display mode. Then, for UNIX, if the 
  7325. first line of the file starts with "#!shell", elvis will use the syntax display 
  7326. mode for that named shell. This is followed by many special cases. 
  7327.  
  7328.         " EXECUTE MODELINES, IF "modelines" OPTION IS SET
  7329.         if modelines && buflines >= 1 && buflines <= modelines * 2
  7330.         then %s/ex:\(.*\):/\1/x
  7331.         if modelines && buflines > modelines * 2
  7332.         then {
  7333.          eval 1,(modelines)s/[ev][xi]:\\\(.*\\\):/\1/x
  7334.          eval (buflines - modelines + 1),(buflines)
  7335.                                           s/[ev][xi]:\\\(.*\\\):/\1/x
  7336.         }
  7337. These commands search for modelines in the newly loaded file, if the modelines 
  7338. option is set. The modelines are executed via the new "x" option to the :s 
  7339. command. 
  7340.  
  7341. Note: The second "eval" line is split above merely as a typographical 
  7342. convenience. In the real "elvis.arf" file, the "eval" line and "s" line are 
  7343. actually a single line. 
  7344.  
  7345. 10.2.4 The "elvis.bwf" file 
  7346.  
  7347.  The "elvis.bwf" file is loaded into a buffer named "Elvis before writing". 
  7348. That buffer is executed as a series of ex commands immediately before writing 
  7349. the entire contents of a buffer out over its original file. 
  7350.  
  7351.         if backup && !newfile
  7352.         then {
  7353.          if os=="unix"
  7354.          then eval ! cp (filename) (filename).bak
  7355.          else eval ! copy (filename) (basename(filename)).bak >NUL
  7356.         }
  7357. These lines copy the original version of the file to a "*.bak" file. Note that 
  7358. we implement separate Unix and non-Unix versions of the copy command here. 
  7359.  
  7360. 10.2.5 The "elvis.awf" file 
  7361.  
  7362.  The "elvis.awf" file is loaded into a buffer named "Elvis after writing". That 
  7363. buffer is executed as a series of ex commands immediately after writing the 
  7364. entire contents of a buffer out over its original file. 
  7365.  
  7366. There is no default "elvis.awf" file, because I haven't found any need for one 
  7367. yet. 
  7368.  
  7369. 10.3 Recovery 
  7370.  
  7371.  If elvis ever dies an unnatural death, the session file will be left behind. 
  7372. This session file contains all of the changes you've made during your edit 
  7373. session, so you should be able to start a new elvis process on the old session 
  7374. file and recover all of your changes. 
  7375.  
  7376. Only one elvis process at a time is allowed to use a given session file. To 
  7377. enforce this, when elvis starts up it sets an "in use" flag in the session 
  7378. file's header. Any later elvis process will test that flag, and refuse to use a 
  7379. session file which is already in use. 
  7380.  
  7381. When elvis crashes, it leaves the "in use" flag set, even though the process 
  7382. that was using it has died. You must restart your edit session via "elvis -r". 
  7383. The -r flag tells elvis to ignore the "in use" flag. If you aren't using the 
  7384. default session file, then you'll need to add a "-f sessionfile" flag to tell 
  7385. elvis which session file it should recover from. 
  7386.  
  7387. If you always use the default session file, and allow several old files to 
  7388. accumulate after crashes, then "elvis -r" will always recover from the 
  7389. lowest-numbered one. The command "elvis -r -Gquit" will tell you its name. If 
  7390. you prefer to recover form a different session file, you can either delete the 
  7391. lower-numbered session files, or use the "-f sessionfile" flag to make elvis 
  7392. use a different one. 
  7393.  
  7394. When this new elvis process starts up, it will be displaying a new, empty 
  7395. buffer. Don't panic! Your edit buffers are still intact; they just don't happen 
  7396. to be displayed in the initial window. 
  7397.  
  7398. After a crash, the session file might not be entirely self-consistent. Because 
  7399. of this, it is dangerous to edit the file using this session file. You should 
  7400. save your old buffer to a file immediately, and then exit elvis. To save your 
  7401. old buffer give elvis the command ":(buffer)w filename" where buffer is the 
  7402. name of your buffer (usually the same as the original file name) and filename 
  7403. is the name of a new file where you wish to store the text. Note that the 
  7404. buffer name should be in parentheses! And for safety's sake, you should not 
  7405. write the salvaged buffer out over the top of the original text file. 
  7406.  
  7407. Under normal circumstances elvis automatically deletes the session file when it 
  7408. exits, but when recovering after a crash elvis is more cautious. It never 
  7409. deletes a recovered session file itself. After recovering your text and exiting 
  7410. elvis, you should manually delete the session file via "rm 
  7411. /var/tmp/elvis*.ses", or whatever the session file's name is. For DOS/Windows 
  7412. users, the command would be "DEL \TEMP\ELVIS*.SES". 
  7413.  
  7414. If you can figure out how to reproduce the problem, please let me know! My 
  7415. email address is kirkenda@cs.pdx.edu 
  7416.  
  7417. 10.4 Other files 
  7418.  
  7419. The following configuration files aren't necessarily related to initialization 
  7420. or sessions, but since we've discussed so many configuration files in this 
  7421. chapter already, we might as well finish it off. 
  7422.  
  7423.  *.man 
  7424.            These files are Unix-style "man pages" describing each of the 
  7425.            programs. You can view them with elvis' "man" display mode, or you 
  7426.            can print them via " troff -man ..." or the local equivalent. 
  7427.  elvis.ftp or ~/.netrc 
  7428.            This file stores account names and passwords to be used when 
  7429.            contacting certain FTP sites. It is described in Chapter 15: The 
  7430.            Internet. 
  7431.  elvis*.html 
  7432.            These files store the on-line interactive manual for elvis. When you 
  7433.            use the :help command, elvis locates the necessary file and loads 
  7434.            it. These files are written in HTML so you can also view/print them 
  7435.            using a Web browser such as Netscape. 
  7436.  howto.html 
  7437.            This file contains a lot of "How To" discussions for various 
  7438.            features. It is meant to be searched via the ":howto" alias defined 
  7439.            in exalias.eg. Most of the discussions contain links into the 
  7440.            manual, so it is important for this file to be located in the same 
  7441.            directory as all of the elvis*.html files. 
  7442.  elvis.lat 
  7443.            This file contains a bunch of :digraph commands for setting up the 
  7444.            digraph table for the Latin-1 symbol set. The default elvis.ini file 
  7445.            interprets this file's contents automatically. 
  7446.  elvis.pc8 
  7447.            This file contains a bunch of :digraph commands for setting up the 
  7448.            digraph table for the PC-8 symbol set (which corresponds to IBM Code 
  7449.            Page 437). The default elvis.ini file interprets this file's 
  7450.            contents automatically for MS-DOS, OS/2 and text-mode Win32. 
  7451.  elvis.msg 
  7452.            This file stores a translation table, which allows you to customize 
  7453.            elvis' messages. This file is described in the Messages chapter. 
  7454.  elvistrs.msg 
  7455.            This contains a rough list of nearly all of elvis' terse messages. 
  7456.            You can use this as a resource when constructing an elvis.msg file. 
  7457.  elvis.net 
  7458.            This tells elvis which sites can be accessed directly, and which can 
  7459.            only be accessed via proxy servers. It is described in Chapter 15: 
  7460.            The Internet. 
  7461.  elvis.ps 
  7462.            The PostScript printer drivers (lptype=ps or ps2) include this 
  7463.            file's contents in the printer output. This file should contain 
  7464.            PostScript code which defines the symbols ElvisN, ElvisB, and ElvisI 
  7465.            as 12-point monospaced fonts to be used for normal text, bold text, 
  7466.            and italic text, respectively. It also defines ElvisPage, 
  7467.            ElvisLeftPage, and ElvisRightPage procedures for setting the size 
  7468.            and position of a page's text on the paper. If this file doesn't 
  7469.            exist or is unreadable, elvis will use the following definitions: 
  7470.  
  7471.                       /ElvisN /Courier findfont 12 scalefont def
  7472.                       /ElvisB /Courier-Bold findfont 12 scalefont def
  7473.                       /ElvisI /Courier-Oblique findfont 12 scalefont def
  7474.                       /ElvisPage { 12 36 translate } def
  7475.                       /ElvisLeftPage { 12 750 translate -90 rotate 0.58 0.75 scale } def
  7476.                       /ElvisRightPage { newpath 12 394 moveto 576 0 rlineto stroke
  7477.                                        12 366 translate -90 rotate 0.58 0.75 scale } def
  7478.  
  7479.  elvis.syn 
  7480.            This contains descriptions of all languages supported by the syntax 
  7481.            display mode. For a full description of this file, see the Language 
  7482.            Specification section in the Display Modes chapter. 
  7483.  elvis.xbm 
  7484.            This stores a two-color Elvis icon, in the X-Windows XBM format. 
  7485.  elvis.xpm 
  7486.            This stores a four-color Elvis icon, in the X-Windows XPM format. 
  7487.  printdoc.bat 
  7488.            This contains a series of program invocations for printing all of 
  7489.            the elvis documentation in the correct sequence. This file should be 
  7490.            executable under MS-DOS, Win32, and Unix. You must install elvis 
  7491.            before this will work! 
  7492.  
  7493.  
  7494. ΓòÉΓòÉΓòÉ 1.11. Elvis 2.1 Cut Buffers ΓòÉΓòÉΓòÉ
  7495.  
  7496.  
  7497.  
  7498. 11. CUT BUFFERS 
  7499.  
  7500. When Elvis deletes text, it stores that text in a cut buffer. This happens in 
  7501. both visual mode and EX mode. There are 36 cut buffers: 26 named buffers ("a 
  7502. through "z), 9 anonymous buffers ("1 through "9), and 1 extra cut buffer (".). 
  7503. There is no practical limit to how much text a cut buffer can hold. 
  7504.  
  7505. 11.1 Putting text into a Cut Buffer 
  7506.  
  7507. In visual mode, text is copied into a cut buffer when you use the d, y, c, C, 
  7508. s, or x commands. There are also a few others. 
  7509.  
  7510. By default, the text goes into the "1 buffer. The text that used to be in "1 
  7511. gets shifted into "2, "2 gets shifted into "3, and so on. The text that used to 
  7512. be in "9 is lost. This way, the last 9 things you deleted are still accessible. 
  7513.  
  7514. You can also put the text into a named buffer -- "a through "z. To do this, you 
  7515. should type the buffer's name (two keystrokes: a double-quote and a lowercase 
  7516. letter) before the command that will cut the text. When you do this, "1 through 
  7517. "9 are not affected by the cut. 
  7518.  
  7519. You can append text to one of the named buffers. To do this, type the buffer's 
  7520. name in uppercase (a double-quote and an uppercase letter) before the 
  7521. d/y/c/C/s/x command. 
  7522.  
  7523. The ". buffer is special. It isn't affected by the d/y/c/C/s/x command. 
  7524. Instead, it stores the text that you typed in the last time you were in input 
  7525. mode. It is used to implement the . visual command, and ^A in input mode. 
  7526.  
  7527. In EX mode, the :delete, :change, and :yank commands all copy text into a cut 
  7528. buffer. Like the visual commands, these EX commands normally use the "1 buffer, 
  7529. but you can use one of the named buffers by giving its name after the command. 
  7530. For example... 
  7531.  
  7532. :20,30y a
  7533. ... will copy lines 20 through 30 into cut buffer "a. 
  7534.  
  7535. You can't directly put text into the ". buffer, or the "2 through "9 buffers. 
  7536.  
  7537. 11.2 Pasting from a Cut Buffer 
  7538.  
  7539. There are two main styles of pasting: line-mode and character-mode. If a cut 
  7540. buffer contains whole lines (from a command like "dd") then line-mode pasting 
  7541. is used; if it contains partial lines (from a command like "dw") then 
  7542. character-mode pasting is used. The EX commands always cut whole lines. 
  7543.  
  7544. Elvis also supports a limited form of rectangular cut and paste. This is handy, 
  7545. for example, when you want to swap two columns in a table. The only way to put 
  7546. a rectangular area into a cut buffer is to select it via the visual ^V command, 
  7547. and then yank or delete it with a y or d command, respectively. When a cut 
  7548. buffer has been filled this way, it will be pasted using rectangle-mode 
  7549. pasting. 
  7550.  
  7551. Character-mode pasting causes the text to be inserted into the line that the 
  7552. cursor is on. 
  7553.  
  7554. Line-mode pasting inserts the text on a new line above or below the line that 
  7555. the cursor is on. It doesn't affect the cursor's line at all. 
  7556.  
  7557. In visual mode, the p and P commands insert text from a cut buffer. Uppercase P 
  7558. will insert it before the cursor, and lowercase p will insert it after the 
  7559. cursor. Normally, these commands will paste from the "1 buffer, but you can 
  7560. specify any other buffer to paste from. Just type its name (a double-quote and 
  7561. another character) before you type the P or p. 
  7562.  
  7563. In EX mode, the :put command pastes text after a given line. To paste from a 
  7564. buffer other that "1, enter its name after the command. 
  7565.  
  7566. 11.3 Macros 
  7567.  
  7568. The contents of a named cut buffer can be executed as a series of ex/vi 
  7569. commands. 
  7570.  
  7571. To put the instructions into the cut buffer, you must first insert them into 
  7572. the file, and then delete them into a named cut buffer. 
  7573.  
  7574. To execute a cut buffer's contents as EX commands, you should give the EX 
  7575. command :@ and the name of the buffer. For example, :@z will execute "z as a 
  7576. series of EX commands. 
  7577.  
  7578. To execute a cut buffer's contents as visual commands, you should give the 
  7579. visual command @ and the letter of the buffer's name. The visual @ command is 
  7580. different from the EX :@ command. They interpret the cut buffer's contents 
  7581. differently. 
  7582.  
  7583. The visual @ command can be rather finicky. Each character in the buffer is 
  7584. interpreted as a keystroke. If you load the instructions into the cut buffer 
  7585. via a "zdd command, then the newline character at the end of the line will be 
  7586. executed just like any other character, so the cursor would be moved down 1 
  7587. line. If you don't want the cursor to move down 1 line at the end of each @z 
  7588. command, then you should load the cut buffer by saying 0"zD instead. 
  7589.  
  7590. One way to store keystrokes into a buffer for use with the visual @ command is 
  7591. via the [key and ]key commands.  They record keystrokes into a cut buffer as 
  7592. you type them. 
  7593.  
  7594. 11.4 The Effect of Switching Files 
  7595.  
  7596. Elvis 2.1 retains the contents of all cut buffers when you switch files, e.g. 
  7597. via a :next or :edit command. This differs from the traditional behavior of vi. 
  7598.  
  7599. In the real vi and in elvis 1.X, the anonymous buffers ("1 through "9) were 
  7600. clobbered and the named buffers ("a through "z) were left intact. This made 
  7601. sense then, but since elvis 2.1 allows you to edit several files at the same 
  7602. time, the rules changed. 
  7603.  
  7604. 11.5 Cut & Paste Between Applications 
  7605.  
  7606. There is a special cut buffer named "^ (doublequote-carat) which accesses the 
  7607. GUI's cut&paste feature.  Each time you yank text into the "^ cut buffer, it is 
  7608. copied to the GUI's clipboard.  Each time you paste text from the "^ cut 
  7609. buffer, elvis reads from the GUI's clipboard. 
  7610.  
  7611. Not all GUIs have clipboards.  For example, the plain old termcap interface 
  7612. doesn't have one.  The "^ cut buffer still exists, but it resides inside elvis, 
  7613. just like any other cut buffer. (Exception: The Windows version of the termcap 
  7614. interface has been patched to access the Windows clipboard.) 
  7615.  
  7616. Elvis' X11 interface does use X's clipboard.  Clicking the middle mouse button 
  7617. causes the clipboard's contents to be inserted at the cursor position.  When 
  7618. you select text via the mouse, the text is immediately copied to the clipboard. 
  7619. Text that you select via keyboard commands is not automatically copied because 
  7620. elvis has no way of knowing when you're through selecting it. 
  7621.  
  7622. The Win32 version of elvis has the usual Cut/Copy/Paste toolbar buttons and 
  7623. menu items. 
  7624.  
  7625.  
  7626. ΓòÉΓòÉΓòÉ 1.12. Elvis 2.1 Messages ΓòÉΓòÉΓòÉ
  7627.  
  7628.  
  7629.  
  7630. 12. MESSAGES 
  7631.  
  7632.  Elvis has an extremely versatile method for handling messages. You can change 
  7633. the wording, or even the language, of any message. You can make any message 
  7634. ring the terminal's bell. You can hide certain messages. 
  7635.  
  7636. This section of the manual describes how messages are generated, and how you 
  7637. can customize them. A list of the individual messages can be found in the file 
  7638. elvistrs.msg. 
  7639.  
  7640. 12.1 The msg() function. 
  7641.  
  7642.  Every message begins with a call to the msg() function. The message function 
  7643. is passed at least two arguments: the message's importance, and the text of the 
  7644. message. Some messages also have other arguments. 
  7645.  
  7646. The importance of a message is a symbol which describes what type of message it 
  7647. is. The symbol can be any of the following: MSG_STATUS, MSG_INFO, MSG_WARNING, 
  7648. MSG_ERROR, or MSG_FATAL. This affects the way that the message is displayed. 
  7649. For example, MSG_STATUS messages are always displayed immediately, and can be 
  7650. overwritten by later messages; this is used for messages like "Reading 
  7651. foo.c..." MSG_ERROR messages cause the exitcode option to be set to 1. 
  7652. MSG_FATAL messages cause elvis to exit immediately after displaying the 
  7653. message. You can't alter a message's importance without editing elvis' source 
  7654. code and recompiling; each message's importance is hardcoded. 
  7655.  
  7656. The text of the message is a string. If there are other arguments, then the 
  7657. text of the message will be preceded by a bracketed list of letters which help 
  7658. the msg() function convert the arguments to strings. Although this bracketed 
  7659. list is part of the string, it is not considered to be part of the message's 
  7660. text. 
  7661.  
  7662. Each letter in the bracketed list describes how one argument is to be 
  7663. displayed. d indicates that a long int argument is to be converted into a 
  7664. decimal number string. c and C indicate that a char or CHAR is to be converted 
  7665. into a string of length 1. s and S indicate that the argument is already a 
  7666. string of chars or CHARs. (The CHAR data type could be either an 8-bit 
  7667. character or a 16-bit character, depending on the compile-time configuration of 
  7668. elvis. The bitsperchar option indicates which.) 
  7669.  
  7670. 12.2 Translation 
  7671.  
  7672.  All of the messages built into elvis are terse. If the terse option is turned 
  7673. off, then elvis will attempt to translate each terse message into a verbose 
  7674. one. Although the terse messages are written in English, the verbose messages 
  7675. can be in any language. 
  7676.  
  7677. When elvis first creates a new edit session, it attempts to locate a file named 
  7678. "elvis.msg" and load it into a buffer named "Elvis messages". To find the 
  7679. "elvis.msg" file, elvis searches through all of the directories named in the 
  7680. elvispath option. 
  7681.  
  7682. Each line of the "Elvis messages" buffer describes how a single message should 
  7683. be translated. To translate a message, elvis scans through the "Elvis messages" 
  7684. buffer for a line which begins with the terse message text followed immediately 
  7685. by a ':' character. If it finds one, then it skips any whitespace after the ':' 
  7686. and uses the remainder of the line as the message text. If it doesn't find any 
  7687. matching line, then the terse text is used. 
  7688.  
  7689. This is primarily intended to be used for translating the messages into your 
  7690. native language. 
  7691.  
  7692. The file elvistrs.msg is a handy resource when you're constructing your 
  7693. "elvis.msg" file. It contains the terse forms of almost all messages. You can 
  7694. yank a line from Appendix A, paste it into your "elvis.msg" file, and add a 
  7695. colon and verbose message to the end of the message. 
  7696.  
  7697. By the way, Appendix A is created automatically via the command "make 
  7698. lib/elvistrs.msg". This just searches for all messages in any source file, 
  7699. sorts them, and discards any duplicates. I intend to add another appendix some 
  7700. day which describes some of the more subtle messages in detail. 
  7701.  
  7702. 12.3 Argument substitution 
  7703.  
  7704.  After translation, the message text is evaluated using the simpler syntax of 
  7705. the built-in calculator. This basically means that you can use $1 in the 
  7706. message text to indicate where the first argument should appear, $2 for the 
  7707. second argument, and so on. 
  7708.  
  7709. It also means that anything inside of parentheses is evaluated using the full 
  7710. power of the calculator, which has a C-like syntax. The message output by the 
  7711. :file command uses this to calculate the percentage of the way through the 
  7712. file. 
  7713.  
  7714. If you want to output a literal '$', '(', ')', or '\' character as part of the 
  7715. message, you'll need to precede it with a '\' character. 
  7716.  
  7717. 12.4 Bell control 
  7718.  
  7719.  You can force any individual messages to ring the bell by using the "Elvis 
  7720. messages" buffer to translate them into a message which begins with a ^G 
  7721. character. 
  7722.  
  7723. There are also two options which allow you to force the bell to ring for 
  7724. certain message types. If elvis is outputting a MSG_ERROR message, and the 
  7725. errorbells option is set, then elvis will ring the terminal's bell. It will 
  7726. also ring the bell for MSG_WARNING messages if the warningbells option is set. 
  7727.  
  7728. Note that there is also a flash option which instructs elvis to use a visible 
  7729. alternative to the bell, if one is available. 
  7730.  
  7731. 12.5 Displaying the message 
  7732.  
  7733.  Messages are normally displayed at the bottom of the current window. Usually 
  7734. this is exactly what you would expect, but it can be a little counterintuitive 
  7735. when you're creating or closing windows. 
  7736.  
  7737. When you're creating a window, the "current window" is the window where you 
  7738. gave the command which caused the window to be created. So if you're editing 
  7739. "foo.c" and give the command :split bar.c then the information about the 
  7740. "bar.c" file will show up in the window where you're editing "foo.c". The 
  7741. bottom line of the "bar.c" window will be blank. 
  7742.  
  7743. When you're closing a window, elvis chooses some other window to become the new 
  7744. "current window" so that it'll have a place where it can display the messages. 
  7745. You can't always predict which window it will choose. 
  7746.  
  7747. When you close the last window and exit elvis, any messages that elvis wants to 
  7748. output will simply be written to stdout or stderr. Typically, the only message 
  7749. that elvis wants to output when closing will be "wrote foo.c, 1234 lines, 56789 
  7750. characters". 
  7751.  
  7752.  
  7753. ΓòÉΓòÉΓòÉ 1.13. Elvis 2.1 Arithmetic Expressions ΓòÉΓòÉΓòÉ
  7754.  
  7755.  
  7756.  
  7757. 13. ARITHMETIC EXPRESSIONS 
  7758.  
  7759.      13.1 Normal (C-like) Syntax 
  7760.      13.2 Simpler Syntax 
  7761.      13.3 Functions 
  7762.      13.4 EX Commands Which Use Expressions 
  7763.      13.5 VI Commands Which Use Expressions 
  7764.      13.6 Other Uses of Expressions 
  7765.  
  7766.  Elvis can evaluate expressions involving numbers, strings, and boolean values, 
  7767.  using a C-like syntax. These are used in several EX commands, one VI command, 
  7768.  and a couple of other situations. 
  7769.  
  7770.  There are two syntaxes. The normal syntax is extremely similar to C, and is 
  7771.  used in circumstances where you probably would never use a literal value, such 
  7772.  as for the :if command. The simpler syntax makes literal values easier to 
  7773.  enter, while still making the full power of the expression evaluator available 
  7774.  if you need it. 
  7775.  
  7776.  13.1 Normal (C-like) Syntax 
  7777.  
  7778.   The :calculate command uses the normal syntax and displays the results. We'll 
  7779.  use it for most of the examples in this section. 
  7780.  
  7781.  The normal syntax is intended to resemble the syntax of the C programming 
  7782.  language very closely. You can't define your own functions or use flow-control 
  7783.  constructs though; you can only use expressions. In traditional C 
  7784.  documentation, these would be called "rvalues." Basically that means you can 
  7785.  use literal values, option names, operators, parentheses, and some built-in 
  7786.  functions. 
  7787.  
  7788.  13.1.1 Primary expressions 
  7789.  
  7790.  Literals can be given in any of the following formats: 
  7791.  
  7792.  "text" 
  7793.            Any text in double-quotes is taken literally. The usual C escapes 
  7794.            are supported: \b, \E (uppercase, representing the Esc character), 
  7795.            \f, \n, \r, and \t. Also, you can use \\ for a literal backslash 
  7796.            character, or \" for a literal double-quote character within a 
  7797.            string. 
  7798.  \$ 
  7799.  \( 
  7800.  \) 
  7801.  \\ 
  7802.            You can use a backslash to quote a single dollar sign, parenthesis, 
  7803.            or backslash as though it was a string of length 1. This was done 
  7804.            mostly for the benefit of the simpler syntax, where these four 
  7805.            character are normally the only ones which have any special 
  7806.            interpretation. 
  7807.  digits 
  7808.            Any word which contains only digits will be taken as a literal 
  7809.            value. Generally this value will be interpreted as a number, but 
  7810.            internally the expression evaluator always stores values as strings. 
  7811.            Some operators look at their arguments and act differently depending 
  7812.            on whether those strings happen to look like numbers or Boolean 
  7813.            values. 
  7814.  0octaldigits 
  7815.  0xhexdigits 
  7816.  'character' 
  7817.            Octal, hex, and character constants can be used in expressions. 
  7818.            These are converted to decimal when they are parsed, before they are 
  7819.            passed to any operator or function. Passing an octal, hex, or 
  7820.            character constant therefore is exactly like passing the equivalent 
  7821.            decimal number. Elvis supports escapes as character constants: '\0', 
  7822.            '\b', '\E', '\f', '\n', '\r', and '\t'. 
  7823.  true 
  7824.  false 
  7825.            These can be used as Boolean literals. Technically, they are 
  7826.            implemented via options (as described below) named true and false. 
  7827.            All of the boolean operators accept "false", "0", "", or the value 
  7828.            of the false option as Boolean false values, and anything else as a 
  7829.            Boolean true value. 
  7830.  
  7831.  The following examples produce exactly identical results. 
  7832.  
  7833.   :calc "8"
  7834.   8
  7835.   :calc 8
  7836.   8
  7837.   :calc 010
  7838.   8
  7839.   :calc 0x8
  7840.   8
  7841.   :calc '\b'
  7842.   8
  7843.  
  7844.  You can also use option names in elvis the same way you would use variable 
  7845.  names in C. 
  7846.  
  7847.   :calc list
  7848.   false
  7849.   :calc scroll
  7850.   12
  7851.   :calc display
  7852.   normal
  7853.  
  7854.  Additionally, a dollar sign followed by the name of an environment variable is 
  7855.  replaced by the value of that environment variable.  If there is no such 
  7856.  environment variable, then elvis will act as though it exists and has a null 
  7857.  value. 
  7858.  
  7859.  In some circumstances, you can use a dollar sign followed by a digit to access 
  7860.  special arguments. This is used in error messages and also in the values of a 
  7861.  few options, as described in section 13.6. These special arguments can only be 
  7862.  supplied by elvis' internal code, and it only supplies them in a few special 
  7863.  circumstances so you can't use them in :calculate, for example. 
  7864.  
  7865.  13.1.2 Operators 
  7866.  
  7867.  The following operators are available. When passed integer values, these 
  7868.  operators act like their C counterparts. When passed string values, most of 
  7869.  them concatenate their arguments with the operator name in between, but some 
  7870.  of them do something that is useful for strings, as described below. Items at 
  7871.  the top of this list have a higher precedence than those lower down. 
  7872.  
  7873.  (no operator) 
  7874.            Any two expressions placed side-by-side with no operator between 
  7875.            them will be concatenated as strings.  C does this for literal 
  7876.            strings, but elvis does it for anything. 
  7877.  ~ 
  7878.            Perform a bitwise NOT operation on the argument, if it is a number. 
  7879.  ! 
  7880.            Return true if the argument is false and vice versa. 
  7881.  * / % 
  7882.            The usual arithmetic operators.  (% is the modulo operator.) 
  7883.  
  7884.            Also, the / operator can be used to combine a directory name and a 
  7885.            file name, to form an absolute pathname. Here are some examples 
  7886.            showing how this works in DOS: 
  7887.  
  7888.                       :set dir home
  7889.                       directory=C:\temp  home=C:\
  7890.                       :calc dir/"tempfile"
  7891.                       C:\temp\tempfile
  7892.                       :calc home/"elvis.rc"
  7893.                       C:\elvis.rc
  7894.  
  7895.  + - 
  7896.            The usual arithmetic operators. Note that there is no special unary 
  7897.            - sign; the minus sign serves double-duty. Because C normally gives 
  7898.            the unary - sign a higher precedence than other operators and elvis 
  7899.            doesn't, you may occasionally need to enclose negated values in 
  7900.            parentheses to achieve the same effect. 
  7901.  << >> 
  7902.            For integers these operators perform bitwise shifting, exactly like 
  7903.            C. However, if the left argument is a string and the right argument 
  7904.            is a number then elvis will pad or truncate the string to make its 
  7905.            length match the number argument. << pads/truncates on the right, 
  7906.            and >> pads/truncates on the left. 
  7907.  
  7908.                       :calc \[("port" << 6)\]
  7909.                       [port  ]
  7910.                       :calc \[("starboard" >> 6)\]
  7911.                       [rboard]
  7912.  
  7913.  < <= > >= == != 
  7914.            Compare the arguments and return true if the comparison holds, and 
  7915.            false otherwise. If both arguments look like numbers, then they will 
  7916.            be compared as numbers; otherwise they will be compared as strings. 
  7917.  & 
  7918.            Bitwise AND of the arguments, if they're numbers. 
  7919.  ^ 
  7920.            Bitwise XOR of the arguments, if they're numbers. 
  7921.  | 
  7922.            Bitwise OR of the arguments, if they're numbers. 
  7923.  && 
  7924.            Returns false if either argument is one of the four false string 
  7925.            values, and true otherwise. 
  7926.  || 
  7927.            Returns false if both arguments are one of the four false string 
  7928.            values, and true otherwise. 
  7929.  ?: 
  7930.            This one is tricky because internally elvis always uses binary (two 
  7931.            operand) operators. In C this is a ternary operator but in elvis it 
  7932.            is implemented as two binary operators which cooperate in a subtle 
  7933.            way so they seem like a single ternary operator. You probably don't 
  7934.            need to know the details, but the upshot of it all is that 1) It 
  7935.            associates left-to-right (instead of right-to-left as in C), and 2) 
  7936.            The : and third argument are optional; if omitted, then elvis 
  7937.            mentally sticks :"" on the end of the expression. 
  7938.  , 
  7939.            Concatenates two strings, with a comma inserted between them. This 
  7940.            can be handy when you're passing arguments to the quote() and 
  7941.            unquote() functions. 
  7942.  ; 
  7943.            Concatenates two strings without inserting any extra characters. The 
  7944.            result is exactly like (no operator), except that (no operator) has 
  7945.            an extremely high precedence, and ; has an extremely low precedence. 
  7946.  
  7947.                       :calc 1+2 3*4
  7948.                       93
  7949.                       :calc 1+2;3*4
  7950.                       312
  7951.  
  7952.  
  7953.  
  7954.  13.2 Simpler Syntax 
  7955.  
  7956.  In comparison to the normal expression syntax, the simpler syntax makes it 
  7957.  easier to enter literal strings because outside of parentheses the only 
  7958.  special characters are the backslash, dollar sign, and parentheses. (These may 
  7959.  be escaped by preceding them with a backslash.) Inside parentheses, the normal 
  7960.  syntax is used. 
  7961.  
  7962.  The :eval command uses the simpler syntax, and the :echo command displays its 
  7963.  arguments. These commands can be used together to experiment with the simpler 
  7964.  syntax, the same way we used :calculate to experiment with the normal syntax. 
  7965.  
  7966.   :eval echo TERM=$TERM
  7967.   TERM=xterm
  7968.   :eval echo home=(home)
  7969.   home=/home/steve
  7970.   :eval echo 2+2=(2+2)
  7971.   2+2=4
  7972.  
  7973.  
  7974.  13.3 Functions 
  7975.  
  7976.  There are several built-in functions. When you call one of these functions, 
  7977.  there must not be any whitespace between the function name and the following 
  7978.  parenthesis. The built-in functions are: 
  7979.  
  7980.   .------------------.--------------------------------------------.
  7981.   | FUNCTION(ARG)    | RETURN VALUE                               |
  7982.   |------------------|--------------------------------------------|
  7983.   | strlen(string)   | number of characters in the string         |
  7984.   | toupper(string)  | uppercase version of string                |
  7985.   | tolower(string)  | lowercase version of string                |
  7986.   | isnumber(string) | "true" iff string is a decimal number      |
  7987.   | htmlsafe(string) | convert characters from ASCII to HTML      |
  7988.   | hex(number)      | string of hex digits representing number   |
  7989.   | octal(number)    | string of octal digits representing number |
  7990.   | char(number)     | convert number to 1 ASCII char, as a string|
  7991.   | quote(list,str)  | insert backslashes before chars in list    |
  7992.   | unquote(list,str)| remove backslashes before chars in list    |
  7993.   | exists(file)     | "true" iff file exists                     |
  7994.   | dirperm(file)    | string indicating file attributes          |
  7995.   | dirfile(file)    | filename.ext part of a path                |
  7996.   | dirname(file)    | directory part of a pathname               |
  7997.   | dirdir(file)     | directory, like dirname(file)              |
  7998.   | dirext(file)     | extension (including the . )               |
  7999.   | basename(file)   | filename without extension                 |
  8000.   | fileeol(file)    | newline style of the file                  |
  8001.   | absolute(file)   | return a full path-name for a given file   |
  8002.   | getcwd()         | return the current working directory name  |
  8003.   | elvispath(file)  | locate a file in elvis' configuration path |
  8004.   | knownsyntax(file)| language of a file if in elvis.syn, else ""|
  8005.   | buffer(bufname)  | "true" iff buffer exists                   |
  8006.   | alias(name)      | "true" iff an alias exists with that name  |
  8007.   | current(item)    | value indicating an aspect of elvis' state |
  8008.   | feature(name)    | "true" iff a given feature is supported    |
  8009.   ^------------------^--------------------------------------------^
  8010.            (Note: "iff" is short for "if and only if")
  8011.  Some of these deserve further comment. 
  8012.  
  8013.  The isnumber() function uses the same test that the operators use when 
  8014.  deciding whether to use the string version or the number version of their 
  8015.  behavior. You can use isnumber() to predict how operators will behave. 
  8016.  
  8017.  The hex() and octal() functions return strings which look like C-style hex or 
  8018.  octal constants, respectively. The isnumber() function will return false when 
  8019.  passed one of these strings; they are no longer considered to be numbers. In 
  8020.  fact, the only reason you can use hex and octal literals is because they are 
  8021.  converted into decimal strings by the parser, before evaluation even begins. 
  8022.  The following example demonstrates that hex literals are converted to decimal, 
  8023.  and that the value returned by hex() is something else. 
  8024.  
  8025.   :calc strlen(0xff)
  8026.   3
  8027.   :calc strlen(hex(255))
  8028.   4
  8029.  
  8030.  The char() function returns a one-character string; that character's decimal 
  8031.  value will be the argument number. For example, "char(65)" returns "A". Note 
  8032.  that the returned value does not look quite like a character constant. 
  8033.  
  8034.  The quote() and unquote() functions add and remove backslashes before special 
  8035.  characters.  The backslash character itself is always considered to be 
  8036.  "special," so backslashes are converted to double-backslashes and vice versa. 
  8037.  In the argument, any characters which precede the first comma are used as a 
  8038.  list of other special characters, and the remainder of the argument is the 
  8039.  string to be quoted/unquoted. For example... 
  8040.  
  8041.   :set t="/* regexp */"
  8042.   :set r="*^$/.["
  8043.   :eval /(quote(r, t))/
  8044.  ... will search for the next instance of of the literal string "/* regexp */". 
  8045.  The '/' and '*' characters won't be treated as metacharacters in the regular 
  8046.  expression, because the quote() function inserts backslashes before them. 
  8047.  Also, notice that the comma operator concatenates two strings and inserts a 
  8048.  comma between them.  That's handy! 
  8049.  
  8050.  The dirperm() function returns one of the following strings to indicate the 
  8051.  file's type and permissions: 
  8052.  
  8053.  "invalid" 
  8054.            The argument is malformed; it could not possibly be a valid file 
  8055.            name. 
  8056.  "badpath" 
  8057.            The argument is a pathname, and one or more of the directories named 
  8058.            in that pathname either doesn't exist or is something other than a 
  8059.            directory. 
  8060.  "notfile" 
  8061.            The argument is the name of something other than a file; for 
  8062.            example, it may be a directory. 
  8063.  "new" 
  8064.            There is no file, directory, or anything else with the given name. 
  8065.  "unreadable" 
  8066.            The file exists but you don't have permission to read it. 
  8067.  "readonly" 
  8068.            The file exists and you can read it, but you don't have permission 
  8069.            to write to it. 
  8070.  "readwrite" 
  8071.            The file exists and you can read or write it. 
  8072.  
  8073.  The fileeol() function opens the file in binary mode, reads the first hundred 
  8074.  bytes, and inspects those bytes to make a guess about the file's newline 
  8075.  format. It is commonly used for setting the readeol option. fileeol() returns 
  8076.  one of the following strings: 
  8077.  
  8078.  "unix" 
  8079.            It appears to be a text file which uses Line Feed characters for 
  8080.            newlines. 
  8081.  "dos" 
  8082.            It appears to be a text file which uses Carriage Return/Line Feed 
  8083.            pairs for newlines. 
  8084.  "mac" 
  8085.            It appears to be a text file which uses Carriage Return characters 
  8086.            for newlines. 
  8087.  "binary" 
  8088.            It appears to be a binary file. 
  8089.  "text" 
  8090.            Anything else; e.g., a non-existent file or empty file. 
  8091.  
  8092.  The elvispath() function searches through the directories listed in the 
  8093.  elvispath option's value, looking for the argument file name. If it is found, 
  8094.  then the full pathname of the file is returned; otherwise it returns a null 
  8095.  string. 
  8096.  
  8097.  The absolute() function attempts to construct a full pathname for a given file 
  8098.  name.  If the given file name is actually a URL, or if it is already a full 
  8099.  pathname, then this function returns it unchanged. Otherwise it combines the 
  8100.  getcwd() value with the given name. 
  8101.  
  8102.  The knownsyntax() function determines whether the given file can be displayed 
  8103.  in the syntax display mode. It does this by looking for the file name 
  8104.  extension in the elvis.syn configuration file. If the file's extension is 
  8105.  listed there, then this function returns the name of the language. Otherwise, 
  8106.  it just returns an empty string. 
  8107.  
  8108.  The current() function examines elvis' internal variables, and returns a 
  8109.  string indicating the value of one of them. The argument determines which 
  8110.  variable is examined, as follows: 
  8111.  
  8112.  current("line") 
  8113.            Current line number. 
  8114.  current("column") 
  8115.            Current column number. 
  8116.  current("word") 
  8117.            The word at the cursor location. If the cursor isn't on a word, then 
  8118.            this returns an empty string. 
  8119.  current("tag") 
  8120.            If the showtag option is true, then this returns the name of the tag 
  8121.            that is defined at the cursor location, or the nearest one before 
  8122.            it.  If the showtag option is false, or the cursor is located above 
  8123.            the first tag defined in this file, then current("tag") will return 
  8124.            an empty string. 
  8125.  current("mode") 
  8126.            Current key parsing mode. This returns the same string that the 
  8127.            showmode option displays, except that this function converts it to 
  8128.            all lowercase, and strips out whitespace. The usual return values 
  8129.            are "command", "input", and "replace". If the window isn't editing 
  8130.            the its main buffer (i.e., if you're entering an ex command line, 
  8131.            regular expression, or filter command) then this function will 
  8132.            return an empty string. 
  8133.  current("selection") 
  8134.            Visible selection type. This returns one of "character", 
  8135.            "rectangle", or "line" to indicate the type of visible selection 
  8136.            which is currently marked in the window, or an empty string if no 
  8137.            visible selection is marked. 
  8138.  current("next") 
  8139.            Next file. This returns the name of the file that the :next command 
  8140.            would load, or an empty string if you're at the end of the args 
  8141.            list. 
  8142.  current("previous") 
  8143.            Previous file. This returns the name of the file that the :previous 
  8144.            command would load, or an empty string if you're at the start of the 
  8145.            args list. 
  8146.  current("tagstack") 
  8147.            If the window's tag stack is empty, this returns "". Otherwise it 
  8148.            returns the name of the buffer to which :pop would move the cursor. 
  8149.  
  8150.  The feature() function is intended to allow you to write EX scripts which work 
  8151.  with different configurations of elvis. For example, you can compile elvis 
  8152.  without support for the hex display mode; if you do that, then feature("hex") 
  8153.  will return false. Currently feature() returns true for all supported display 
  8154.  modes, network protocols, and maybe "showtag" and "lpr"; it returns false for 
  8155.  anything else. As new features are added to future versions of elvis, I expect 
  8156.  to add them to feature()'s list. 
  8157.  
  8158.  13.4 EX Commands Which Use Expressions 
  8159.  
  8160.  The :calculate command evaluates its argument using the normal syntax, and 
  8161.  displays the result. 
  8162.  
  8163.  The :if command evaluates its argument using the normal syntax. If the 
  8164.  resulting value is any Boolean true value then a flag is set; otherwise the 
  8165.  flag is reset. After that, you can use :then and :else commands to 
  8166.  conditionally execute some commands, depending on the state of that flag. 
  8167.  
  8168.  The :eval command evaluates its arguments using the simpler syntax. The 
  8169.  resulting string value is then interpreted as an EX command line. This gives 
  8170.  you a way to use the expression evaluator with commands which otherwise 
  8171.  wouldn't evaluate expressions. 
  8172.  
  8173.  The :let command allows you to change the values of options. Its syntax is 
  8174.  ":let option=expression", where expression is any expression using the normal 
  8175.  syntax. You can use this to change the value of any unlocked option, similarly 
  8176.  to :set. 
  8177.  
  8178.   :set i=14
  8179.   :calc i
  8180.   14
  8181.   :let i=i+1
  8182.   :set i?
  8183.   i=15
  8184.   :eval set i=(i*2)
  8185.   :calc i
  8186.   30
  8187.  
  8188.   :let elvispath="."
  8189.   :let list="false"
  8190.   :let sidescroll=0x10
  8191.  
  8192.  
  8193.  13.5 VI Commands Which Use Expressions 
  8194.  
  8195.  There is only one way to use expressions in a visual command: Move the cursor 
  8196.  to the start of some expression in your edit buffer, hit the lowercase v key, 
  8197.  move to the other end, and then hit the = key. Elvis will then evaluate the 
  8198.  highlighted expression, and replace the original expression with the result. 
  8199.  
  8200.  Note that the = operator only works this way when used with the v command for 
  8201.  marking characters. If you visibly mark lines, or use the traditional 
  8202.  =movement syntax, then elvis will send the selected lines though the external 
  8203.  filter program named in the equalprg option. 
  8204.  
  8205.  The # command doesn't use expressions, but it does perform some simple math. 
  8206.  
  8207.  13.6 Other Uses of Expressions 
  8208.  
  8209.  
  8210.  
  8211.  13.6.1 Messages 
  8212.  
  8213.  All of elvis' warning and error messages are actually expressions, using the 
  8214.  simpler syntax. When outputting a message, elvis may supply other parameters 
  8215.  which are accessible as $1 through $9. See the Messages chapter for a longer 
  8216.  description of how elvis handles messages. 
  8217.  
  8218.  13.6.2 Options 
  8219.  
  8220.  The ccprg and makeprg options' values are expressions, using the simpler 
  8221.  syntax. When evaluating these expressions, $1 is replaced by whatever 
  8222.  arguments are supplied on the ex command line, and $2 is replaced by the the 
  8223.  name of the file being edited. 
  8224.  
  8225.  13.6.3 File Names 
  8226.  
  8227.  File names are evaluated as expressions (using the simpler syntax), primarily 
  8228.  as a means for expanding environment variable names. This is done prior to 
  8229.  wildcard expansion. 
  8230.  
  8231.  The full power of the expression evaluator is available; you can use it to do 
  8232.  more than just expand environment variable names. For example, you could store 
  8233.  the name of a file in one of the user options, and then later use that option 
  8234.  name in parentheses wherever a filename was expected. 
  8235.  
  8236.   :set f=myfile.txt
  8237.   :w (f)
  8238.   wrote myfile.txt, ...
  8239.  
  8240.  If you use this trick, remember that it only works when elvis is expecting a 
  8241.  file name. It won't work when invoking external programs, because elvis 
  8242.  doesn't know which program arguments are supposed to be file names. Elvis 
  8243.  always passes program arguments literally. 
  8244.  
  8245.  Recall that when a backslash character is followed by an alphanumeric 
  8246.  character, both the backslash and the alphanumeric character become part of 
  8247.  the resulting value. This was done mostly for the benefit of file names. If 
  8248.  the backslash was always dropped then MS-DOS users would have a heck of a time 
  8249.  entering pathnames of files! By making the backslash a little smarter, we 
  8250.  avoid that problem. 
  8251.  
  8252.   :eval echo c:\tmp \(notice the backslashes\)
  8253.   c:\tmp (notice the backslashes)
  8254.  
  8255.  To simplify the task of writing portable ex scripts, the behavior of the / 
  8256.  operator has been extended. When one or both of its arguments are strings, it 
  8257.  concatenates them as a directory name and a file name, yielding a full 
  8258.  pathname. 
  8259.  
  8260.  
  8261. ΓòÉΓòÉΓòÉ 1.14. Elvis 2.1 Tags ΓòÉΓòÉΓòÉ
  8262.  
  8263.  
  8264.  
  8265. 14. Tags 
  8266.  
  8267.  Tags provide a fast way to locate specific points in a collection of files. 
  8268. This is done by storing a list of tag names, and their corresponding locations, 
  8269. in a file named "tags". This is particularly handy for programmers who are 
  8270. working on large projects. 
  8271.  
  8272. Traditionally, each tag has three attributes: its name (generally the name of a 
  8273. function, or some other symbol from your program), the name of the source code 
  8274. file in which that function is defined, and the address of its line within that 
  8275. file. The tag name is used for selecting a particular tag. 
  8276.  
  8277. Elvis supports more a more sophisticated model. The extensions are intended to 
  8278. allow elvis to handle C++, and similar languages, which allow different 
  8279. functions to have the same name. Since tag names are derived from function 
  8280. names, the tag name alone isn't sufficient to select a single tag. Elvis 
  8281. permits tags to have other attributes, which help it select the correct tag. 
  8282.  
  8283. All of this is described in more detail below, in the following sections: 
  8284.  
  8285.      14.1 The tags file 
  8286.      14.2 Creating a tags file 
  8287.      14.3 Reading the tags file 
  8288.      14.4 Using tags with elvis 
  8289.      14.5 The TAGPATH 
  8290.      14.6 Enhanced tags 
  8291.      14.5 Restrictions and hints 
  8292.      14.6 History 
  8293.      14.7 Browsing 
  8294.      14.8 The tagprg and tagprgonce options 
  8295.  
  8296.  
  8297.  14.1 The tags file 
  8298.  
  8299.   Tags are stored in a file named "tags". It is a plain ASCII text file. Each 
  8300.  line of the file contains the attributes of a single tag. A tab character is 
  8301.  used to delimit the attributes. The traditional tags file contains three 
  8302.  attributes for each tag. 
  8303.  
  8304.  The first attribute is the tag's name. It is typically the name of a function, 
  8305.  variable,  or data type -- a name that you could guess by looking at the 
  8306.  source code of your project. Traditionally, this attribute has been the sole 
  8307.  means for selecting a tag, so tag names should ideally be unique. The lines of 
  8308.  the tags file are sorted by this attribute. 
  8309.  
  8310.  The second attribute is the name of source code file in which the 
  8311.  corresponding function (or whatever) is defined. If it isn't an absolute file 
  8312.  name (relative to the root directory) then it should be relative to the 
  8313.  directory where the tags file resides -- which isn't necessarily the current 
  8314.  working directory. 
  8315.  
  8316.  The third attribute is the address of the line within that file, where the 
  8317.  function (or whatever) is defined. This address can either be a line number, 
  8318.  or a nomagic style of regular expression. If it is a regular expression, it 
  8319.  must be bound by '/' or '?' characters, and it may contain tab characters. 
  8320.  Typically, the entire source line is encoded as a regular expression by 
  8321.  inserting "/^" onto the front, appending "$/" onto the end, and inserting a 
  8322.  backslash character before each / or \ character within the line. 
  8323.  
  8324.  Elvis actually supports a superset of this format (by permitting extra 
  8325.  attributes) but we'll start with the basics. 
  8326.  
  8327.  14.2 Creating a tags file 
  8328.  
  8329.   Usually the tags file is created automatically by a program such as ctags. It 
  8330.  reads a collection of C or C++ source files, and generates tags for each 
  8331.  global function. It can also generate tags for global types and variables, or 
  8332.  for static instances of any of these. 
  8333.  
  8334.  You will usually invoke ctags on all source files in the current directory via 
  8335.  a command similar to this: 
  8336.  
  8337.   ctags *.c *.h
  8338.  
  8339.  The ctags program can also generate other types of output. Be sure to look at 
  8340.  its manual page to see the options. 
  8341.  
  8342.  14.3 Reading the tags file 
  8343.  
  8344.   Tags exist mostly for use with elvis, but for the sake of simplicity we'll 
  8345.  start with the ref program. 
  8346.  
  8347.  ref selects tags just like elvis, and then displays information about them. 
  8348.  The simplest way to use it is to pass it the name of the tag you're interested 
  8349.  in. The following example would display the definition of the "main" function: 
  8350.  
  8351.   ref main
  8352.  
  8353.  There are some other options. One of the most useful is -a which instructs ref 
  8354.  to display all selected tags. (Without -a it just displays one of the selected 
  8355.  tags.) For example, if your current directory contains many programs, each 
  8356.  with its own "main" function, then this would display the headers for all of 
  8357.  them: 
  8358.  
  8359.   ref -a main
  8360.  
  8361.  You can also use ref to generate an HTML document listing all tags, or just 
  8362.  the ones that match some criteria. Here's an example which lists all tags as 
  8363.  an HTML document: 
  8364.  
  8365.   ref -ha >tags.html
  8366.  
  8367.  ref uses the same syntax for restrictions and sorting hints as elvis' :tag 
  8368.  command. This syntax will be described later. You should check the manual page 
  8369.  for a list of options. 
  8370.  
  8371.  14.4 Using tags with elvis 
  8372.  
  8373.   When starting elvis, you can use the -ttagname flag to start with the cursor 
  8374.  at the definition point of a given function in your program's source code. It 
  8375.  automatically performs the following steps: 
  8376.  
  8377.    1. Scan the tags file for a tag named tagname. 
  8378.    2. Load the file indicated by the tag's second attribute. 
  8379.    3. Search for the line indicated by the tag's third attribute. 
  8380.    4. Within that line, search for the tag name. 
  8381.    5. Move the cursor there. 
  8382.  
  8383.  Once elvis is running, there are many commands available which deal with tags. 
  8384.  The most essential is :tag tagname. It does all the same steps as the 
  8385.  -ttagname command-line flag, plus it saves the cursor's original position on a 
  8386.  stack. Later, you can use :pop to bring the cursor back to its original 
  8387.  position. 
  8388.  
  8389.  When elvis is in visual command mode, you can move the cursor onto a word and 
  8390.  hit ^] to perform a :tag search on that current word, or ^T to perform a :pop 
  8391.  command. 
  8392.  
  8393.  If you have a mouse, then you can use the left button to double-click on a 
  8394.  word in the text, to have elvis perform a :tag search on that word. 
  8395.  Double-clicking the right button anywhere in the text will perform a :pop 
  8396.  command. 
  8397.  
  8398.  The uppercase K command runs program on the word at the cursor position. The 
  8399.  program is chosen by setting the keywordprg option. By default, it runs the 
  8400.  ref program, so the word's definition is displayed temporarily at the bottom 
  8401.  of the screen. 
  8402.  
  8403.  14.5 The TAGPATH 
  8404.  
  8405.   You can have tags files in several directories, and configure ref and elvis 
  8406.  to search the appropriate ones by setting the TAGPATH environment variable. 
  8407.  The value of TAGPATH is a list of directories or tags files, delimited by 
  8408.  either a ':' character (for UNIX) or a ';' character (for most other operating 
  8409.  systems, including Microsoft's). 
  8410.  
  8411.  In a typical large project, you will have some directories which contain 
  8412.  library functions, and some which contain the code for specific programs. With 
  8413.  this arrangement, you would set TAGPATH to search the current directory 
  8414.  followed by each of the library directories. Something like this... 
  8415.  
  8416.   setenv TAGPATH=tags:/usr/src/libproj/tags:/usr/src/libio/tags
  8417.  
  8418.  The exact syntax depends on your command interpreter. And of course the exact 
  8419.  directory names will depend on your project. 
  8420.  
  8421.  When your current directory is one which contains the source code for some 
  8422.  program, and you do a search for (as an example) "showitem", elvis would look 
  8423.  for it first in that program's tags file, and if it isn't found there then 
  8424.  it'll look in each library's tags files until it does find it. The ref program 
  8425.  searches the same way. 
  8426.  
  8427.  Actually, elvis uses an option named tags to store the search path. The 
  8428.  default value of that option is taken from the TAGPATH environment variable, 
  8429.  though. If you don't set TAGPATH (or the tags option), then elvis will search 
  8430.  only in the current directory. 
  8431.  
  8432.  The default path for ref is a little more sophisticated. That's because ref is 
  8433.  intended to be general reference utility for all library functions, while 
  8434.  elvis' tags facility is mostly intended for navigating through the source code 
  8435.  of a single program. 
  8436.  
  8437.  Note to system administrators: ref can be so handy that I suggest you make a 
  8438.  tags file for the functions in your system's standard libraries. If licensing 
  8439.  restrictions prevent you from making the library source code available to all 
  8440.  users, then you should use ctags -r to generate a "refs" file. If you don't 
  8441.  have access to the library source code yourself, then perhaps you can make 
  8442.  something useful from the lint libraries. 
  8443.  
  8444.  14.6 Enhanced tags 
  8445.  
  8446.   The C++ programming language supports "overloading," which means that 
  8447.  different functions can have the same name. Since tag names are derived from 
  8448.  function names, different tags will have the same name. This creates a problem 
  8449.  because the tag name has traditionally been the only way to select a tag, so 
  8450.  you could easily get the wrong one. Elvis' implementation of tags has some 
  8451.  extra features to solve this problem. 
  8452.  
  8453.  There are two tactics for solving the problem. The first tactic is to be more 
  8454.  selective; i.e., use information other than just the tag name to select tags. 
  8455.  This definitely helps, but it is an absolute impossibility to resolve all such 
  8456.  ambiguities prior to run-time, so we also need a second tactic: collect all 
  8457.  possible tags into a list, and use heuristics or explicit hints from the user 
  8458.  to sort the list so the most likely alternative is tried first, the second 
  8459.  most likely if the first was rejected, and so on down the list. Elvis uses 
  8460.  both tactics. 
  8461.  
  8462.  In the tags file, elvis permits tags to have extra attributes. Each attribute 
  8463.  has a name and a value. The first three fields are named tagname, tagfile and 
  8464.  tagaddress. Those names are implicit; the names don't appear in the tags file, 
  8465.  only the values do. 
  8466.  
  8467.  If a tag has any extra attributes, they will be appended to the tag line. In 
  8468.  order to allow the original vi/ex to read tags files which have additional 
  8469.  attributes, a semicolon-doublequote character pair is appended to the 
  8470.  tagaddress, before the first extra attribute. Due to an undocumented quirk of 
  8471.  the original vi/ex, this will cause vi/ex to ignore the remainder of the line. 
  8472.  The extra attributes will not adversely affect the behavior of the original 
  8473.  vi/ex. 
  8474.  
  8475.  The extra attributes have explicit names. In the tags file, the extra 
  8476.  attributes are generally given in the form <TAB>name:value. Different tags may 
  8477.  have different extra attributes; many will have no extra attributes at all. 
  8478.  The attributes may appear in a different sequence for each tag. 
  8479.  
  8480.  In a single tags file, elvis supports up to 10 distinct attribute names -- the 
  8481.  3 implicit names for the standard fields, plus up to 7 explicit names for 
  8482.  extra attributes. (This is a limitation of elvis, not the enhanced tag 
  8483.  format.) 
  8484.  
  8485.  The name can be any series of letters or digits. Lowercase letters are 
  8486.  preferred. 
  8487.  
  8488.  The value can contain any character except NUL. Any backslash, tab, or newline 
  8489.  characters should be stored as \\, \t, or \n, respectively. 
  8490.  
  8491.  If an extra attribute has a value but no name or colon, then the name is 
  8492.  understood to be "kind". 
  8493.  
  8494.  The extra attributes are intended to describe the contexts in which the 
  8495.  corresponding program symbol can appear. Typically the name is a type of 
  8496.  lexical scope, and the value is the name of that scope; e.g., "function:init" 
  8497.  for a tag which is only defined inside the init() function. Elvis can use 
  8498.  these as hints to figure out which tags might make sense in the current 
  8499.  context, and ignore those that don't. Although the extra attributes have no 
  8500.  preset names, the following names are recommended: 
  8501.  
  8502.  kind 
  8503.            The value is a single letter which indicates the lexical type of the 
  8504.            tag. It can be "f" for a function, "v" for a variable, and so on. 
  8505.  
  8506.            Note that since the default attribute name is kind, a solitary 
  8507.            letter can denote the tag's type (e.g, "f" for a function). 
  8508.  file 
  8509.            For tags which are "static", i.e., local to the file. The value 
  8510.            should be the name of the file. 
  8511.  
  8512.            If the value is given as an empty string (just "file:"), then it is 
  8513.            understood to be the same as the tagfile field; this special case 
  8514.            was added partly for the sake of compactness, and partly to provide 
  8515.            an easy way handle tags files that aren't in the current directory. 
  8516.            The value of the tagfile field always relative to the directory in 
  8517.            which the tags file itself resides. 
  8518.  function 
  8519.            For local variables. The value is the name of function in which 
  8520.            they're defined. 
  8521.  struct 
  8522.            For fields in a struct. The value is the name of the struc. If it 
  8523.            has no name (not even a typedef) then struct:struct is better than 
  8524.            nothing. 
  8525.  enum 
  8526.            For values in an enum data type. The value is the name of the enum 
  8527.            type. If it has no name (not even a typedef) then enum:enum is 
  8528.            better than nothing. 
  8529.  class 
  8530.            For member functions and variables. The value is the name of the 
  8531.            class. 
  8532.  scope 
  8533.            Intended mostly for class member functions. It will usually be 
  8534.            "private" for private members, or omitted for public members, so 
  8535.            users can restrict tag searches to only public members. 
  8536.  arity 
  8537.            For functions.  The number of arguments. 
  8538.  
  8539.  The ctags program has been hacked slightly to support some of these, but not 
  8540.  all. Its new -h flag enables generation of the extra hint attributes; if you 
  8541.  invoke ctags without any flags, then -h is one of the flags that it uses by 
  8542.  default. For example, the usual command for generating tags for all source 
  8543.  files in the current directory is... 
  8544.  
  8545.   ctags *.c *.cpp *.h
  8546.  
  8547.  The current hacked-up ctags distributed with elvis will only generate file and 
  8548.  class hints, and even class isn't as effective as one might hope. 
  8549.  
  8550.  Some pseudo-tags may be inserted at the top of the tags file, to describe the 
  8551.  characteristics of that particular tags file. These tags all begin with a "!_" 
  8552.  so that even if the tags are sorted, the pseudo-tags will always appear at the 
  8553.  top of the file. The pseudo-tags all use the old tags format, so they can be 
  8554.  parsed (and then ignored) by older tag reading programs. 
  8555.  
  8556.   !_TAG_FILE_FORMAT       2       /supported features/
  8557.   !_TAG_FILE_SORTED       1       /0=unsorted, 1=sorted/
  8558.  The !_TAG_FILE_FORMAT pseudo-tag's tagfile field is 2 for new-style tags, or 1 
  8559.  for old-style tags. The !_TAG_FILE_SORTED pseudo-tag's tagfile field is 1 if 
  8560.  sorted, or 0 if unsorted. The tagaddress field is used simply as a comment in 
  8561.  both tags. If these tags are missing from a tags file, then the file is 
  8562.  assumed to be in the new format (which is still backwards compatible with the 
  8563.  old format), and sorted.  If a tags file is unsorted then it must contain a 
  8564.  !_TAG_FILE_SORTED field indicating that. 
  8565.  
  8566.  These may be followed by more pseudo-tags describing the ctags program itself. 
  8567.  Elvis' version of ctags produces the following information: 
  8568.  
  8569.   !_TAG_PROGRAM_AUTHOR    Steve Kirkendall        /kirkenda@cs.pdx.edu/
  8570.   !_TAG_PROGRAM_NAME      Elvis Ctags     //
  8571.   !_TAG_PROGRAM_URL       ftp://ftp.cs.pdx.edu/pub/elvis/README.html  //
  8572.   !_TAG_PROGRAM_VERSION   2.1     //
  8573.  
  8574.  The new tags file format also addresses another limitation of the old format: 
  8575.  the old format allows fields to be delimited with any whitespace. This is a 
  8576.  problem because space characters are becoming more common in file names these 
  8577.  days, so we occasionally need to put spaces into the tagfile field. To support 
  8578.  this, the new format dictates that fields must be delimited by a single tab 
  8579.  character, not spaces. This shouldn't cause any backward compatibility 
  8580.  problems because traditionally ctags has always used tab as the delimiter. 
  8581.  
  8582.  Also, the interpretation of the tagaddress field has been refined. 
  8583.  Traditionally, it has been defined as either a line number or a nomagic 
  8584.  regular expression, but it has actually been implemented in vi/ex to support 
  8585.  any ex command there. Supporting any command could produce a security hole, so 
  8586.  the new format only supports addresses. It supports more complex addresses 
  8587.  though, because they can be useful in some circumstances. For example, the tag 
  8588.  line for a "val" field in a struct named "item_s" could look like... 
  8589.  
  8590.   val     file.h  /^struct item_s {$/;/^  int val;$/   struct:item_s
  8591.  ... which would allow the editor to skip past any "int val;" definitions in 
  8592.  other structs, to find the correct "int val;" in the item_s struct. 
  8593.  
  8594.  This form of tags file is also supported by Darren Hiebert's Exuberant ctags 
  8595.  and by Vim, in addition to elvis. 
  8596.  
  8597.  If you ever need to convert a new-style tags file back to the old style, you 
  8598.  can do so via the ref utility. Run it like this: 
  8599.  
  8600.           ref -ta >oldtags
  8601.  
  8602.  
  8603.  14.5 Restrictions and hints 
  8604.  
  8605.   The syntax of the :tag command has been extended. Previously you could only 
  8606.  supply a single tagname value to search for. Now you can supply multiple 
  8607.  acceptable values for any attribute, and control what happens when a given tag 
  8608.  lacks a given attribute. 
  8609.  
  8610.  The arguments of the :tag command are now whitespace-delimited expressions of 
  8611.  the following forms, to define a set of restrictions that possible tags must 
  8612.  meet to be selected: 
  8613.  
  8614.  name:value 
  8615.            Reject tags which have an attribute named "name", but that 
  8616.            attribute's value isn't in the list of acceptable values. E.g., 
  8617.            "file:foo.c" accepts global tags, or tags which are static to the 
  8618.            file "foo.c", but rejects tags which are static to other files. 
  8619.  name:=value 
  8620.            Reject tags which have an attribute named "name" attribute, but that 
  8621.            attribute's value isn't in the list of acceptable values. Also 
  8622.            reject tags which don't have a "name" attribute. E.g., "class:=Foo" 
  8623.            only accepts tags which have class "Foo". 
  8624.  name:/value 
  8625.            Like name:value except that when a tag has no attribute named name 
  8626.            then the tagaddress attribute's value is required to contain value 
  8627.            as a substring. "class:/Foo" would find tags in class "Foo" PLUS 
  8628.            global tags whose address mentions "Foo" -- probably friends of the 
  8629.            Foo class. 
  8630.  value 
  8631.            Short for tagname:value. 
  8632.  
  8633.  The parser also allows you to add some sorting hints to the command line. 
  8634.  These hints are added to the history that elvis uses to guess which overloaded 
  8635.  tag to list first. 
  8636.  
  8637.  name:+value 
  8638.            If a tag has an attribute with the given name and value, then cause 
  8639.            it to appear near the beginning of the sorted list. I.e., tags with 
  8640.            this name and value are more likely to be the intended tag, but you 
  8641.            can't be certain. 
  8642.  name:-value 
  8643.            If a tag has an attribute with the given name and value, then cause 
  8644.            it to appear near the end of the sorted list. I.e., tags with this 
  8645.            name and value are less likely to be the intended tag, but you can't 
  8646.            be certain. 
  8647.  
  8648.  All of these restriction expressions and the sorting hint expressions allow 
  8649.  you to give multiple acceptable values. You can either give each value in a 
  8650.  separate expression, or give a comma-delimited list of values to a single 
  8651.  expression. 
  8652.  
  8653.  A nul value string matches anything. So "struct:=" would accept any tag with a 
  8654.  "struct" attribute, and reject those without it. This would be handy when 
  8655.  you're trying to do tag lookup for a word which follows a '.' character -- you 
  8656.  know it is a field name, but you don't know which struct type. 
  8657.  
  8658.  The :tag command automatically adds a file:filename restriction (where 
  8659.  filename is the name of the file being edited in the current window) to any 
  8660.  tag search you request. This causes it to ignore tags which are static to 
  8661.  other files. The :browse command doesn't do that. See the Browsing section, 
  8662.  below. 
  8663.  
  8664.  14.6 History 
  8665.  
  8666.   The sorting hints are persistent. They aren't forgotten immediately after a 
  8667.  tag search; a hint from one search will influence the sorting order for 
  8668.  following searches. The degree of influence is weighted, so more recent hints 
  8669.  will have more influence than older hints. Eventually, each hint's weighting 
  8670.  factor drops to zero, and the hint is forgotten only then. The history uses 
  8671.  two lists of name/value pairs: one for storing recent successes, and one for 
  8672.  recent failures. 
  8673.  
  8674.  While searching for a tag, elvis builds a list of tags which matched the 
  8675.  restrictions. That list is sorted primarily by the tagname attribute's value, 
  8676.  but when multiple tags have the same name, elvis looks for the attributes of 
  8677.  those tags in the lists of successes and failures, and uses the weights of any 
  8678.  matches to compute the likelyhood that a particular tag is the one that the 
  8679.  user really wants. The more likely tags are inserted into the list before any 
  8680.  less likely tags with the same name. 
  8681.  
  8682.  Expressions of the form name:+value add a name/value pair to the success list, 
  8683.  and expressions of the form name:-value add a name/value to the failure list. 
  8684.  Name/value pairs are also added automatically in the following circumstances: 
  8685.  
  8686.      If you perform a tag search on the same name twice in a row, then elvis 
  8687.       assumes you're rejecting the first tag that it found. The attributes of 
  8688.       that tag are added to the failure list. 
  8689.      If you perform a tag search on a different name, then elvis assumes that 
  8690.       the previous tag must have been the right one, so its attributes are 
  8691.       added to the success list. 
  8692.  
  8693.  It should be stressed that the tag history has no effect on which tags are 
  8694.  selected from the tags file. It only affects the order in which they're 
  8695.  presented, if more than one tag meets your restrictions. 
  8696.  
  8697.  14.7 Browsing 
  8698.  
  8699.   The result of any tag search is always a list of matching tags. The :tag 
  8700.  command keeps this list hidden, and moves the cursor to the single most likely 
  8701.  member of that list. This is not always the best way to select a tag. 
  8702.  
  8703.  Elvis has a :browse command which performs a tag search, and then builds an 
  8704.  HTML document from the list. The document shows all tags which matched your 
  8705.  search criteria; the current window will then switch to this document. There 
  8706.  is also a :sbrowse command which displays the same document in a new window. 
  8707.  
  8708.  The arguments to :browse differ from :tag in the following ways: 
  8709.  
  8710.      :browse does not automatically add any restrictions. (:tag adds 
  8711.       file:filename to each search.) 
  8712.      If you invoke :browse with no arguments, then it will assume you wanted 
  8713.       tagfile:filename, where filename is the name of the file being edited in 
  8714.       the current window. 
  8715.      If you invoke :browse with a single argument, elvis first tries to 
  8716.       interpret it as a restriction or sorting hint in the normal way. But that 
  8717.       search yields no tags, elvis may retry the search using your argument as 
  8718.       a file name (tagfile:argument), or as a class name (class:/argument). 
  8719.  
  8720.  By default, :browse only searches through the "tags" file in the current 
  8721.  directory.  When invoked as :browse! (with a "!" suffix) it collects matching 
  8722.  tags from all "tags" files as specified by the tags option. 
  8723.  
  8724.  Here are some examples of :browse commands. 
  8725.  
  8726.  :browse term 
  8727.            Show all tags named "term" 
  8728.  :browse 
  8729.            Show all tags defined in the current file. 
  8730.  :browse foo.c 
  8731.            Show all tags defined in the file "foo.c". 
  8732.  :browse tagname:= 
  8733.            Show all tags which have a tagname attribute. Since all tags have a 
  8734.            tagname attribute, this shows every tag in the tags file. 
  8735.  :browse class:/DbItem 
  8736.            Show all tags in the DbItem class, or friend functions of that 
  8737.            class. It may also include some non-friend functions which merely 
  8738.            use DbItem, but there's no easy way to avoid that. 
  8739.  :browse DbItem 
  8740.            If there is a tag named DbItem, then show it. Otherwise this is the 
  8741.            same as :browse class:/DbItem 
  8742.  
  8743.  Each matching tag in the generated document has a hypertext link to the point 
  8744.  in your source where the corresponding symbol is defined. By following the 
  8745.  hypertext link, you can go directly to the appropriate point in your source 
  8746.  code. As usual, the tag stack can be used to :pop back to the same browser 
  8747.  document, from which you may then proceed to a different tag, or :pop back one 
  8748.  more level to wherever the cursor was located before you gave the :browse 
  8749.  command. 
  8750.  
  8751.  If you wish, you can define your own format for the browser document. Elvis 
  8752.  searches through the elvispath for a file named "elvis.bro". If found, then 
  8753.  blank lines in it will be used to delimit it into three sections: 
  8754.  
  8755.      Everything before the first blank line is the header. It is copied into 
  8756.       the start of each browser document. $1 is replaced by the command line 
  8757.       arguments, and $2 is replaced by the number of matching tags found. This 
  8758.       is a straight-forward text substitution, not an evaluation like the 
  8759.       following section... 
  8760.      Everything between the first blank line and the last blank line is 
  8761.       repeated for each tag. For each tag, it is evaluated using the simpler 
  8762.       syntax, with $1 being replaced by the tagname, $2 by the tagfile, $3 by 
  8763.       the line text extracted from the tagaddress, and $4 by a URL combining 
  8764.       the tagfile and tagaddress attributes. You can also use parentheses to 
  8765.       enclose more complex expressions. 
  8766.      Everything after the last blank line is the trailer. It it copied into 
  8767.       the browser document literally. 
  8768.  
  8769.  The ref -ha restrictions... program generates a similar HTML document. It 
  8770.  always interprets its arguments as restrictions, and the format of the HTML 
  8771.  document can't be reconfigured. Those are the only differences. 
  8772.  
  8773.  14.8 The tagprg and tagprgonce options 
  8774.  
  8775.   As an alternative to elvis' "restrictions" method for finding tags, you can 
  8776.  set the tagprg option to a shell command line which locates the tags. 
  8777.  
  8778.  When you give a :tag command, elvis evaluates the tagprg option's value using 
  8779.  the simpler expression syntax. Any instance of $1 in the value will be 
  8780.  replaced with the command-line arguments.  Also, any text inside parentheses 
  8781.  will be evaluated; this gives you a way to access other options' values, so 
  8782.  you can do things like pass the value of the tags option to the program so it 
  8783.  knows which tags files to search through. 
  8784.  
  8785.  The resulting string is then executed, and its output is parsed as though it 
  8786.  was a tags file.  All of the tags that it outputs are considered to be 
  8787.  matches, since using tagprg disables the use of restrictions. 
  8788.  
  8789.  Elvis builds a list of the matches, and sorts them using the same history 
  8790.  mechanism that is uses with restrictions.  However, the "name:+value" and 
  8791.  "name:-value" sorting hints are not detected in the arguments. 
  8792.  
  8793.  Once the list has been built, elvis moves the cursor to the first match. You 
  8794.  can step through all matches in the list by hitting ^] or by giving the :ta 
  8795.  command with no arguments, as usual. 
  8796.  
  8797.  Note that the program's output should be in the standard tags file format. At 
  8798.  a minimum, this means "tagname TAB filename TAB address". If you want to use a 
  8799.  function searching program that uses a different format, you'll need to pipe 
  8800.  its output through a custom-made filter that converts its output to the 
  8801.  standard tags format. 
  8802.  
  8803.  There is also a tagprgonce option. It is exactly like tagprg except that 
  8804.  tagprgonce is automatically reset to "" after it is used.  This is handy when 
  8805.  you're writing aliases that use perform specialized searches. 
  8806.  
  8807.  
  8808. ΓòÉΓòÉΓòÉ 1.15. Elvis and the Internet ΓòÉΓòÉΓòÉ
  8809.  
  8810.  
  8811.  
  8812. 15. THE INTERNET 
  8813.  
  8814.  This chapter describes elvis' ability to read and write data via the internet. 
  8815. The topics discussed here are: 
  8816.  
  8817.      15.1 URLs 
  8818.      15.2 FTP 
  8819.      15.2.1 elvis.ftp or ~/.netrc 
  8820.      15.3 HTTP 
  8821.      15.3.1 Proxy Servers 
  8822.      15.3.2 elvis.net 
  8823.  
  8824.  In addition, you should probably read the Information via the Web and Using 
  8825.  elvis as a Web browser sections of the Tips chapter. You may also wish to read 
  8826.  the "html" section of the Display Modes chapter. 
  8827.  
  8828.  15.1 URLs 
  8829.  
  8830.   Wherever the traditional vi expects a filename, elvis expects a Universal 
  8831.  Resource Locator, or URL. The names of local files are one type of URL; other 
  8832.  types give the names of resources available from servers on other machines, 
  8833.  accessible via the Internet. 
  8834.  
  8835.  URLs have the form protocol://server.domain.name:port/directory/file where the 
  8836.  components of the URL have the following meanings: 
  8837.  
  8838.  protocol 
  8839.            This tells elvis how to read the URL. It can be one of the 
  8840.            following: 
  8841.                file: for local files. 
  8842.                buffer: for already-loaded edit buffers. 
  8843.                http: for the HTTP Internet protocol 
  8844.                ftp: for the FTP Internet protocol 
  8845.                Anything else isn't directly supported by elvis, but may be 
  8846.                 accessible via a proxy server. 
  8847.  server.domain.name 
  8848.            For the http: and ftp: protocols, this tells elvis which machine to 
  8849.            contact on the Internet. 
  8850.  port 
  8851.            Both http: and ftp: have default port numbers (80 and 21 
  8852.            respectively), but if a given machine's server is listening at a 
  8853.            non-standard port, you would give the port number here. 
  8854.  directory 
  8855.            This tells the server which directory contains the file. 
  8856.  file 
  8857.            This is the file to be loaded. 
  8858.  
  8859.  You can append a "#name" to the end of the URL. After loading the URL, elvis 
  8860.  searches through its text for a <a name=name> tag -- even if the file isn't an 
  8861.  HTML file. 
  8862.  
  8863.  You can also append a "?expression" to the end of an URL. The expression's 
  8864.  meaning depends on the protocol. For "file:" and ":buffer", it is used as an 
  8865.  ex line address (usually a line number or a regular expression), and the 
  8866.  cursor will be moved to that line. This is used by the :browse command. For 
  8867.  "http:", it is passed to the server and usually interpreted by a program 
  8868.  residing there. For other protocols it has no meaning, and should not be used. 
  8869.  
  8870.  While in the "html" display mode, tag names are assumed to be URLs too. 
  8871.  However, if a tag name lacks the protocol, site, port, or directory name then 
  8872.  it inherits those properties from the current document. This is true only for 
  8873.  tags, and only if you're in the "html" display mode. For example, if you're 
  8874.  viewing "ftp://ftp.cs.pdx.edu/pub/elvis/README.html", and then give the 
  8875.  command ":ta Announce.21d", then elvis will load the URL 
  8876.  "ftp://ftp.cs.pdx.edu/pub/elvis/Announce.21d". 
  8877.  
  8878.  15.2 FTP 
  8879.  
  8880.   The name "FTP" stands for "File Transfer Protocol". It is a robust and 
  8881.  versatile protocol for transferring data between different types of computers 
  8882.  over the Internet, providing support for various formats or text or paged 
  8883.  data. 
  8884.  
  8885.  Elvis always uses FTP's non-paged binary data format. Many files require this, 
  8886.  and most other files will can be converted manually later if necessary. 
  8887.  
  8888.  If possible, when elvis is downloading a file via FTP it will display the 
  8889.  file's size along with the number of bytes downloaded so far, so you can gauge 
  8890.  how much longer the download will take. However, not all FTP servers support 
  8891.  the "SIZE" command that elvis uses to learn the file's size, so sometimes 
  8892.  elvis can't display the file's size while downloading. Also, elvis never 
  8893.  displays the size of a directory while downloading. 
  8894.  
  8895.  Elvis converts FTP directory listings into HTML documents. For each file or 
  8896.  subdirectory, elvis constructs a hypertext link from the directory to the 
  8897.  file/subdirectory, so you can browse through an FTP file system using elvis' 
  8898.  "html" display mode. 
  8899.  
  8900.  In addition to reading, elvis allows you to write via FTP. You can even append 
  8901.  to a remote file via FTP, with a command such as... 
  8902.  
  8903.       :w >>ftp://ftp.somesite.com/incoming/filename
  8904.  
  8905.  Unfortunately, the FTP protocol doesn't have a well-defined means for testing 
  8906.  the attributes of a file. I tried to make elvis clever enough to infer the 
  8907.  file type from the limited information that the FTP server can provide, but in 
  8908.  some cases it may fail. 
  8909.  
  8910.  15.2.1 elvis.ftp or ~/.netrc 
  8911.  
  8912.   When using the World Wide Web, FTP accesses are normally anonymous. This 
  8913.  allows you to read public files, which is all that a Web browser is expected 
  8914.  to do anyway. On some sites, anonymous FTP may also allow you to write into a 
  8915.  directory named "/incoming" but Web browsers don't use that facility. 
  8916.  
  8917.  Since elvis is an editor (not merely a browser), it has different 
  8918.  requirements. You may wish to fetch a private file from your own account at 
  8919.  some FTP site, modify it, and write it back again. You can't do that with 
  8920.  anonymous FTP; elvis must therefore support user-specific FTP in addition to 
  8921.  anonymous FTP. 
  8922.  
  8923.  To remain compatible with the Web, elvis normally uses anonymous FTP. If you 
  8924.  want to access an FTP server using your own account, elvis requires you to 
  8925.  give a directory name which begins with a "~". For example, 
  8926.  "ftp://localhost/pub/myfile" refers to "pub/myfile" in the anonymous directory 
  8927.  hierarchy, but "ftp://localhost/~/myfile" refers to "myfile" in your home 
  8928.  directory using your own account's privileges. 
  8929.  
  8930.  Elvis doesn't prompt for your password when you access an FTP site using your 
  8931.  own account, though. Instead, it searches for account information in the 
  8932.  ".netrc" file in your home directory, or if that doesn't exist then it 
  8933.  searches for "elvis.ftp" anywhere in your elvispath. Regardless of the name, 
  8934.  the file has the exact same format. 
  8935.  
  8936.  The file is divided into words. Some of these are keywords; others are data 
  8937.  associated with the preceding keywords. Line breaks are no more significant 
  8938.  than any other whitespace, but for the sake of readability it is a good idea 
  8939.  to keep all data for a particular FTP site on a single line. 
  8940.  
  8941.  A typical line, then, will have a format like this... 
  8942.  
  8943.       machine server.domain.name login yourlogin password yourpass
  8944.  ...where server.domain.name is the name of an FTP server, yourlogin is your 
  8945.  login name there, and yourpass is your unencrypted password. 
  8946.  
  8947.  Warning! Because this file contains unencrypted passwords, you must be very 
  8948.  careful to make this file unreadable by other users. 
  8949.  
  8950.  For more information about the ~/.netrc file, look in the Unix manual at the 
  8951.  ftp(1) and netrc(5) man-pages. Elvis' use of the ~/.netrc file is intended to 
  8952.  be compatible with ftp's use of the that file. 
  8953.  
  8954.  15.3 HTTP 
  8955.  
  8956.   The name "HTTP" stands for "HyperText Transfer Protocol". It is a 
  8957.  light-weight protocol which is used mostly for fetching Web pages. 
  8958.  "Light-weight" means that it handles small transfers efficiently, with very 
  8959.  little overhead for initialization. 
  8960.  
  8961.  Elvis supports HTTP. In fact, elvis requires you to configure HTTP support if 
  8962.  you want FTP support; you can't have FTP without HTTP. 
  8963.  
  8964.  Elvis doesn't support authentication or security. Authentication would embed 
  8965.  your user name and password into each request you make; this would be useful 
  8966.  for accessing subscription sites for things like stock market information, or 
  8967.  an online encyclopedia. Security would encrypt each request; this would be 
  8968.  useful when the request contains sensitive information such as your credit 
  8969.  card number. Since elvis doesn't support these features, it can't replace a 
  8970.  real Web browser. 
  8971.  
  8972.  HTTP is a read-only protocol. Consequently, you can't write to an "http:" URL. 
  8973.  
  8974.  15.3.1 Proxy Server 
  8975.  
  8976.   A proxy server is an HTTP server which allows you to send it a request for an 
  8977.  URL which resides on a totally separate system. There are two reasons why you 
  8978.  might want to do this. 
  8979.  
  8980.  The first reason is to get around a firewall. For security reasons, many Local 
  8981.  Area Networks are configured to severely restrict the flow of data between the 
  8982.  LAN and the Internet. This prevents you from accessing an Internet site 
  8983.  directly. A proxy server may straddle that firewall, so it can receive 
  8984.  requests from computers on the LAN, and send requests to Internet sites. 
  8985.  
  8986.  The second reason is that the URL you send to an HTTP proxy doesn't 
  8987.  necessarily have to be an "http:" URL. It could use Gopher, WAIS, or whatever. 
  8988.  Elvis can thus use its built-in HTTP support, and the services of an HTTP 
  8989.  proxy, to support any protocol which the proxy supports. 
  8990.  
  8991.  15.3.2 elvis.net 
  8992.  
  8993.   The elvis.net configuration file tells elvis which requests must go through a 
  8994.  proxy, and which can be sent directly. When a proxy is needed, it also gives 
  8995.  the name of the proxy. 
  8996.  
  8997.  The file is divided into words. The word "direct" means that following words 
  8998.  are domain names which can be accessed directly (without a proxy). The word 
  8999.  "proxy" is followed by the name of an HTTP proxy server, and then by the names 
  9000.  of domains which must use that proxy. 
  9001.  
  9002.  The domain names in this file can either be the complete names of servers 
  9003.  ("www.othersite.com"), or a partial name which starts with a dot 
  9004.  (".othersite.com") which matches all sites whose name has the same ending. 
  9005.  
  9006.  When elvis wants to read from a URL, it scans through the file and uses the 
  9007.  first "proxy" or "direct" list which mentions the URL's domain. If the domain 
  9008.  doesn't appear in any of list, then the last "proxy" or "direct" list is used; 
  9009.  i.e., the last "proxy" or "direct" command is used as the default. As a simple 
  9010.  example, if all requests must go through a proxy, then elvis.net would 
  9011.  contain: 
  9012.  
  9013.       proxy www.myproxy.com
  9014.  
  9015.  When elvis is given a URL that uses any protocol other than "ftp:" or "http:" 
  9016.  it searches through the elvis.net file for a proxy using the usual rules, 
  9017.  except that if the URL's domain isn't mentioned in any list, then elvis will 
  9018.  use the last proxy mentioned in the file (even if there is a "direct" list 
  9019.  after that). If there is no proxy, then elvis gives an error message. For 
  9020.  example, if you can access all sites directly, but also have access to a proxy 
  9021.  which can fetch non-ftp/http URLs for you, then elvis.net should look like 
  9022.  this: 
  9023.  
  9024.       proxy www.myproxy.com
  9025.       direct
  9026.  
  9027.  As a final example, here's a file which causes all accesses to sites whose 
  9028.  domain name ends with ".mylan.com" to be accessed directly, but all other 
  9029.  sites accessed via a proxy. This is a typical set-up for a proxy which is used 
  9030.  to reach out through a firewall. 
  9031.  
  9032.       direct .mylan.com
  9033.       proxy www.myproxy.com
  9034.  
  9035.  Note that all proxy accesses use the HTTP protocol, even if they are to FTP 
  9036.  sites. This means that you can only read through a proxy; you can't write 
  9037.  through a proxy because HTTP is a read-only protocol. 
  9038.  
  9039.  The proxy accesses work by sending an HTTP "GET" request to the HTTP server, 
  9040.  passing it the whole URL rather than just the directory and filename. The 
  9041.  server must then be clever enough to parse the URL, and fetch the requested 
  9042.  document from the proper site, using the proper protocol. Not all servers are 
  9043.  that smart, so don't be surprised if your closest server can't handle proxy 
  9044.  requests. 
  9045.  
  9046.  If elvis.net doesn't exist, then all FTP or HTTP accesses will be direct, and 
  9047.  other protocols will generate an error. The same behavior can also be 
  9048.  generated by creating an elvis.net file containing only the word "direct". 
  9049.  
  9050.  
  9051. ΓòÉΓòÉΓòÉ 1.16. Elvis Tips ΓòÉΓòÉΓòÉ
  9052.  
  9053.  
  9054.  
  9055. 16. TIPS 
  9056.  
  9057. This section of the manual explains some of the more complex, obscure, and 
  9058. useful features of elvis (or larger subjects). The following subjects are 
  9059. discussed: 
  9060.  
  9061.      16.1 Information via the Web 
  9062.      16.2 Using elvis as a Web browser 
  9063.      16.3 How to debug macros 
  9064.      16.4 Running your compiler from within elvis 
  9065.      16.5 Internationalization 
  9066.      16.6 Aliases 
  9067.         -  16.6.1 Some example aliases 
  9068.      16.7 How to make elvis run faster 
  9069.  
  9070.  
  9071.  16.1 Information via the Web 
  9072.  
  9073.  Here are some URLs (World Wide Web links to other documents) which are 
  9074.  relevant to vi. Each of these, in turn, has links to other sites. Directly or 
  9075.  indirectly, these links will lead you to a huge amount of information about 
  9076.  vi. 
  9077.  
  9078.  I've tried to limit this list to advertized sites; there are others that I run 
  9079.  across from time to time, but their URLs tend to vary over time, so it isn't a 
  9080.  good idea to place them in a static document such as this one. It makes for a 
  9081.  short list, though. 
  9082.  
  9083.  ftp://ftp.cs.pdx.edu/pub/elvis/README.html 
  9084.            The "home" site of elvis. This is where you can find the latest 
  9085.            official release. 
  9086.  ftp://ftp.cs.pdx.edu/pub/elvis/unreleased/README.html 
  9087.            Prerelease versions of elvis can often be found here. Prerelease 
  9088.            versions are identified by a letter appended to the version number 
  9089.            they they're expected to be released as.  For example, 2.1a is a 
  9090.            prerelease version of what will eventually be released as version 
  9091.            2.1.  Also, I append "-alpha" in the early stages when new features 
  9092.            are still being added, or "-beta" if no new features are expected 
  9093.            before the release.  Typically, new versions are uploaded once a 
  9094.            month or so; watch for announcements on the comp.editors newsgroup. 
  9095.  http://www.fh-wedel.de/elvis/index.html 
  9096.            This where Herbert (a.k.a. Martin Dietze, who ported elvis to OS/2) 
  9097.            is putting an Elvis home page. It is expected to have links to all 
  9098.            relevent web pages, archives, and people's email addresses. The 
  9099.            manual will also be available here. He is also considering adding a 
  9100.            searchable online database of aliases and how-to articles. This may 
  9101.            also become the preferred way to submit bug reports, suggestions, or 
  9102.            any other contribution to the project. 
  9103.  http://greens.ml.org/about/elvis/online-help/elvis.html 
  9104.            This is one location on the web where elvis' manual is available 
  9105.            online. Be sure to check the version number! 
  9106.  http://www.phys.columbia.edu/~flame/vi.htm 
  9107.            This is a Web page for elvis, maintained by JaeSub Hong. It has some 
  9108.            screen shots, macros, and syntax-coloring definitions. It also has 
  9109.            the online manual. 
  9110.  http://www.cs.vu.nl/~tmgil/vi.html 
  9111.            "The VI lover's home page." This contains links to a wide variety of 
  9112.            vi documentation, and practically all vi clones. A very good 
  9113.            resource! 
  9114.  http://www.math.fu-berlin.de/~guckes/vi/features.html 
  9115.            Feature comparison between different VI implementations, plus a few 
  9116.            other editors. Originally it just listed which options are supported 
  9117.            by which clones, but it has matured a bit since then. The maintainer 
  9118.            is fond of VIM, so there is a bias towards that. 
  9119.  http://www.bsyse.wsu.edu/~rnelson/editors/editors.htm 
  9120.            A compendium of text editors. It describes all kinds of text 
  9121.            editors, not just vi clones. It lists the features and supported 
  9122.            platforms for each editor. 
  9123.  http://home.hiwaay.net/~darren/ctags/ 
  9124.            Home page for Darren Hiebert's exuberant ctags program. It supports 
  9125.            all features of elvis' ctags, except for the "-r" flag for 
  9126.            generating a "refs" file. Exuberant ctags has a smarter parsing 
  9127.            algorithm, which causes it to generate fewer bogus tags (i.e., tags 
  9128.            for things that really shouldn't have tags). It also adds the 
  9129.            ability to generate tags for "enum" values and a few other useful 
  9130.            things. 
  9131.  http://wafu.netgate.net/tama/unix/global.html 
  9132.            Home page for Shigio Yamaguchi's global function reference utility. 
  9133.            You can make elvis use it instead of the normal built-in tag 
  9134.            searcher by giving elvis the following command: 
  9135.  
  9136.                       :se tagprg="global -t $1"
  9137.  
  9138.            Once you have run global's gtags utility, you can do some powerful 
  9139.            things such as search for each place where a function (e.g., 
  9140.            m_front()) is called, like this: 
  9141.  
  9142.                       :ta -r m_front
  9143.  
  9144.  http://www.cs.berkeley.edu/~amc/Par/ 
  9145.            Home page for Adam Costello's par program, which is a much more 
  9146.            sophisticated text formatter than the fmt program distributed with 
  9147.            elvis. It even does a very good job of reformatting comments! Sadly, 
  9148.            it is one of those rare programs that doesn't handle tab characters 
  9149.            correctly. 
  9150.  ftp://alf.uib.no/pub/vi 
  9151.            An archive site containing many macro packages and other information 
  9152.            about vi.  Nearly all of it should apply equally well to elvis. 
  9153.  ftp://ftp.oce.nl/pub/vim 
  9154.  http://www.clark.net/pub/dickey/vile/vile.html 
  9155.  http://www.sleepycat.com/vi/ 
  9156.  http://www.snafu.de/~ramo/WinViEn.htm 
  9157.  http://ourworld.compuserve.com/homepages/fwiarda/software.htm 
  9158.            These are the home pages for some other vi clones: vim, vile, nvi, 
  9159.            WinVi, and pvic respectively. 
  9160.  ftp://ftp.funet.fi/pub/doc/posix/p1003.2a/d8/5.10 
  9161.  ftp://ftp.funet.fi/pub/doc/posix/p1003.2a/d8/5.35 
  9162.            These are old drafts of the  POSIX standards for ex and vi, 
  9163.            respectively. These URLs might not be valid very long. 
  9164.  http://www.de.freebsd.org/de/doc/usd/12.vi/paper.html 
  9165.            This is the official BSD documentation for vi. 
  9166.  http://alumni.caltech.edu/~dank/nansi/ 
  9167.            This is a home page for the NANSI.SYS and NNANSI.SYS drivers, which 
  9168.            accelerate the screen updates under MS-DOS. 
  9169.  
  9170.  
  9171.  16.2 Using elvis as a Web browser 
  9172.  
  9173.   NOTE: The following information doesn't apply to the MS-DOS version of elvis, 
  9174.  because that version doesn't support the ftp and http protocols.  But for 
  9175.  Win32, Unix, and OS/2... 
  9176.  
  9177.  You can use elvis as a light-weight Web browser. Surfing with elvis isn't as 
  9178.  much fun as surfing with a multimedia-capable browser such as Netscape or 
  9179.  MSIE, but elvis does have some advantages: it starts up much faster, it feels 
  9180.  like vi, and you can edit whatever you download. 
  9181.  
  9182.  There's no special trick to loading a Web page. Just give a URL where elvis 
  9183.  expects a filename, and elvis will read the Web page via the Internet. You can 
  9184.  follow links in Web pages just as you do in elvis' online manual. HTML pages 
  9185.  are displayed in the "html" display mode, and anything else uses the "hex" or 
  9186.  "normal" display mode by default. All data is fetched in binary so data files 
  9187.  aren't mangled; however, this also means that newlines aren't converted, which 
  9188.  may make non-HTML text files look ugly. 
  9189.  
  9190.  Elvis has built-in support for the HTTP and FTP protocols. Other protocols may 
  9191.  be indirectly supported, via an HTTP proxy as indicated by the elvis.net 
  9192.  configuration file. 
  9193.  
  9194.  By default, FTP access is anonymous. However, if you give a file name which 
  9195.  starts with "/~/" then elvis will attept to login to the FTP server using you 
  9196.  own account, as described in the elvis.ftp or ~/.netrc configuration file. For 
  9197.  example, "ftp://localhost/directory/file" uses anonymous FTP, but 
  9198.  "ftp://localhost/~/directory/file" uses your own account. 
  9199.  
  9200.  Elvis can write via FTP as well as read; see the Internet chapter. 
  9201.  
  9202.  Elvis also doesn't support inline graphic images, but that isn't as big of a 
  9203.  problem as you might think. If you download an image, elvis will simply load 
  9204.  it into a buffer and then display that buffer in the "hex" display mode. You 
  9205.  can then write that buffer's contents to a file, or in Unix you can send it 
  9206.  directly to an image viewer via a command such as ":w !xv -". 
  9207.  
  9208.  The easiest way to save an image (or any other buffer) to a local file is via 
  9209.  the command ":w (dirfile(filename))". In fact, you might want to add the 
  9210.  following lines to your ~/.exrc file to make the (F2) key save the current 
  9211.  buffer to a file, and the (F3) key send it to the xv image viewer: 
  9212.  
  9213.           map #2 :w (dirfile(filename))^M
  9214.           map #3 :w !xv -^M
  9215.  
  9216.  To make images easier to fetch, any <IMG SRC=url> tag which isn't already part 
  9217.  of a hypertext link will be interpreted as a link to the SRC url. This allows 
  9218.  you to download an image by moving the cursor onto it and hitting the (Enter) 
  9219.  key. 
  9220.  
  9221.  Elvis doesn't support frames either, so a similar trick was used for <FRAME 
  9222.  SRC=url> tags. Elvis displays the name of each frame; those names serve as 
  9223.  links to the contents of the frame. 
  9224.  
  9225.  Because elvis is primarily an editor, not a Web browser, I deliberately made 
  9226.  the "html" display mode rather picky, so that any questionable entities in 
  9227.  your own HTML documents will call attention to themselves. When you're using 
  9228.  elvis to browse other peoples' documents, though, this can be annoying, so I 
  9229.  modified it slightly to be more forgiving when you're viewing read-only 
  9230.  documents. (All Web pages are read-only.) 
  9231.  
  9232.  And you already know that elvis' support for the <TABLE> macros is very poor, 
  9233.  right? If you encounter a Web page which looks really ugly in elvis, you can 
  9234.  bet it uses tables. 
  9235.  
  9236.  Elvis doesn't support forms, or secure connections. Well, elvis can display 
  9237.  mock-ups of forms; they just don't work. They probably never will. You have to 
  9238.  draw the line somewhere. 
  9239.  
  9240.  Elvis doesn't always choose the best display mode for HTML pages. It uses 
  9241.  "html" if the file name ends with ".html" or ".htm", or if the document's text 
  9242.  begins with "<!", "<H", or "<h". For all other documents, it uses the "normal" 
  9243.  or "hex" display mode by default. If elvis chooses the wrong display mode, you 
  9244.  can use the :display command to switch to a different display mode. 
  9245.  
  9246.  The command ":e foo" will always load the local file "foo" from your current 
  9247.  directory. This is true of all commands which normally act on files -- unless 
  9248.  you give a complete URL, elvis assumes it should work with local files. 
  9249.  However, while in the "html" display mode, the command ":ta foo" will use the 
  9250.  same protocol, site, and directory as the page you're already viewing, because 
  9251.  that's how the "html" display mode interprets tags. 
  9252.  
  9253.  16.3 How to debug macros 
  9254.  
  9255.   There are two ways to create a macro in elvis: You can either assign a series 
  9256.  of commands to a keystroke (or series of keystrokes) via the :map command, or 
  9257.  you can store a series of commands in a cut buffer and execute them via the 
  9258.  visual @x command. You will often use a combination of techniques, in which 
  9259.  :map macro constructs a customized @x macro and runs it. 
  9260.  
  9261.  Elvis has several features that make debugging macros much easier. For 
  9262.  example, you can create a window which continuously displays the contents of a 
  9263.  given cut buffer, such as "m, via the command: 
  9264.  
  9265.           :(Elvis cut buffer m)split
  9266.  or, more concisely: 
  9267.  
  9268.           :("m)sp
  9269.  
  9270.  Note: The cut buffer must exist before you can display it. Cut buffers are 
  9271.  created the first time anything is yanked into them. 
  9272.  
  9273.  The maptrace option allows you to trace the execution of macros. You can 
  9274.  either allow it to run through the macro, or wait for a keypress before each 
  9275.  mapped command character. You can also use the :break and :unbreak commands to 
  9276.  set or clear a breakpoint on a given :map macro. Breakpoints cause the 
  9277.  maptrace option to switch from "run" to "step" when that macro is expanded. 
  9278.  
  9279.  The maplog option can be used to log the trace information to a buffer named 
  9280.  "Elvis map log". The idea here is that you will give the command... 
  9281.  
  9282.           :se mt=r mlog=r
  9283.  ... (or its full-length form, :set maptrace=run maplog=reset) before starting 
  9284.  the macro, and then when the macro fails you can give the command... 
  9285.  
  9286.           :(Elvis map log)split
  9287.  ... to see what it was doing shortly before the failure. Note that the maplog 
  9288.  option has no effect if maptrace is "off". 
  9289.  
  9290.  Warning: Elvis has a single keystroke queue which is shared by all windows. 
  9291.  Because of this, while elvis is running a macro in one window you can't switch 
  9292.  to another window and type in commands. Even if the GUI allows you to switch 
  9293.  windows without using the keyboard, doing so will simply force the macro to 
  9294.  continue execution in the new window. So don't switch windows while a macro is 
  9295.  running! 
  9296.  
  9297.  Here's a debugging methodology that works for me: 
  9298.  
  9299.    1. Begin by loading the macro package and a test file. 
  9300.    2. Give the command ":se mt=r mlog=r", and run the macro. 
  9301.    3. If the macro fails, give the command ":(Elvis map log)split"   to find 
  9302.       out what commands executed immediately before the failure.   In 
  9303.       particular look for a :map macro that was expanded shortly before   the 
  9304.       failure. 
  9305.    4. Set a breakpoint on that macro with ":break macrokey". 
  9306.    5. Turn off logging, via ":se mlog=o". 
  9307.    6. Reload the test file. 
  9308.    7. Execute the macro again.  When the macro with the breakpoint is 
  9309.       encountered,   elvis will switch to single-step mode.  Step slowly 
  9310.       through the next few   instructions, looking for one which does something 
  9311.       unexpected. 
  9312.  
  9313.  If your macro reveals a bug in elvis, please let me know! My email address is 
  9314.  kirkenda@cs.pdx.edu. Please tell me which version of elvis you're using, as 
  9315.  reported by the :version command. 
  9316.  
  9317.  16.4 Running your compiler from within elvis 
  9318.  
  9319.   Elvis can parse most compilers' error messages. When it parses an error 
  9320.  message, elvis loads the faulty file, moves the cursor to the line where the 
  9321.  error was reported, and shows the descriptive portion of the error message on 
  9322.  the bottom row of the window. You can step through all reported errors very 
  9323.  quickly, making changes along the way. 
  9324.  
  9325.  Usually, you will invoke your compiler or "make" utility via the :cc or :make 
  9326.  commands. The only difference between these commands is that :cc invokes the 
  9327.  program named by the ccprg option, and :make uses the makeprg option. 
  9328.  
  9329.  Both of those options' values are evaluated using the simpler expression 
  9330.  syntax, with $1 set to any extra command-line parameters, and $2 set to the 
  9331.  current file name. 
  9332.  
  9333.  You can also read error messages from some other program with the command 
  9334.  ":errlist !program", or read them from a file with the command ":errlist 
  9335.  filename". 
  9336.  
  9337.  I often invoke elvis via the command "elvis +make" so elvis will attempt to 
  9338.  compile the program, and move the cursor to the first error (if there are any 
  9339.  errors). 
  9340.  
  9341.  All of the compiler's output text is collected  into a buffer named "Elvis 
  9342.  error list". If you wish, you can view this list in a separate window via this 
  9343.  command: 
  9344.  
  9345.   :(Elvis error list)split
  9346.  
  9347.  Here's how elvis parses each line of compiler output: Starting from the left, 
  9348.  it divides the line into "words", which are defined as a series of letters, 
  9349.  digits, and/or certain punctuation characters. 
  9350.  
  9351.  If the word is the name of an existing directory, then elvis remembers that 
  9352.  directory name. In later lines, elvis will allow file names to be given 
  9353.  relative to that directory, in addition to the current directory. This 
  9354.  particular feature is intended to work with the directory lines generated by 
  9355.  the GNU version of the "make" program. 
  9356.  
  9357.  If the word looks like a number, and no line number has been seen yet, then 
  9358.  the word is taken to be a line number. If the word is the name of an existing, 
  9359.  writable file (or any existing file if the anyerror option is set) in either 
  9360.  the current directory or the directory remembered from a previous line as 
  9361.  described above, then the word is taken to be a file name. Other words are 
  9362.  ignored. 
  9363.  
  9364.  When elvis has found both a file name and a line number, then it skips over 
  9365.  any whitespace or punctuation immediately following them, and uses the 
  9366.  remainder of the line as the error's description. 
  9367.  
  9368.  If elvis fails to find a file name/line number pair, then it skips that whole 
  9369.  line of compiler output. 
  9370.  
  9371.  Immediately after collecting compiler output, elvis moves the cursor to the 
  9372.  source of the first error. After that, you can use :errlist (with no 
  9373.  arguments) or the visual * command to step through each following error. 
  9374.  
  9375.  Each time elvis collects a new set of error messages, it remembers how many 
  9376.  lines are in each buffer. Later, when you insert or delete lines to correct an 
  9377.  error, elvis can compare the current number of lines to original number of 
  9378.  lines, and adjust the reported line numbers accordingly. 
  9379.  
  9380.  Here's something that may be useful for PERL programmers. PERL's error 
  9381.  messages follow two distinct formats, neither of which looks like any compiler 
  9382.  error message format; consequently, elvis can't parse PERL's error messages 
  9383.  directly.  The following PERL program is a filter that reformats PERL's error 
  9384.  messages to look more like normal compiler error messages. 
  9385.  
  9386.           #!/usr/bin/perl
  9387.           $\ = "\n";
  9388.           while (<>) {
  9389.               chop;
  9390.               s/(.*) in file ([^ ]*) at line (\d*).*/$2($3): $1/;
  9391.               s/(.*) at ([^ ]*) line (\d*)\.$/$2($3): $1/;
  9392.               print;
  9393.           }
  9394.  
  9395.  To use this script, store it in a file named "perlerr" and turn on the file's 
  9396.  "execute" flag, and then set elvis' ccprg option as follows: 
  9397.  
  9398.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9399.   ΓöéFor CSH:                              Γöé:set ccprg="perl -c ($1?$1:$2) |&     Γöé
  9400.   Γöé                                      Γöéperlerr"                              Γöé
  9401.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9402.   ΓöéOther shells:                         Γöé:set ccprg="perl -c ($1?$1:$2) 2>&1 | Γöé
  9403.   Γöé                                      Γöéperlerr"                              Γöé
  9404.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9405.  
  9406.  
  9407.  16.5 Internationalization 
  9408.  
  9409.   Elvis can be configured to translate its messages into different languages, 
  9410.  and to use different symbol sets. These things are accomplished via the 
  9411.  elvis.msg file and :digraph command, respectively. 
  9412.  
  9413.  Elvis locates the elvis.msg file during initialization. Ordinarily it searches 
  9414.  through each directory named in the ELVISPATH environment variable. However, 
  9415.  if there is an environment variable named LC_ALL, LC_MESSAGES, or LANG (listed 
  9416.  in order or precedence) which is set to a non-null value, then elvis will look 
  9417.  for elvis.msg first in a subdirectory whose name matches the environment 
  9418.  variable's value. For example, if ELVISPATH=~/.elvis:/usr/local/lib/elvis, 
  9419.  LC_ALL is unset, and LC_MESSAGES=german, then elvis would try to load its 
  9420.  messages from... 
  9421.  
  9422.    1. ~/.elvis/german/elvis.msg 
  9423.    2. ~/.elvis/elvis.msg 
  9424.    3. /usr/local/lib/elvis/german/elvis.msg 
  9425.    4. /usr/local/lib/elvis/elvis.msg 
  9426.  
  9427.  The digraph table affects more than just keyboard input. It also affects 
  9428.  "html" mode, and character type classifications. 
  9429.  
  9430.  Digraphs are used by the "html" display mode to translate character entities 
  9431.  into characters. For example, when elvis encounters & ntilde; in an HTML 
  9432.  document, it tries to find a digraph which combines 'n' with '~'. If there is 
  9433.  such a digraph, elvis will use it to display an 'Γòñ'; if not, then elvis will 
  9434.  display a plain 'n' character. 
  9435.  
  9436.  The digraph table affects the character classes, too. This, in turn, affects 
  9437.  the definition of a "word", as used by the visual w command, among others. A 
  9438.  non-ascii character is treated as an uppercase letter if, according to the 
  9439.  digraph table, it is the result of combining an ASCII uppercase letter with 
  9440.  either a punctuation character or a second uppercase letter. A similar rule 
  9441.  holds for lowercase letters. 
  9442.  
  9443.  Also, elvis tries to find uppercase/lowercase pairs through the digraph table. 
  9444.  This is used for case conversions, as performed by the visual ~ command, or 
  9445.  the \U metacharacter in the :s/old/new command. 
  9446.  
  9447.  There is no way to specify a sorting order. This means, in particular, that 
  9448.  the regular expression /[a-z]/ will only match the ASCII lowercase letters, 
  9449.  not the non-ASCII ones. However,  the regular expression /[:lower:]/ will 
  9450.  match all lowercase letters including the non-ASCII ones. 
  9451.  
  9452.  The default elvis.ini file tries to load digraphs by executing either 
  9453.  elvis.pc8 for MS-DOS, OS/2, or text-mode Win32, or elvis.lat for any other 
  9454.  operating system. 
  9455.  
  9456.  The "win32" version of the "termcap" user interface has a codepage option 
  9457.  which determines which symbol set is used for console output. If you change 
  9458.  codepage, you should also adjust your digraph table. 
  9459.  
  9460.  16.6 Aliases 
  9461.  
  9462.   Aliases provide a simple way to add a new name for an existing ex command, or 
  9463.  series of ex commands. 
  9464.  
  9465.  The syntax of elvis' :alias command is intended to resemble that of the csh 
  9466.  Unix shell.  The simplest example of an alias is... 
  9467.  
  9468.   :alias save w
  9469.  ... which would allow you to write your file out by running ":save", as an 
  9470.  alternative to the standard ":w".  If you pass any arguments to ":save" then 
  9471.  they'll be appended to the ":w" command.  For example, ":save foo" would be 
  9472.  interpreted as ":w foo". 
  9473.  
  9474.  Here's another example.  On Unix systems, this will make ":ls" display a 
  9475.  directory listing. 
  9476.  
  9477.   :alias ls !!ls -C
  9478.  
  9479.  Note that the above example requires two exclamation marks. This is because 
  9480.  the "!" character is special in aliases -- elvis' aliases allow you to use 
  9481.  special symbols to indicate where arguments belong in the command text, and 
  9482.  all of those symbols begin with a "!" character. When you invoke the alias, 
  9483.  all of the symbols are replaced by argument values before the command text is 
  9484.  executed. Here is a complete list of the replacement symbols: 
  9485.  
  9486.        .--------.-------------------------------------------------.
  9487.        | SYMBOL | REPLACED BY                                     |
  9488.        |--------|-------------------------------------------------|
  9489.        |   !<   | first address line, if any addresses given      |
  9490.        |   !>   | last address line, if any addresses given       |
  9491.        |   !%   | address range, if any addresses given           |
  9492.        |   !?   | "!" if the alias is invoked with a "!" suffix   |
  9493.        |   !*   | the entire argument string except for "!" suffix|
  9494.        |   !^   | the first word from the argument string         |
  9495.        |   !$   | the last word from the argument string          |
  9496.        |   !n   | the nth word (where n is a single digit)        |
  9497.        |   !!   | a single, literal "!" character                 |
  9498.        ^--------^-------------------------------------------------^
  9499.  
  9500.  Using any of the !*, !^, !$, or !1 through !9 symbols in the command string 
  9501.  has the side-effect of disabling the normal behavior of appending the 
  9502.  arguments to the command. Or to phrase that another way: If the command text 
  9503.  doesn't explicitly say what to do with arguments, then elvis will assume it 
  9504.  should simply append them. 
  9505.  
  9506.  The other symbols, such as !% and !?, have no such default behavior.  If your 
  9507.  macro is going to use addresses or a "!" suffix, then you must explicitly 
  9508.  include !% or !? (respectively) in the command string. 
  9509.  
  9510.  Here's a simple alias for playing around with these: 
  9511.  
  9512.   :alias show echo !!<=!< !!%=!% !!?=!? !!*=!* !!^=!^ !!2=!2 !!$=!$
  9513.  
  9514.  Here's a more sophisticated version of the ":save" alias.  This version allows 
  9515.  you to use ":save!" as an alias for ":w!". 
  9516.  
  9517.   :alias save w!?
  9518.  
  9519.  Here's a macro that converts a range of lines to uppercase.  If invoked 
  9520.  without any addresses, it will change only the current line, because that's 
  9521.  the default for the :s command. 
  9522.  
  9523.   :alias upper !%s/.*/\U&/
  9524.  
  9525.  You can define multi-line aliases by enclosing the lines in curly braces. The 
  9526.  following example uses this technique to make a slightly smarter version of 
  9527.  the "save" alias: 
  9528.  
  9529.   :alias save {
  9530.    "Write a file, but only if it has been modified
  9531.    if modified
  9532.    then w!? !*
  9533.   }
  9534.  
  9535.  Note that the first line of the alias's body is a comment. (Comments start 
  9536.  with a " character.) This is a good idea because with the :alias command is 
  9537.  invoked with no arguments, it lists the names and first lines of all aliases. 
  9538.  Putting a descriptive comment in the first line allows you to see what each 
  9539.  alias does simply by examining that list. 
  9540.  
  9541.  If a multi-line alias is going to use arguments, then it must include !*, !^, 
  9542.  !$, or !n symbols.  Elvis does not, by default, append arguments to the end of 
  9543.  a multi-line alias; it only does that for single-line aliases. 
  9544.  
  9545.  An alias can have the same name as a built-in command, but aliases can't be 
  9546.  recursive.  Together, these two rules mean that you can use an alias to change 
  9547.  the behavior of a built-in command.  For example, the following alias makes 
  9548.  the :w command perform an RCS checkout operation if you don't already have 
  9549.  write permission for a file. The "w" command inside the command text refers to 
  9550.  the normal :write command since it isn't allowed to be a recursive call to the 
  9551.  "w" alias. 
  9552.  
  9553.   :alias w {
  9554.    "Write a file, checking it out first if necessary
  9555.    if readonly && "!%!?!*" == ""
  9556.    then !!co -l %
  9557.    then w!!
  9558.    else !%w!? !*
  9559.   }
  9560.   You can optionally insert a ':' character between the '!' and the second 
  9561.  character of any of these symbols. This has no effect; it is allowed simply to 
  9562.  remain a little closer to CSH's alias syntax. 
  9563.  
  9564.  You can also optionally insert a '\' character between the '!' and the second 
  9565.  character. This does have an effect: It causes a backslash to be inserted 
  9566.  before any characters which would otherwise receive special treatment if they 
  9567.  appeared in a regular expression. Specifically, it will always insert a 
  9568.  backslash before '\', '/', '^', '$', '.', '[', or '*'. Note that this is not 
  9569.  sensitive to the magic option; in effect, it assumes that magic is always set. 
  9570.  Also, it never inserts a backslash before a '?' character even if it is used 
  9571.  in a regular expression which is delimited by '?' characters. The following 
  9572.  "find" alias will search for literal text: 
  9573.  
  9574.   :alias find /!\*
  9575.   In addition, you can optionally specify a default value for an argument, by 
  9576.  placing the value in parentheses between the '!' and the second character. 
  9577.  Here's an example which acts like echo, except that if you don't tell it what 
  9578.  to echo then it will echo "Howdy!": 
  9579.  
  9580.   :alias greet !(Howdy!)*
  9581.   If necessary, you can insert both a backslash and a parenthesized default 
  9582.  value. The backslash quoting will be applied to the given argument value, but 
  9583.  bot the parenthesized default value. Here's a variation of the "find" alias 
  9584.  which searches for literal text, or if you don't specify any text to find then 
  9585.  it searches for a { character at the front of a line. 
  9586.  
  9587.   :alias find /!(^{)\*
  9588.   Some vi commands are implemented via ex commands.  If you create an alias 
  9589.  with the same name as a built-in ex command, then the corresponding visual 
  9590.  command will be affected.  For example, the ZZ visual command runs :x, so the 
  9591.  following alias would break the ZZ command... 
  9592.  
  9593.   :alias x echo Winners never quit, and quitters never win
  9594.  
  9595.  
  9596.  16.6.1 Some example aliases 
  9597.  
  9598.  The distribution comes with some handy aliases in a file named lib/exalias.eg. 
  9599.  I suggest you look at them. The simple ones should give you some ideas of how 
  9600.  to structure your own aliases, and the complex examples will give you a feel 
  9601.  of what can be accomplished. 
  9602.  
  9603.  These examples are intended to be useful as well as instructive. The aliases 
  9604.  in that file include: 
  9605.  
  9606.  :save [filename] 
  9607.            Write this file, but only if it has been modified. 
  9608.  :[range]w[! ] [filename] 
  9609.            Like the normal :w command, except that if you try to write a whole 
  9610.            file back over itself, and that file is readonly, then the :w alias 
  9611.            will attempt to perform an RCS "checkout" operation on that file. 
  9612.  :man [section] topic 
  9613.            Unix only.  Read a man-page and display it in a new window. 
  9614.  :courier [size] 
  9615.            X11 only.  Select the courier fonts of the given size. If no size is 
  9616.            specified, then it uses the default size, which is 18-point. 
  9617.  :copying 
  9618.            Display the license 
  9619.  :howto[!] word [word2 ] 
  9620.            Load the "How To" appendix in a separate window, and search for a 
  9621.            topic containing the given word or words. The words should be typed 
  9622.            in lowercase. If you want to search all lines (not just topic lines) 
  9623.            then run :howto! (with a ! suffix). 
  9624.  :cbsave filename 
  9625.  :cbload filename 
  9626.            Save the cut buffers ("a through "z) to a file, or load them from 
  9627.            that file. 
  9628.  :config 
  9629.            Report the configuration of your copy of elvis. I.e., list the 
  9630.            features which were enabled at when elvis was compiled. 
  9631.  :[range]left 
  9632.  :[range]right 
  9633.  :[range]center 
  9634.            For each line in the given range (or only the current line if no 
  9635.            addresses are given), adjust the indentation so that its text is 
  9636.            moved to the left, right, or center of the line. 
  9637.  :[range]rot13 
  9638.            Peform ROT13 encryption/decryption on the given range of lines, or 
  9639.            only the current line if no addresses are given. ROT13 is a simple 
  9640.            character-substitution code in which characters from the front half 
  9641.            of the alphabet are exchanged with the corresponding characters from 
  9642.            the back half of the alphabet. It is sometimes used as a courtesy 
  9643.            when posting offensive jokes to the rec.humor newsgroup, along with 
  9644.            an unencrypted warning such as "The following may be offensive to 
  9645.            whomever.  Decode using ROT13 at your own risk." 
  9646.  :[range]cfmt 
  9647.            Adjust the line breaks in a C or C++ comment block. 
  9648.  :[range]align 
  9649.            Align any = signs (or other given text) in range of lines. This is 
  9650.            useful for making macro definitions in a Makefile look pretty. This 
  9651.            is the most complex example. 
  9652.  :match 
  9653.            If the cursor (in visual mode) is on an "if", "while", or "for" 
  9654.            keyword then this moves the cursor to the matching "endif", 
  9655.            "endwhile", or "endfor" keyword, respectively.  It can also do the 
  9656.            reverse. 
  9657.  
  9658.  
  9659.  16.7 How to make elvis run faster 
  9660.  
  9661.  This section describes some ways you can "tune" elvis to run faster. None of 
  9662.  these suggestions require recompiling elvis. 
  9663.  
  9664.  For example, my computer (AMD K6-200) can run 10 generations of the "life" 
  9665.  macros in 41 seconds with the default configuration.  If I invoke elvis with a 
  9666.  reduced block size (-b1024 on the command line) and an increased cache (:set 
  9667.  blkcache=200 blkhash=300), it can run 10 generations in just 24 seconds. 
  9668.  
  9669.  The blksize option 
  9670.  
  9671.  Elvis uses fixed-size blocks to store buffers.  The block size is chosen when 
  9672.  the session file is created.  The default is 2048 bytes (or 1024 bytes for 
  9673.  MS-DOS), but you can override that by invoking elvis with a -bblksize flag. 
  9674.  The size must be a power of two, between 512 and 8192. 
  9675.  
  9676.  The blksize option indicates the current block size.  This is a read-only 
  9677.  option; once elvis has started, (and hence has already created the session 
  9678.  file) it is too late to request a different block size. 
  9679.  
  9680.  Generally, smaller blocks are better if your CPU is slow or you're only 
  9681.  editing small files.  Larger blocks are better if your disk is slow (e.g., the 
  9682.  temporary file is stored on a remote disk, accessed via a network) or you're 
  9683.  editing large files. 
  9684.  
  9685.  The block cache 
  9686.  
  9687.  In the interest of speed, elvis has its own cache of blocks from the session 
  9688.  file.  The blkcache option tells elvis how many blocks to store in the cache. 
  9689.  You can change this value at any time. If elvis requires more cached blocks 
  9690.  for a given editing operation than the blkcache allows, then elvis ignores 
  9691.  blkcache and loads the required blocks into the expanded cache; you can't make 
  9692.  blkcache too small. The default blkcache is 20 (except for MS-DOS, where it is 
  9693.  10), and the upper bound is 200 blocks. In MS-DOS, setting blkcache too high 
  9694.  can cause elvis to crash. 
  9695.  
  9696.  The blkhit and blkmiss options count the number of cache hits and misses, so 
  9697.  you can compute the efficiency of the cache as follows: 
  9698.  
  9699.           :calc (bh*100/(bh+bm))"%"
  9700.  
  9701.  You'll probably find that 98% or more of the block requests are being 
  9702.  satisfied from the cache.  However, since each miss takes thousands of times 
  9703.  longer to complete than a hit, each fraction of a percent means a lot. 
  9704.  
  9705.  In addition to the blocks themselves, the cache contains a hash table which 
  9706.  allows elvis to quickly determine whether a block is in the cache or not.  If 
  9707.  you increase the size of the cache, then you'll probably want to increase the 
  9708.  size of the table as well.  The table size is controlled by the blkhash 
  9709.  option.  Ideally, it should be set to a prime number somewhat larger than 
  9710.  blkcache... or simply the largest possible value, since hash table entries are 
  9711.  small. The default is 61, and the upper bound is 300. 
  9712.  
  9713.  Syncing 
  9714.  
  9715.  Elvis has a sync option which, if set, causes elvis to force all dirty blocks 
  9716.  out to disk occasionally.  This is a very slow operation, so the sync option 
  9717.  is normally turned off. If elvis seems to be running exceptionally slowly, 
  9718.  then you might want to verify that sync is off. You can check it by giving the 
  9719.  command ":set sync?". 
  9720.  
  9721.  Temporary files 
  9722.  
  9723.  The session file, and any other temporary files, should be stored on a local 
  9724.  hard disk.  Storing them on a network drive will slow elvis down a lot. 
  9725.  
  9726.  The session option indicates where the current session file is stored, and the 
  9727.  sessionpath option indicates which directories elvis looked through when 
  9728.  deciding where to put the session file. These are read-only options, since it 
  9729.  is too late to choose a new location for the session file after the session 
  9730.  file is already created. If you need to force elvis to store its session files 
  9731.  in a different directory, you should set the SESSIONPATH environment variable 
  9732.  to a list of acceptable directories.  Elvis will use the first directory from 
  9733.  that list which exists and is writable. 
  9734.  
  9735.  The directory option tells elvis where to store other temporary files, such as 
  9736.  those used for piping text through external programs.  You can change its 
  9737.  value at any time.  (Note: the real vi also has a directory option, but only 
  9738.  allows you to change it during initialization.) 
  9739.  
  9740.  Screen updates 
  9741.  
  9742.  Options which add information to the bottom row of the window, such as ruler 
  9743.  and showmode, can slow down screen updates. If speed is critical, you should 
  9744.  turn those options off. 
  9745.  
  9746.  The optimize option attempts to eliminate superfluous screen updates while a 
  9747.  macro is executing. It is normally on, but you may want to verify that. Some 
  9748.  animation macros force it off. 
  9749.  
  9750.  Elvis also has an animation option which, if optimize is on, causes elvis to 
  9751.  bypass some of the animation steps.  The default value is 3.  If animations 
  9752.  look choppy then try reducing it to 1.  Or set it to 10 or so for faster 
  9753.  animation. 
  9754.  
  9755.  The exrefresh option controls whether elvis should refresh the screen after 
  9756.  each line output by an ex command, or wait until the command completes and 
  9757.  then update the screen once. It is normally off, so the screen is only updated 
  9758.  once. 
  9759.  
  9760.  Interestingly, the syntax-coloring display mode seems to run about as fast as 
  9761.  the normal display mode.  One possible exception would be if you're running 
  9762.  elvis over a slow modem connection then the extra escape sequences required 
  9763.  for sending color information may slow down screen updates. 
  9764.  
  9765.  If you have long lines, then elvis may run somewhat faster when the wrap 
  9766.  option is set.  This is because elvis always formats entire lines, even if 
  9767.  only part of the line is visible on the screen, and the "nowrap" display style 
  9768.  shows more long lines (one per row) than the "wrap" display style. 
  9769.  
  9770.  Input 
  9771.  
  9772.  The pollfrequency option indicates how often elvis checks for an abort request 
  9773.  from the user.  (Abort requests are usually given by typing ^C or by clicking 
  9774.  on a window while a macro or other time-consuming command is running). 
  9775.  Smaller numbers give a quicker response to an abort request, but will cause 
  9776.  the command itself to run slower. 
  9777.  
  9778.  The keytime option indicates how long elvis should wait after receiving an Esc 
  9779.  character to distinguish between the <Esc> key, and some other function key 
  9780.  which begins with an Esc. Longer times are more reliable, especially when 
  9781.  you're running over a network. But shorter times allow a quicker response to 
  9782.  the <Esc> key. 
  9783.  
  9784.  MS-DOS-specific tips 
  9785.  
  9786.  The single biggest improvement you can make is to switch from the 16-bit 
  9787.  MS-DOS version to the 32-bit text-mode Win32 version.  It only runs under 
  9788.  Windows95 or WindowsNT, not MS-DOS, but you can make it run in full-screen 
  9789.  mode which feels like MS-DOS.  And it is *much* faster, because I really had 
  9790.  to mangle the MS-DOS version of elvis to make it fit in the lower 640k. 
  9791.  
  9792.  The fancier ANSI drivers such as NANSI.SYS also help.  They allow elvis to 
  9793.  redraw the screen very quickly.  The URLS section of this chapter tells you 
  9794.  where you can find NANSI.SYS on the Internet. 
  9795.  
  9796.  Installing smartdrv.exe can be a big help. Storing temporary files on a RAM 
  9797.  disk (in extended/expanded memory please!) can also help. 
  9798.  
  9799.  Elvis also has a compile-time option, controlled by the FEATURE_RAM 
  9800.  declaration in config.h, which allows elvis to store its buffers in EMS/XMS 
  9801.  memory instead of a file.  This makes elvis run much faster, but it has some 
  9802.  disadvantages.  If elvis crashes, there will be no way to recover the contents 
  9803.  of the edit buffers.  Also the Microsoft functions for accessing EMS/XMS 
  9804.  memory are very bulky, and also require a fairly large buffer; so if you 
  9805.  enable FEATURE_RAM, then you must disable most of the other FEATURE_XXXX 
  9806.  features in config.h, and even then elvis may run out of memory occasionally. 
  9807.  If you enable FEATURE_RAM, then to actually use that feature, you must invoke 
  9808.  elvis with "-f ram" on the command line. 
  9809.  
  9810.  If you often use "-b 2048" or "-f ram", then you might consider setting up a 
  9811.  batch file which runs them.  For example, you could create a elvis.bat file 
  9812.  containing... 
  9813.  
  9814.           elvis.exe -b 2048 -f ram %1 %2 %3 %4 %5 %6 %7 %8 %9
  9815.  
  9816.  
  9817. ΓòÉΓòÉΓòÉ 1.17. Elvis 2.1 Quick Reference ΓòÉΓòÉΓòÉ
  9818.  
  9819.  
  9820.  
  9821. .----------------------.-----------------------.-----------------------------.
  9822. | VISUAL MOVEMENT CMDS | VISUAL EDIT CMDS      | EX COMMANDS [2]             |
  9823. | h    Move left       | i    Insert           | :q!      QUIT, NO SAVE      |
  9824. | j    Move down       | a    Append           | :x       SAVE & QUIT        |
  9825. | k    Move up         | o    Open line after  | :qa      Quit all windows   |
  9826. | l    Move right      | O    Open line before | :h topic Help               |
  9827. | xxxG Go to line xxx  | R    Replace          | :w file  Write this file    |
  9828. | /xxx Search forward  | x    Delete char      | :n       Edit next file     |
  9829. | ?xxx Search backward | X    Delete prev char | :e file  Edit other file    |
  9830. | n    Repeat search   | p    Paste after [3]  | :se ...  Set/show options   |
  9831. |----------------------| P    Paste before [3] | :lp      Print              |
  9832. | VISUAL WINDOW CMDS   | u    Undo             | :ta name Look up a tag      |
  9833. | ^Ws  Split window    |-----------------------| :mak     Compile, find error|
  9834. | ^W^W Go to next win  | VISUAL OPERATORS [4]  | :er      Find next error    |
  9835. | ^Wq  SAVE & QUIT     | <    Shift left       |-----------------------------|
  9836. | ^Wd  Toggle display  | >    Shift right      | OPTIONS [6]                 |
  9837. |----------------------| =    Adjust via ep [5]| readeol    File type        |
  9838. |VISUAL MISCELLANY     | !xxx Filter thru xxx  | bufdisplay How to display   |
  9839. | ZZ   SAVE & QUIT     | c    Change           | tabstop    Width of tab char|
  9840. | ^L   Refresh screen  | d    Delete           | shiftwidth For < > operators|
  9841. | :    Run 1 ex command| y    Yank             | inputtab   Role of <tab> key|
  9842. | Q    Run many ex cmds|-----------------------| magic      Searching syntax |
  9843. | K    Look up word [7]| VISUAL SELECTIONS [8] | ruler      Show line/columns|
  9844. | Esc  Cancel command  | v    Select chars     | showmode   Show input state |
  9845. | ^G   Show fil info   | V    Select lines     | lptype     Printer type     |
  9846. | .    Repeat change   | ^V   Select rectangle | lpout      Printer port     |
  9847. ^----------------------^-----------------------^-----------------------------^
  9848.  
  9849.  
  9850. NOTES: 
  9851.  
  9852.    1. This is not a complete list of commands and options. I just tried to fit 
  9853.       the most interesting and useful items in the smallest possible space. 
  9854.       Control characters are represented as a caret and a letter; e.g., ^X 
  9855.       means <Control-X>. 
  9856.    2. All ex command begin with a ':' keystroke, and end with a carriage 
  9857.       return. Try :help ex for more information. 
  9858.    3. Most commands which delete or change text will save the old text in a cut 
  9859.       buffer before making the change. The p and P commands copy text from the 
  9860.       cut buffer back into the file. 
  9861.    4. Operator commands are normally  followed by a movement command; the 
  9862.       operator then acts on the text between the cursor's original position, 
  9863.       and the position that the movement command would move it to. For example, 
  9864.       "d24G" deletes all lines between the current line and line 24. 
  9865.       Alternatively, you could use a VISUAL SELECTION command and some movement 
  9866.       commands to highlight text, and then hit the operator to act on that 
  9867.       text. 
  9868.    5. The = operator sends text through an external filter program, named by 
  9869.       the equalprg option. 
  9870.    6. Options are accessed via the :set command. 
  9871.    7. The K command runs the program named by the keywordprg option; as an 
  9872.       argument, it passes whatever word the cursor is on. This can provide 
  9873.       convenient access to an on-line manual. 
  9874.    8. The visual selection commands can be by hitting the <Esc> key. 
  9875.  
  9876.  
  9877. ΓòÉΓòÉΓòÉ 1.18. Elvis 2.1 How To ΓòÉΓòÉΓòÉ
  9878.  
  9879.  
  9880.  
  9881. C. How to... 
  9882.  
  9883. This is a collection of "How to" topics, each with short discussion. The 
  9884. following catagories of topics are available: 
  9885.  
  9886.      Initialization - Change the default behavior of elvis 
  9887.      Word Completion - Alter word completion via the Tab key 
  9888.      Whitespace - The relationship between tabs and spaces 
  9889.      Buffers - Cut buffers and edit buffers 
  9890.      X-Windows - The "x11" user interface 
  9891.      Windows95/98/NT - The "windows" user interface 
  9892.      Miscellany - Things that didn't fit anywhere else 
  9893.  
  9894.  If you're using elvis to view this file, you can search for a topic simply by 
  9895.  using the / command. To limit the search to topic lines only, begin the 
  9896.  regular expression with "^<dt>.*". For example you could search for "spaces" 
  9897.  in a topic line via the following: 
  9898.  
  9899.           /^<dt>.*spaces
  9900.  
  9901.  Sometimes there are multiple topics that use the same word or phrase. If the 
  9902.  first one that it finds isn't the one you want, then you can use the n command 
  9903.  to find the next one. 
  9904.  
  9905.  In addition, the lib/exalias.eg script distributed with elvis contains a 
  9906.  "howto" alias which loads this file and searches for a given topic. If you've 
  9907.  loaded the aliases from that file, you display any topic in a a separate 
  9908.  window with via a command such as this: 
  9909.  
  9910.           :howto spaces
  9911.  
  9912.  
  9913.  C.1 Initialization 
  9914.  
  9915.  Initialization  for each file 
  9916.            The lib/elvis.arf file is executed after a file has been read; you 
  9917.            can put file initialization commands there. 
  9918.  Make file initialization be language-sensitive 
  9919.            If the filename extension indicates the file's language, and the 
  9920.            language is described in the lib/elvis.syn file, then you can use 
  9921.            the knownsyntax() function to check the language, like this: 
  9922.  
  9923.                               :if knownsyntax(filename) == "perl"
  9924.                               :then set ccprg="perl -c ($1?$1:$2) 2>&1 | perlerr"
  9925.  
  9926.            (The perlerr perl script converts perl's error messages into a form 
  9927.            that elvis can parse. It is given in the Tips chapter.) 
  9928.  
  9929.            You could also use the extension() function instead of 
  9930.            knownsyntax(); it doesn't depend on the lib/elvis.syn file. As a 
  9931.            last resort, you might consider using the x flag of the :s command. 
  9932.  Change  the default  settings 
  9933.            Before the first buffer is loaded or the first window is created, 
  9934.            and buffer/window options you set will be used as the defaults for 
  9935.            the buffers/windows that are created later. In other words, although 
  9936.            setting a buffer-specific option like equalprg or a window-specific 
  9937.            option like ruler interactively will only affect that buffer or 
  9938.            window, setting the same option in the lib/elvis.ini or ~/.exrc file 
  9939.            changes the default for all buffers/windows. 
  9940.  
  9941.            However, the lib/elvis.brf and lib/elvis.arf files typically change 
  9942.            some of those options, so the defaults might not be used very long 
  9943.            before they're changed. 
  9944.  Have a separate ~/.exrc  and ~/.elvisrc file under Unix 
  9945.            This is easy. The lib/elvis.ini file controls this, and the default 
  9946.            version does it in a very convenient way: It looks first for 
  9947.            .elvisrc and runs it if it exists; else it looks for .exrc and runs 
  9948.            that. 
  9949.  
  9950.            If you want elvis to run both of them, then add the following line 
  9951.            to your .elvisrc file: 
  9952.  
  9953.                               :source ~/.exrc
  9954.  
  9955.  
  9956.  
  9957.  C.2 Word Completion 
  9958.  
  9959.  Disable  word  completion on the ex command line 
  9960.            You need to set the inputtab option for the (Elvis ex history) 
  9961.            buffer to "tab". You can do that via the following command: 
  9962.  
  9963.                               :(Elvis ex history)set inputtab=tab
  9964.  
  9965.  Disable  identifier  completion on the regular expression prompt line 
  9966.            This is similar to word completion on the ex command line. To 
  9967.            disable it, you need to set the inputtab option for the (Elvis 
  9968.            regexp history) buffer, like this: 
  9969.  
  9970.                               :(Elvis regexp history)set inputtab=tab
  9971.  
  9972.  Enable  identifier  completion in normal edit buffers 
  9973.            Set the buffer's inputtab option to "identifier". To make this the 
  9974.            default, set it in the .exrc file (or elvis.rc for non-Unix 
  9975.            systems). The command is: 
  9976.  
  9977.                               :set inputtab=identifier
  9978.  
  9979.            After that, each time you hit the <Tab> key elvis will search 
  9980.            through the tags file for any matching tags, and add as many 
  9981.            characters as possible. If it completes the entire tag name, it does 
  9982.            not append a space or other character, which is a little different 
  9983.            from other types of name completion. Also, in the syntax display 
  9984.            mode it will not attempt completion if the partial word happens to 
  9985.            be a complete keyword or otherword. 
  9986.  
  9987.  
  9988.  C.3 Whitespace 
  9989.  
  9990.  Use  spaces instead of tabs 
  9991.            In the traditional vi, the only way to make elvis use spaces instead 
  9992.            of tabs was to set the tabstop option to the largest possible value, 
  9993.            and then :map ^I to ^T. This made existing tabbed files look bad, 
  9994.            and it didn't work well for tabs embedded in a line (instead of just 
  9995.            in the line's indentation whitespace). Elvis has a better way. 
  9996.  
  9997.            In elvis, you can set the inputtab option to "spaces" to make the 
  9998.            <Tab> key insert the appropriate number of spaces into a line. This 
  9999.            works even if the cursor isn't in the line's indentation whitespace. 
  10000.  
  10001.            In addition, the autotab option controls the shifting commands (the 
  10002.            :< and :> commands in ex, and the < and > operators in visual mode). 
  10003.            To make those commands use only spaces, autotab should be off. 
  10004.  
  10005.                               :set inputtab=spaces noautotab
  10006.  
  10007.            To convert existing files to use only spaces, you should use an 
  10008.            external program such as "col -bx" under Unix. 
  10009.  Change  the tabstops 
  10010.            Many people don't like the fact that the <Tab> key indents text by 8 
  10011.            columns. That's so wide that it quickly pushes the writer's source 
  10012.            code off the right edge of the screen. 
  10013.  
  10014.            However, you almost certainly do not want to change the tabstop 
  10015.            option because most other software, and most printers and terminals, 
  10016.            also assume that tabs are 8 characters wide. If you edit files with 
  10017.            tabstop set to 4 or 5, then your files will look very strange when 
  10018.            viewed with anything other than elvis, or by anyone other than you. 
  10019.            So leave tabstop=8. 
  10020.  
  10021.            Instead, set the shiftwidth option to the desired indentation 
  10022.            amount, and either get in the habit of typing ^T to increase 
  10023.            indentation, or :map! the <Tab> key to ^T in input mode. 
  10024.  
  10025.                               :set shiftwidth=5
  10026.                               :map! ^V^I ^V^T
  10027.  
  10028.            Note that when you're typing in the above :map command, you'll need 
  10029.            to type an extra ^V before each ^V or ^T. 
  10030.  
  10031.            Also, this map has the unfortunate side-effect of making the <Tab> 
  10032.            increase indentation even if the cursor is somewhere later in the 
  10033.            line (unless you type ^V before it). This is one good reason to skip 
  10034.            the map, and get in the habit of using ^T to increase indentation. 
  10035.            The autotab option helps here, too. 
  10036.  
  10037.  
  10038.  C.4 Buffers 
  10039.  
  10040.  Switch  to a different buffer in the same window 
  10041.            This is easier that you might think. On an ex command line, if you 
  10042.            give an address but no command then elvis will move the cursor to 
  10043.            there. So to switch buffers all you need to do is give an address 
  10044.            that's in a different buffer. In elvis, you do this by giving the 
  10045.            buffer's name (or number) in parentheses (and the closing 
  10046.            parenthesis is optional). For example, to switch to buffer #1 all 
  10047.            you need to do is... 
  10048.  
  10049.                               :(1
  10050.  
  10051.            Or you can switch to "main.c" like this: 
  10052.  
  10053.                               :(main.c
  10054.  
  10055.            Of course, the buffer must exist before you can switch to it. 
  10056.            Another thing to keep in mind is, switching buffers doesn't 
  10057.            necessarily force you to save the old buffer first. Any changes you 
  10058.            made to the old buffer are not lost -- you can switch back to the 
  10059.            original buffer again if you wish. 
  10060.  Display  an edit buffer (or cut buffer) in a separate window 
  10061.            This is similar to switching edit buffers (the previous topic). The 
  10062.            main difference is that instead of giving no command, you should 
  10063.            give the :split command. In this context, the closing parenthesis is 
  10064.            required. 
  10065.  
  10066.                               :(1)split
  10067.  
  10068.            Or, create a window showing the "main.c" buffer: 
  10069.  
  10070.                               :(main.c)split
  10071.  
  10072.  Edit a cut buffer 
  10073.            Editing a cut buffer can be handy when you're trying to fix a 
  10074.            defective macro. This is possible in elvis, because elvis uses an 
  10075.            ordinary edit buffer to store the contents of a cut buffer. The 
  10076.            names of the cut buffers are of the form (Elvis cut buffer X), where 
  10077.            X is the name of the cut buffer (a single letter or digit). 
  10078.            Consequently, you could create a window showing cut buffer "a like 
  10079.            this: 
  10080.  
  10081.                               :(Elvis cut buffer a)split
  10082.  
  10083.            Of course, the "a cut buffer must exist for this to work. 
  10084.  
  10085.            Since the name is so long, elvis supports a special short-hand 
  10086.            notation for cut buffer names. In parentheses, if the first 
  10087.            character is " and the remainder of the buffer name is a single 
  10088.            letter, then elvis uses the buffer which contains that cut buffer's 
  10089.            contents. The following command also creates a window showing the "a 
  10090.            cut buffer: 
  10091.  
  10092.                               :("a)sp
  10093.  
  10094.            Elvis doesn't store "undo" versions for cut buffers, and you can't 
  10095.            yank a buffer into itself. Other than that, editing should be pretty 
  10096.            normal. The type of data in the buffer (characters, lines, or 
  10097.            rectangle) is stored in an option named putstyle. 
  10098.  Free  an edit buffer 
  10099.            Elvis has no command for discarding old edit buffers. Under some 
  10100.            circumstances it will free them automatically, if they aren't being 
  10101.            used. It rarely matters, though. 
  10102.  
  10103.  
  10104.  C.5 X-Windows 
  10105.  
  10106.  Run  elvis in an xterm instead of creating a new window 
  10107.            You can force elvis to use the termcap interface by adding a 
  10108.            -Gtermcap flag. If you do this often, you may wish to create a shell 
  10109.            script, alias, or shell function which runs elvis with -Gtermcap. 
  10110.            Here's an example of shell script: 
  10111.  
  10112.                               #!/bin/sh
  10113.                               exec elvis -Gtermcap "$@"
  10114.  
  10115.            If you never want to use the "x11" user interface, then you should 
  10116.            probably reconfigure elvis to leave it it out. This will make elvis 
  10117.            considerably smaller. To do this, go into the directory where elvis' 
  10118.            source code resides and execute the following shell commands: 
  10119.  
  10120.                               make clean
  10121.                               configure --with-x=no
  10122.                               make
  10123.  
  10124.  Make the text  cursor more visible under X11 
  10125.            For a notebook computer, the normal blinking cursor may be hard to 
  10126.            see. You can make it stop blinking by adding the following command 
  10127.            to your .exrc file: 
  10128.  
  10129.                               :set blinktime=0
  10130.  
  10131.  Indicate when elvis owns  the current X11 selection 
  10132.            The cursor can be configured to have a special color whenever elvis 
  10133.            owns the current selection. To do this, use the :color command to 
  10134.            set both the foreground and background color of the cursor. The 
  10135.            "background" color will be used when elvis owns the selection, and 
  10136.            the "foreground" color will be used otherwise. Here's an example 
  10137.            which turns the cursor green when elvis owns the selection: 
  10138.  
  10139.                               :color cursor red on green
  10140.  
  10141.  Change  the default font size 
  10142.            In your .exrc file, you can set the normalfont, boldfont, and 
  10143.            italicfont options to anything you want. These settings will 
  10144.            override the defaults. If you set only the normalfont and leave the 
  10145.            others unset, then elvis will derive the others from the normal 
  10146.            font. 
  10147.  
  10148.                               :set normalfont=7x14
  10149.  
  10150.            If you just want to use a smaller size of the Courier font, you can 
  10151.            use the :courier alias. It takes a single parameter: the point size 
  10152.            of the font to use. The default font is 18-point Courier, and most 
  10153.            systems also have 14-point Courier fonts which works well. 
  10154.  
  10155.                               :courier 14
  10156.  
  10157.  Run a program from within elvis, in parallel, under X11 
  10158.            The tricky part here is that elvis tries to read the program's 
  10159.            stdout and stderr, so the output can be displayed in elvis' window. 
  10160.            Elvis must wait until after all text has been read from 
  10161.            stdout/stderr. So to run in parallel, you must redirect the 
  10162.            program's stdout/stderr to /dev/null, like this: 
  10163.  
  10164.                               :!xeyes >/dev/null 2>&1 &
  10165.  
  10166.            If you want to write data out to the program (:w !program) then it 
  10167.            becomes even more complex. This is because pipes can only contain a 
  10168.            finite amount of data, so when elvis is redirecting stdin as well as 
  10169.            stdout/stderr, it uses a temporary file for stdin. Elvis deletes 
  10170.            that file as soon as the program returns -- which, for a program run 
  10171.            in parallel, happens immediately even though the program hasn't had 
  10172.            a chance to read the data from that file yet. The solution is to 
  10173.            write the data into a temporary file sequentially, and then start a 
  10174.            parallel command line which runs the program and then deletes the 
  10175.            temporary file, like this: 
  10176.  
  10177.                               :w !cat >$$; (xv $$; rm $$) >/dev/null 2>&1 &
  10178.  
  10179.            Yes, that's nasty. I plan to clean that up some day, by making elvis 
  10180.            smart enough to avoid reading stdout/stderr when the command line 
  10181.            ends with a '&' character. 
  10182.  
  10183.  
  10184.  C.6 Windows95/98/NT 
  10185.  
  10186.  Set the initial working directory 
  10187.            Create a shortcut to WinElvis, and then edit the shortcut's 
  10188.            properties. The "Start in" property gives the program's initial 
  10189.            working directory. 
  10190.  Change the  working directory each time a file is loaded 
  10191.            First, let me say that I don't recommend this because the real vi 
  10192.            doesn't behave like this, so it is likely to confuse some people. 
  10193.  
  10194.            But it you really want to do this, then you should add the following 
  10195.            line to the end of your lib/elvis.arf file: 
  10196.  
  10197.                               try cd (dirdir(filename))
  10198.  
  10199.  Select whole lines in WinElvis 
  10200.            To select whole lines in WinElvis, move the mouse pointer to the 
  10201.            window's left margin. The mouse pointer should change shape when 
  10202.            you're in the margin. Click the left mouse button there to begin 
  10203.            marking lines; hold the button as you move the mouse to the other 
  10204.            end of the range of lines and then release it. 
  10205.  
  10206.  
  10207.  C.7 Miscellany 
  10208.  
  10209.  Test  for certain text within a file 
  10210.            This is sometimes handy in scripts and aliases. For example, the 
  10211.            elvis.arf script uses this to detect mode lines and the "hash pling" 
  10212.            header on other types of scripts, such as shell scripts which start 
  10213.            with "#!/bin/sh". 
  10214.  
  10215.            One nice trick is to use the x flag of elvis' :s command. It not 
  10216.            only detects text, but can incorporate that text into the commands. 
  10217.            For example, to compute the total of all numbers in all lines, you 
  10218.            could... 
  10219.  
  10220.                               :set t=0
  10221.                               :%s/\<[[:digit:]]\+\>/let t = t + &/gx
  10222.                               :set t?
  10223.  
  10224.            Note that this series of commands does not affect the edit buffer. 
  10225.            The x flag prevents the substitution from taking place; the 
  10226.            replacement text is executed instead. 
  10227.  
  10228.            You can also use the :try command to run a search command, and then 
  10229.            use :then and :else to act differently depending on whether the 
  10230.            search succeeded or not. 
  10231.  
  10232.                               :try /Yow!
  10233.                               :then echo Zippy was here
  10234.                               :else echo Where in the world is Zippy the Pinhead?
  10235.  
  10236.            You can also use the current("word") function to find the word at 
  10237.            the cursor location. 
  10238.  
  10239.                               :let w=current("word")
  10240.  
  10241.  Find the  short name (or group name) of an option 
  10242.            Finding the long name of an option is easy, thanks to name 
  10243.            completion. To find the short name of an option, or the name of its 
  10244.            group, run the :set! command (with a !) and the long option name, 
  10245.            followed by a ? character. (For non-Boolean options, the ? is 
  10246.            optional.) 
  10247.  
  10248.                               :set! wrapmargin?
  10249.  
  10250.            This will produce output like "win.wm=0", indicating that the short 
  10251.            name is "wm", the group name is "win" (so each window has its own 
  10252.            margin), and the value is 0. 
  10253.  
  10254.  
  10255. ΓòÉΓòÉΓòÉ 1.19. printdoc.bat ΓòÉΓòÉΓòÉ
  10256.  
  10257. REM () { :; }
  10258. REM This little script will print the documentation.  It does this by invoking
  10259. REM elvis on each documentation file in turn, telling elvis to print the file
  10260. REM via its :lpr command and then quit.  The complete manual should be about
  10261. REM 200 pages long.
  10262. REM
  10263. REM   THIS ASSUMES YOU HAVE ALREADY SET UP THE PRINTING OPTIONS!
  10264. REM
  10265. REM This script should work under DOS, Windows/NT, and the UNIX "ksh" shell or
  10266. REM clones such as "bash".  The first line of this file allows "sh" to accept
  10267. REM these REM lines without complaint, by defining it as a do-nothing function.
  10268.  
  10269. elvis -Gquit -clp elvis.html
  10270. elvis -Gquit -clp elvisvi.html
  10271. elvis -Gquit -clp elvisinp.html
  10272. elvis -Gquit -clp elvisex.html
  10273. elvis -Gquit -clp elvisre.html
  10274. elvis -Gquit -clp elvisopt.html
  10275. elvis -Gquit -clp elvisdm.html
  10276. elvis -Gquit -clp elvisgui.html
  10277. elvis -Gquit -clp elvisos.html
  10278. elvis -Gquit -clp elvisses.html
  10279. elvis -Gquit -clp elviscut.html
  10280. elvis -Gquit -clp elvismsg.html
  10281. elvis -Gquit -clp elvisexp.html
  10282. elvis -Gquit -clp elvistag.html
  10283. elvis -Gquit -clp elvisnet.html
  10284. elvis -Gquit -clp elvistip.html
  10285. elvis -Gquit -clp elvistrs.msg
  10286. elvis -Gquit -clp elvisqr.html
  10287. elvis -Gquit -clp elvis.man
  10288. elvis -Gquit -clp ctags.man
  10289. elvis -Gquit -clp ref.man
  10290. elvis -Gquit -clp fmt.man
  10291.  
  10292.  
  10293. ΓòÉΓòÉΓòÉ 2. External links ΓòÉΓòÉΓòÉ
  10294.  
  10295. This chapter contains all external links referenced in this book - either link 
  10296. is an Unified Resource Locator (URL) or simply to a local file which is not a 
  10297. part of this book. 
  10298.  
  10299.  
  10300. ΓòÉΓòÉΓòÉ 2.1. mailto:herbert@paulina.shnet.org ΓòÉΓòÉΓòÉ
  10301.  
  10302.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10303.  
  10304.                         mailto:herbert@paulina.shnet.org
  10305.  
  10306.  
  10307. ΓòÉΓòÉΓòÉ 2.2. http://fly.hiwaay.net/~darren/ctags.html ΓòÉΓòÉΓòÉ
  10308.  
  10309.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10310.  
  10311.                     http://fly.hiwaay.net/~darren/ctags.html
  10312.  
  10313.  
  10314. ΓòÉΓòÉΓòÉ 2.3. ftp://ftp.oce.nl/pub/misc/vim ΓòÉΓòÉΓòÉ
  10315.  
  10316.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10317.  
  10318.                           ftp://ftp.oce.nl/pub/misc/vim
  10319.  
  10320.  
  10321. ΓòÉΓòÉΓòÉ 2.4. ftp://ftp.cs.pdx.edu/pub/elvis/README.html ΓòÉΓòÉΓòÉ
  10322.  
  10323.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10324.  
  10325.                    ftp://ftp.cs.pdx.edu/pub/elvis/README.html
  10326.  
  10327.  
  10328. ΓòÉΓòÉΓòÉ 2.5. ftp://ftp.cs.pdx.edu/pub/elvis/unreleased/README.html ΓòÉΓòÉΓòÉ
  10329.  
  10330.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10331.  
  10332.               ftp://ftp.cs.pdx.edu/pub/elvis/unreleased/README.html
  10333.  
  10334.  
  10335. ΓòÉΓòÉΓòÉ 2.6. news:comp.editors ΓòÉΓòÉΓòÉ
  10336.  
  10337.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10338.  
  10339.                                 news:comp.editors
  10340.  
  10341.  
  10342. ΓòÉΓòÉΓòÉ 2.7. http://www.fh-wedel.de/elvis/index.html ΓòÉΓòÉΓòÉ
  10343.  
  10344.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10345.  
  10346.                      http://www.fh-wedel.de/elvis/index.html
  10347.  
  10348.  
  10349. ΓòÉΓòÉΓòÉ 2.8. http://www.phys.columbia.edu/~flame/vi.htm ΓòÉΓòÉΓòÉ
  10350.  
  10351.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10352.  
  10353.                    http://www.phys.columbia.edu/~flame/vi.htm
  10354.  
  10355.  
  10356. ΓòÉΓòÉΓòÉ 2.9. http://www.cs.vu.nl/~tmgil/vi.html ΓòÉΓòÉΓòÉ
  10357.  
  10358.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10359.  
  10360.                        http://www.cs.vu.nl/~tmgil/vi.html
  10361.  
  10362.  
  10363. ΓòÉΓòÉΓòÉ 2.10. http://www.math.fu-berlin.de/~guckes/vi/features.html ΓòÉΓòÉΓòÉ
  10364.  
  10365.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10366.  
  10367.               http://www.math.fu-berlin.de/~guckes/vi/features.html
  10368.  
  10369.  
  10370. ΓòÉΓòÉΓòÉ 2.11. http://www.bsyse.wsu.edu/~rnelson/editors/editors.htm ΓòÉΓòÉΓòÉ
  10371.  
  10372.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10373.  
  10374.               http://www.bsyse.wsu.edu/~rnelson/editors/editors.htm
  10375.  
  10376.  
  10377. ΓòÉΓòÉΓòÉ 2.12. http://home.hiwaay.net/~darren/ctags/ ΓòÉΓòÉΓòÉ
  10378.  
  10379.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10380.  
  10381.                       http://home.hiwaay.net/~darren/ctags/
  10382.  
  10383.  
  10384. ΓòÉΓòÉΓòÉ 2.13. http://wafu.netgate.net/tama/unix/global.html ΓòÉΓòÉΓòÉ
  10385.  
  10386.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10387.  
  10388.                   http://wafu.netgate.net/tama/unix/global.html
  10389.  
  10390.  
  10391. ΓòÉΓòÉΓòÉ 2.14. http://www.cs.berkeley.edu/~amc/Par/ ΓòÉΓòÉΓòÉ
  10392.  
  10393.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10394.  
  10395.                       http://www.cs.berkeley.edu/~amc/Par/
  10396.  
  10397.  
  10398. ΓòÉΓòÉΓòÉ 2.15. ftp://alf.uib.no/pub/vi ΓòÉΓòÉΓòÉ
  10399.  
  10400.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10401.  
  10402.                              ftp://alf.uib.no/pub/vi
  10403.  
  10404.  
  10405. ΓòÉΓòÉΓòÉ 2.16. ftp://ftp.oce.nl/pub/vim ΓòÉΓòÉΓòÉ
  10406.  
  10407.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10408.  
  10409.                             ftp://ftp.oce.nl/pub/vim
  10410.  
  10411.  
  10412. ΓòÉΓòÉΓòÉ 2.17. http://www.clark.net/pub/dickey/vile/vile.html ΓòÉΓòÉΓòÉ
  10413.  
  10414.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10415.  
  10416.                  http://www.clark.net/pub/dickey/vile/vile.html
  10417.  
  10418.  
  10419. ΓòÉΓòÉΓòÉ 2.18. http://www.sleepycat.com/vi/ ΓòÉΓòÉΓòÉ
  10420.  
  10421.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10422.  
  10423.                           http://www.sleepycat.com/vi/
  10424.  
  10425.  
  10426. ΓòÉΓòÉΓòÉ 2.19. http://www.snafu.de/~ramo/WinViEn.htm ΓòÉΓòÉΓòÉ
  10427.  
  10428.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10429.  
  10430.                       http://www.snafu.de/~ramo/WinViEn.htm
  10431.  
  10432.  
  10433. ΓòÉΓòÉΓòÉ 2.20. http://ourworld.compuserve.com/homepages/fwiarda/software.htm ΓòÉΓòÉΓòÉ
  10434.  
  10435.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10436.  
  10437.           http://ourworld.compuserve.com/homepages/fwiarda/software.htm
  10438.  
  10439.  
  10440. ΓòÉΓòÉΓòÉ 2.21. ftp://ftp.funet.fi/pub/doc/posix/p1003.2a/d8/5.10 ΓòÉΓòÉΓòÉ
  10441.  
  10442.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10443.  
  10444.                 ftp://ftp.funet.fi/pub/doc/posix/p1003.2a/d8/5.10
  10445.  
  10446.  
  10447. ΓòÉΓòÉΓòÉ 2.22. ftp://ftp.funet.fi/pub/doc/posix/p1003.2a/d8/5.35 ΓòÉΓòÉΓòÉ
  10448.  
  10449.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10450.  
  10451.                 ftp://ftp.funet.fi/pub/doc/posix/p1003.2a/d8/5.35
  10452.  
  10453.  
  10454. ΓòÉΓòÉΓòÉ 2.23. http://www.de.freebsd.org/de/doc/usd/12.vi/paper.html ΓòÉΓòÉΓòÉ
  10455.  
  10456.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10457.  
  10458.               http://www.de.freebsd.org/de/doc/usd/12.vi/paper.html
  10459.  
  10460.  
  10461. ΓòÉΓòÉΓòÉ 2.24. http://alumni.caltech.edu/~dank/nansi/ ΓòÉΓòÉΓòÉ
  10462.  
  10463.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10464.  
  10465.                      http://alumni.caltech.edu/~dank/nansi/
  10466.  
  10467.  
  10468. ΓòÉΓòÉΓòÉ 2.25. mailto:kirkenda@cs.pdx.edu ΓòÉΓòÉΓòÉ
  10469.  
  10470.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10471.  
  10472.                            mailto:kirkenda@cs.pdx.edu
  10473.  
  10474.  
  10475. ΓòÉΓòÉΓòÉ 2.26. news:rec.humor ΓòÉΓòÉΓòÉ
  10476.  
  10477.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       The link you selected points to an external resource. Click the URL below to launch IBM Web Explorer
  10478.  
  10479.                                  news:rec.humor
  10480.