Node:Word Designators, Next:Modifiers, Previous:Event Designators, Up:History Interaction

#### Word Designators

Word designators are used to select desired words from the event. A `:` separates the event specification from the word designator. It may be omitted if the word designator begins with a `^`, `$`, `*`, `-`, or `%`. Words are numbered from the beginning of the line, with the first word being denoted by 0 (zero). Words are inserted into the current line separated by single spaces.

For example,

`!!`
  designates the preceding command. When you type this, the preceding command is repeated in toto.
`!!:$`
  designates the last argument of the preceding command. This may be shortened to `!$`.
`!fi:2`
  designates the second argument of the most recent command starting with the letters `fi`.

Here are the word designators:

`0 (zero)`
  The `0`th word. For many applications, this is the command word.
``n``
  The nth word.
`^`
  The first argument; that is, word 1.
`$`
  The last argument.
`%`
  The word matched by the most recent `?`string`?` search.
``x`-`y``
  A range of words; `-`y`` abbreviates `0-`y``.
`*`
  All of the words, except the `0`th. This is a synonym for `1-$`. It is not an error to use `*` if there is just one word in the event; the empty string is returned in that case.
``x`*`
  Abbreviates ``x`-$`
``x`-`
  Abbreviates ``x`-$` like ``x`*`, but omits the last word.

If a word designator is supplied without an event specification, the previous command is used as the event.