.if !\n(xx .so tmac.e .SH Option descriptions .LC autoindent, ai default: noai .HP The .I autoindent option can be used to ease the preparation of structured program text. At the beginning of each .I append , .I change or .I insert command or when a new line is .I opened or created by an .I append , .I change , .I insert , or .I substitute operation within .I open or .I visual mode, .EX looks at the line being appended after, the first line .I changed or the line inserted before and calculates the amount of white space at the start of the line. It then aligns the cursor at the level of indentation so determined. .IP If the user then types lines of text in, they will continue to be justified at the displayed indenting level. If more white space is typed at the beginning of a line, the following line will start aligned with the first non-white character of the previous line. To back the cursor up to the preceding tab stop one can hit \s-2CTRL\s0(D). The tab stops going backwards are defined at multiples of the .I shiftwidth option. You .B cannot backspace over the indent, except by sending an end-of-file with a \s-2CTRL\s0(D). .IP Specially processed in this mode is a line with no characters added to it, which turns into a completely blank line (the white space provided for the .I autoindent is discarded.) Also specially processed in this mode are lines beginning with an `^' or `\(ua' and immediately followed by a \s-2CTRL\s0(D). This causes the input to be repositioned at the beginning of the line, but retaining the previous indent for the next line. Similarly, a `0' followed by a \s-2CTRL\s0(D) repositions at the beginning but without retaining the previous indent. .IP .I Autoindent doesn't happen in .I global commands or when the input is not a terminal. .LC autoprint, ap default: ap .HP The .I autoprint option causes the current line to be printed after each .I delete , .I copy , .I join , .I move , .I substitute , .I tabulate , .I transcribe , .I undo , .I xpand or shift command. This has the same effect as supplying a trailing `p' to each such command. .I Autoprint is suppressed in globals, and only applies to the last of many commands on a line. .LC beautify default: nobeautify .HP Causes all control characters except tab, newline and form-feed to be discarded from the input. A complaint is registered the first time a backspace character is discarded. .I Beautify does not apply to command input, or to text insertion mode. It applies only when you have entered text input mode by issuing a .I insert , .I delete , or .I change command from command mode. .LC directory, dir default: dir=/tmp .HP The .I directory option specifies the directory in which .I ex places it buffer file. If this directory in not writable, then the editor will exit abruptly when it fails to be able to create its buffer there. .LC edited no default .HP The current file is considered to be .I edited when the buffer contents are directly related to it. In this case the .I write command will write to the file even though it exists. In all normal editing patterns the current file is considered .I edited . .IP When the current file name is explicitly changed by the .I file command, then the file is not considered .I edited to protect a previous existing file of the same name from accidental destruction. .IP If a file is not successfully read in by an .I edit command, then it is not considered .I edited so that the possibly incomplete image of the file in the editing buffer will not be accidentally written over its contents. .LC editany, ea default: noea .HP Disables the .I edit and .I read command file sensibility checks. .LC errorbells, eb default: eb .HP If .I eb then error messages are preceded by two bells. The bell ringing in .I open and .I visual on errors is not suppressed by setting .I noeb . .LC fork default: fork .HP If .I nofork shell escapes will be inhibited the first time they are attempted if there has been ``No write'' of the buffer since the last change occurred. In this case, the aborted command can be repeated by using the command form `!!'. If .I fork , the default, a warning is given, but the command is given to a shell for execution anyways. .LC home default: user-dependent .HP The .I home directory is an image of the user's entry in the .I htmp data base. It is used initially as the origin of the file .B \&.exrc and is the default directory for the .I chdir command. .LC hush default: nohush .HP Inhibits interactive diagnostic information including prompts, printing of file names, line and character counts, command feedback, and echoing by the `!' shell escape. .LC ignorecase, ic default: noic .HP If .I ignorecase is set, all upper case characters in the text are mapped to lower case in regular expression matching. In addition, all upper case characters in regular expressions are mapped to lower case except in character class specifications. .LC indicateul, iu default: noiu .HP If .I indicateul is set, non-blank characters overstruck with underlines (and vice-versa) cause output lines to be split into two parts for printing \- the text and the underlining. .LC list default: nolist .HP If .I list is set, all printed lines will be displayed (more) unambiguously, as is done by the .I list command. .LC magic default: magic\u\s-2\(dg\s0\d .FS \(dg Default is \fInomagic\fR for \fIedit\fR. .FE .HP If .I nomagic is set, the number of regular expression metacharacters is greatly reduced, with only `\(ua' or `^' and `$' having magic effects. In addition the metacharacters `~' and `&' of the replacement pattern are treated as normal characters. All the normal metacharacters may be made .I magic when .I nomagic is set by preceding them with a `\e'. .LC mode default: mode=644 .HP .I Mode is the value the permission bits of any file created by the .I write command will have initially. The default allows reading and writing of the created file by its owner, as well as reading of the file by others. .LC notify default: notify=5\u\s-2\(dd\s0\d .FS \(dd \fINotify\fR=1 for \fIedit\fR. .FE .HP The .I notify option specifies a threshold for feedback from commands. Any command which modifies more than the specified number of lines will provide feedback as to the scope of its changes. For commands such as .I global , .I open , .I undo , and .I visual which have potentially more far reaching scope, the net change in the number of lines in the buffer is presented at the end of the command, subject to this same threshold. Thus notification is suppressed during a .I global command on the individual commands performed. .LC number default: nonumber .HP The .I number option may be set to cause all output lines to be printed with their line numbers. In addition each input line will be prompted for by supplying the line number it will have. .LC open default: open\u\s-2\(dg\s0\d .FS \(dg \fINoopen\fR for \fIedit\fR. .FE .HP If .I noopen then the commands .I open and .I visual are not permitted. This is set for .I edit to prevent confusion resulting from accidental entry to .I open or .I visual mode. .LC optimize default: optimize .HP If .I optimize is set, and the terminal permits, throughput of text is expedited by setting the terminal to not do automatic carriage returns and to .I noecho mode when printing more than one (logical) line of output. This can greatly speed output on terminals without addressible cursors if leading blanks are present, but causes all type-ahead to be lost. With .I optimize , after a multi-line print you cannot type ahead until the prompt reappears. .LC printall, pa default: noprintall .HP If .I printall is set then all characters will be printed in the output as they appear in the line when the .I print command is used. Normally, the blanks and tabs in the line may be rearranged or replaced with cursor addressing to improve throughput, and non-printing characters are printed as `?'. With .I printall these modifications to the pure line text are suppressed. .LC prompt default: prompt .HP Command mode input is prompted for with a `:' if the .I prompt option is set. .LC scroll default: scroll=12 .HP The .I scroll option determines the number of logical lines scrolled when an end-of-file is received from a terminal input. .LC shell, sh default: sh=/bin/sh .HP The .I shell option gives the path name of the shell forked for the shell escape command `!'. .LC shiftwidth, sw default: sw=8 .HP The .I shiftwidth option gives the width a software tab stop. This is used in reverse tabbing with \s-2CTRL\s0(D) when using .I autoindent to append text, and by the shift commands. Note that the tab character always references tab stops every eight positions and is .B not affected by this option. .LC sticky default: nosticky .HP If .I sticky is set then flags like `l', `#' and `:', given after a command, stick around until new flags are specified, allowing more lines to be printed in the same way without permanently changing options or continually hitting these keys. .LC terse default: noterse .HP If .I terse is set, shorter error diagnostics are produced. These are designed for the experienced user. .LC ttytype, tty default: terminal dependent .HP This option gives the terminal type of the output device. Setting .I ttytype indicates the special capabilities of the terminal in use. Current terminal types are defined by the .I ttycap data base. This data base is conveniently handled using the .I ttytype program. For most hard-wired ports, .I ttytype should be set correctly automatically. A mechanism exists using .I ttytype (VI) for setting the type semi-automatically on dial-up lines. .LC visualmessage, vm default: novm .HP Interconsole messages are prohibited during .I visual commands if .I novm is set. .LC window default: window=23 .HP The number of lines in a text window for the .I z command is specified by the .I window option. .LC wrap default: wrap .HP If .I nowrap then searches using the regular expressions in addressing will not wrap around past the end of the file.