This section describes the following:
* The :set command
* Options available with :set
* Example .exrc file
8.10.1 The :set Command
The :set command allows you to specify options that change characteristics of your editing environment. Options may be put in the ~/.exrc file or set during a vi session.
The colon should not be typed if the command is put in .exrc:
:set x | Enable option x. |
:set no x | Disable option x. |
:set x= val | Give value to option x. |
:set | Show changed options. |
:set all | Show all options. |
:set x? | Show value of option x. |
8.10.2 Options Used by :set
Table 8-1 contains brief descriptions of the important set command options. In the first column, options are listed in alphabetical order; if the option can be abbreviated, that abbreviation is shown in parentheses. The second column shows the default setting vi uses unless you issue an explicit set command (either manually or in the .exrc file). The last column describes what the option does, when enabled.
Option | Default | Description |
---|---|---|
autoindent (ai) | noai | In insert mode, indent each line to the same level as the line above or below. Use with the |
autoprint (ap) | ap | Display changes after each editor command. (For global replacement, display last replacement.) |
autowrite (aw) | noaw | Automatically write (save) the file if changed before opening another file with |
beautify (bf) | nobf | Ignore all control characters during input (except tab, newline, or formfeed). |
directory (dir) | /tmp | Name directory in which ex/vi stores buffer files. (Directory must be writable.) |
edcompatible |
| Rememberthe flags used with the most recent substitute command (global,confirming) and use them for the next substitute command. Despite thename, no version of ed actually behaves this way. |
errorbells (eb) | errorbells | Sound bell when an error occurs. |
exrc (ex) | noexrc | Allow the execution of .exrc files that reside outside the user's home directory. |
hardtabs (ht) | 8 | Define boundaries for terminal hardware tabs. |
ignorecase (ic) | noic | Disregard case during a search. |
lisp | nolisp | Insert indents in appropriate Lisp format. |
list | nolist | Print tabs as |
magic | magic | Wildcard characters |
mesg | mesg | Permit system messages to display on terminal while editing in vi. |
novice | nonovice | Require the use of long ex command names, such as |
number (nu) | nonu | Display line numbers on left of screen during editing session. |
open | open | Allow entry to open or visual mode from ex. Although not in Solaris vi, this option has traditionally been in vi, and may be in your Unix's version of vi. |
optimize (opt) | noopt | Abolishcarriage returns at the end of lines when printing multiple lines;speed output on dumb terminals when printing lines with leadingwhitespace (spaces or tabs). |
paragraphs (para) |
| Define paragraph delimiters for movement by |
prompt | prompt | Display the ex prompt (:) when vi's |
readonly (ro) | noro | Any writes (saves) of a file fail unless you use |
redraw (re) | | viredraws the screen whenever edits are made (in other words, insert modepushes over existing characters, and deleted lines immediately closeup). Default depends on line speed and terminal type. |
remap | remap | Allow nested map sequences. |
report | 5 | Display a message on the status line whenever you make an edit that affects at least a certain number of lines. For example, |
scroll | [ ½ window] | Number of lines to scroll with |
sections (sect) | SHNHH HU | Define section delimiters for |
shell (sh) | /bin/sh | Pathname of shell used for shell escape ( |
shiftwidth (sw) | 8 | Define number of spaces in backward ( |
showmatch (sm) | nosm | In vi, when |
showmode | noshowmode | Ininsert mode, display a message on the prompt line indicating the typeof insert you are making. For example, "OPEN MODE" or "APPEND MODE." |
slowopen (slow) | | Hold off display during insert. Default depends on line speed and terminal type. |
tabstop (ts) | 8 | Define number of spaces a tab indents during editing session. (Printer still uses system tab of 8.) |
taglength (tl) | 0 | Define number of characters that are significant for tags. Default (zero) means that all characters are significant. |
tags | tags /usr/lib/tags | Define pathname of files containing tags. (See the Unix |
tagstack | tagstack | Enable stacking of tag locations on a stack. |
term | | Set terminal type. |
terse | noterse | Display shorter error messages. |
timeout (to) | timeout | Keyboard maps time out after 1 second.[1] |
ttytype | | Set terminal type. This is just another name for |
warn | warn | Display the warning message, "No write since last change." |
window (w) | | Show a certain number of lines of the file on the screen. Default depends on line speed and terminal type. |
wrapscan (ws) | ws | Searches wrap around either end of file. |
wrapmargin (wm) | 0 | Define right margin. If greater than zero, automatically insert carriage returns to break lines. |
writeany (wa) | nowa | Allow saving to any file. |
[1] When you have mappings of several keys (for example, :map zzz 3dw), you probably want to use notimeout. Otherwise you need to type zzz within 1 second. When you have an insert mode mapping for a cursor key (for example, :map! ^[OB ^[ja), you should use timeout. Otherwise, vi won't react to Escape until you type another key.
8.10.3 Example .exrc File
set nowrapscan wrapmargin=7
set sections=SeAhBhChDh nomesg
map q :w^M:n^M
map v dwElp
ab ORA O'Reilly & Associates, Inc.
출처 : http://alex.mackow.free.fr/books/Unix2/unixnut/ch08_10.htm
'ide > vim' 카테고리의 다른 글
vi copy, paste 와 X윈도우 clipboard 사용 (0) | 2014.11.07 |
---|---|
vim window vimrc 설정 (0) | 2013.04.01 |
vi 커닝페이퍼 (0) | 2010.09.06 |
vi 설정 (0) | 2006.10.25 |
VI (0) | 2006.09.22 |