|
|
1.1 ! root 1: ! 2: Elvis 1.4 DIFFERENCES BETWEEN ELVIS & BSD VI/EX Page 7-1 ! 3: ! 4: ! 5: E7. DIFFERENCES BETWEEN ELVIS & BSD VI/EXF ! 6: ! 7: ! 8: E7.1 ExtensionsF ! 9: ! 10: :mkexrc ! 11: :mk ! 12: ! 13: This EX command saves the current :set and :map configurations ! 14: in the ".exrc" file in your current directory. ! 15: ! 16: :Next ! 17: :previous ! 18: :N ! 19: :pre ! 20: ! 21: These commands move backwards through the args list. ! 22: ! 23: zz ! 24: ! 25: In visual command mode, the (lowercase) "zz" command will center ! 26: the current line on the screen, like "z=". ! 27: ! 28: . ! 29: ! 30: The default count value for . is the same as the previous ! 31: command which . is meant to repeat. However, you can supply a new ! 32: count if you wish. For example, after "3dw", "." will delete 3 ! 33: words, but "5." will delete 5 words. ! 34: ! 35: ". ! 36: ! 37: The text which was most recently input (via a "cw" command, or ! 38: something similar) is saved in a cut buffer called ". (which is a ! 39: pretty hard name to write in an English sentence). ! 40: ! 41: K ! 42: ! 43: In visual command mode, you can move the cursor onto a word and ! 44: press shift-K to have Elvis run a reference program to look that ! 45: word up. This command alone is worth the price of admission! See ! 46: the ctags and ref programs. ! 47: ! 48: # ! 49: ! 50: In visual command mode, you can move the cursor onto a number ! 51: and then hit ## or #+ to increment that number by 1. To increment ! 52: it by a larger amount, type in the increment value before hitting ! 53: the initial #. The number can also be decremented or set by ! 54: hitting #- or #=, respectively. ! 55: ! 56: input ! 57: ! 58: You can backspace past the beginning of the line. ! 59: ! 60: ! 61: ! 62: ! 63: ! 64: ! 65: ! 66: ! 67: ! 68: Elvis 1.4 DIFFERENCES BETWEEN ELVIS & BSD VI/EX Page 7-2 ! 69: ! 70: ! 71: The arrow keys work in input mode. ! 72: ! 73: If you type control-A, then the text that you input last time is ! 74: inserted. You will remain in input mode, so you can backspace over ! 75: part of it, or add more to it. (This is sort of like control-@ on ! 76: the real vi, except that control-A really works.) ! 77: ! 78: Control-P will insert the contents of the cut buffer. ! 79: ! 80: Real vi can only remember up to 128 characters of input, but ! 81: Elvis can remember any amount. ! 82: ! 83: The ^T and ^D keys can adjust the indent of a line no matter ! 84: where the cursor happens to be in that line. ! 85: ! 86: You can save your file and exit Elvis directly from input mode ! 87: by hitting control-Z twice. ! 88: ! 89: Elvis supports digraphs as a way to enter non-ASCII characters. ! 90: ! 91: :set inputmode ! 92: :se im ! 93: ! 94: If you set this flag in your .exrc file, then elvis will start ! 95: up in input mode instead of visual command mode. ! 96: ! 97: :set charattr ! 98: :se ca ! 99: ! 100: Elvis can display "backslash-f" style character attributes on ! 101: the screen as you edit. The following example shows the recognized ! 102: atributes: ! 103: ! 104: normal \fBboldface\fR \fIitalics\fR \fUunderlined\fR normal ! 105: ! 106: NOTE: you must compile elvis without the -DNO_CHARATTR flag for ! 107: this to work. ! 108: ! 109: :set sync ! 110: :se sy ! 111: ! 112: After a crash, you can usually recover the altered form of the ! 113: file from the temporary file that Elvis uses. With the sync option ! 114: turned on, the odds are shifted a little more in your favor because ! 115: Elvis will perform a sync() call after each change has been written ! 116: to the temporary file. ! 117: ! 118: cursor shape ! 119: ! 120: Elvis changes the shape of the cursor to indicate which mode ! 121: you're in, if your terminal's termcap entry includes the necessary ! 122: capabilities. ! 123: ! 124: :set hideformat ! 125: :se hf ! 126: ! 127: ! 128: ! 129: ! 130: ! 131: ! 132: ! 133: ! 134: Elvis 1.4 DIFFERENCES BETWEEN ELVIS & BSD VI/EX Page 7-3 ! 135: ! 136: ! 137: This option hides format control lines. (They are displayed on ! 138: the screen as blank lines.) ! 139: ! 140: :errlist ! 141: * ! 142: elvis -m ! 143: ! 144: Elvis is clever enough to parse the error messages emitted by ! 145: many compilers. To use this feature, you should collect your ! 146: compiler's error messages into a file called "errlist"; elvis will ! 147: read this file, determine which source file caused the error ! 148: messages, start editing that file, move the cursor to the line ! 149: where the error was detected, and display the error message on the ! 150: status line. Nifty! ! 151: ! 152: ! 153: E7.2 OmissionsF ! 154: ! 155: The replace mode is a hack. It doesn't save the text that it ! 156: overwrites. ! 157: ! 158: Long lines are displayed differently -- where the real vi would ! 159: wrap a long line onto several rows of the screen, Elvis simply ! 160: displays part of the line, and allows you to scroll the screen ! 161: sideways to see the rest of it. ! 162: ! 163: The ":preserve" and ":recover" commands are missing. So is the ! 164: -r flag. I've never had a good reason to use ":preserve", and ! 165: since ":recover" is used so rarely I decided to implement it as a ! 166: separate program. There's no need to load the recovery code into ! 167: memory every time you edit a file, I figured. ! 168: ! 169: LISP support is missing. ! 170: ! 171: Due to naming conventions used for the temporary files, Elvis ! 172: can be creating no more that one new file per directory at any ! 173: given time. Any number of existing files can be edited at the same ! 174: time on multitasking computer systems, but only one new file can be ! 175: created simultaneously per directory. To relieve this problem, you ! 176: would have to edit tmp.c and virec.c This is expected to be done in ! 177: version 1.5 ! 178: ! 179: Autoindent mode acts a little different from the real vi. It is ! 180: still quite useful, but if you frequently use both vi and elvis ! 181: then the differences may be annoying. Autoindent is -1gradually-0 ! 182: improving. ! 183: ! 184: The visual "put" command cannot be repeated by hitting the . ! 185: key. ! 186: ! 187: ! 188: ! 189: ! 190: ! 191: ! 192: ! 193: ! 194: ! 195: ! 196: ! 197: ! 198:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.