11.1 Review of vi Operations
This section provides a review of the following:
Command-line options
vi modes
Syntax of vi commands
Status-line commands
11.1.1 Command Mode
Once the file is opened, you are in
command mode. From command mode, you can:
11.1.2 Insert Mode
In insert mode, you can enter new text in
the file. Press the Esc or Ctrl-[ keys to exit insert mode and return
to command mode. The following commands invoke insert mode:
- a
-
Append after cursor
- A
-
Append at end-of-line
- c
-
Begin change operation (must be followed by a movement command)
- C
-
Change to end-of-line
- i
-
Insert before cursor
- I
-
Insert at beginning of line
- o
-
Open a line below current line
- O
-
Open a line above current line
- r
-
Replace character under cursor
- R
-
Begin overwriting text
- s
-
Substitute a character
- S
-
Substitute entire line
11.1.3 Syntax of vi Commands
In vi,
commands have the following general form:
[n] operator [m] object
The basic editing operators are:
- c
-
Begin a change
- d
-
Begin a deletion
- y
-
Begin a yank (or copy)
If the current line is the object of the operation, the operator is
the same as the object: cc,
dd, yy. Otherwise, the editing operators act on
objects specified by cursor-movement commands or pattern-matching
commands. n and m are the
number of times the operation is performed or the number of objects
the operation is performed on. If both n and
m are specified, the effect is
n x m.
An object can represent any of the following text blocks:
- Word
-
Includes characters up to a space or punctuation mark. A capitalized
object is a variant form that recognizes only blank spaces.
- Sentence
-
Extends to ., !, or ? followed by two spaces.
- Paragraph
-
Extends to next blank line or nroff/troff paragraph macro (defined by
para= option).
- Section
-
Extends to next nroff/troff section
heading (defined by sect=
option).
11.1.3.1 Examples
- 2cw
-
Change the next two words
- d}
-
Delete up to next paragraph
- d^
-
Delete back to beginning of line
- 5yy
-
Copy the next five lines into temporary buffer (for future pasting)
- y]]
-
Copy up to the next section into temporary buffer (for future pasting)
11.1.4 Status-Line Commands
Most commands are not echoed on the
screen as you input them. However, the status line at the bottom of
the screen is used to echo input for the following commands:
- /
-
Search forward for a pattern
- ?
-
Search backward for a pattern
- :
-
Invoke an ex command
- !
-
Pipe the text indicated by a subsequent movement command through the
following shell command, and replace the text with the output of the
shell command
Commands that are input on the status line must be entered by
pressing the Return key. In addition, error messages and output from
the Ctrl-G command are displayed on
the status line.
|