行単位のコピーと移動については、前に説明しました。viは、 もちろん文字や単語を単位としたコピー、移動も可能です。たとえば、 xによって消された文字もバッファに記憶されます。従って、xpとすれば 文字の入れ替えが行われます。(ddpと同じ原理)
これ以外のコピーと移動の操作は、以下に説明するようなルールに従って行われます。
たとえば、ある単語の先頭にカーソルがあった時、yw とすれば、 その単語が記憶されます。これとpコマンドを組み合わせれば、単語のコピー ができるわけです。実際には1つの単語をコピーするよりは、もう少し複雑な ケースが多いでしょう。
pとPの使い分けも、行の時と同じです。pだとカーソルのある文字の後に、 Pだとカーソルのある文字の前に、バッファの内容が出現します。従って、 行の先頭に単語を付け加えたい時には、Pを使うことになります。
さて、以上のルールは、移動の範囲の大きさとは無関係に適用できます。 たとえば、dGというような指定も可能です。dGを実行すると、 はたしてどんな結果になるでしょうか?