Vimの基本的な使い方②文字列操作【初心者用】

Vim
スポンサーリンク

エディタは何を使っていますか?

僕は作業効率をあげるためにVimを使っています。

一般のエディタと比べるとちょっと特殊なVimの使い方を簡単にまとめました。

今回は文字列操作関係です。

 

前回はこちら

Vimの基本的な使い方①移動・検索【初心者用】
エディタは何を使っていますか?僕は作業効率をあげるためにVimを使っています。一般のエディタと比べるとちょっと特殊なVimの使い方を簡単にまとめました。VimとはVimはオランダ人のプログラマーBram Moolenaar...
スポンサーリンク

挿入モードにする

テキスト入力をするために、挿入モードにします。

World」の「r」にカーソルがある場合

    echo "Hello World!";
                  ^

[a]と入力すると、カーソルの直後に入力することができます。

[a]
    echo "Hello Wor|ld!";
                   ^

[i]と入力すると、カーソルの直前に入力することができます。

[i]
    echo "Hello Wo|rld!";
                  ^

[o]と入力すると、直後に行を追加して入力することができます。

[o]
    echo "Hello World!";
|

[O]と入力すると、直前に行を追加して入力することができます。

[O]
|
    echo "Hello World!";

 

スポンサーリンク

1文字操作

1文字だけ削除

[x]と入力すると、カーソル上の1文字だけ削除します。

    echo "Hello World!";
                   ^
[x]
    echo "Hello Word!";

[X]と入力すると、カーソル上の左1文字だけ削除します。

    echo "Hello World!";
                   ^
[X]
    echo "Hello Wold!";

[s]と入力すると、カーソル上の1文字だけ削除して、挿入モードに入ります。

    echo "Hello World!";
                   ^
[s]
    echo "Hello Wor|d!";
                   ^

1文字だけ置換

[r<文字>]と入力すると、カーソル位置の文字を<文字>に置き換えます。

    echo "Hello World!";
                ^
[rw]
    echo "Hello world!";
                ^

 

スポンサーリンク

オペレータ

[d]オペレータ

[d]は削除を表すオペレータです。

オペレータの後にモーションを追加することで、削除の挙動が変わります。

[dd]とオペレータを2回繰り返すと、行を削除します。

<?php
    echo "Hello World!";
^
?>
[dd]
<?php
?>
^

[dw]と入力すると、カーソル位置から1単語分だけ削除します。

    echo "Hello World!";
                  ^
[dw]
    echo "Hello Wo!";
                  ^

[diw]と入力すると、カーソル位置にある1単語分だけ削除します。

    echo "Hello World!";
                  ^
[diw]
    echo "Hello !";
                ^

[df<文字>]と入力すると、カーソル位置から最初の<文字>があるところまで削除します。

    echo "Hello World!";
             ^
[dfr]
    echo "Helld!";
             ^

[d^]と入力すると、カーソル位置から左側を削除します。

    echo "Hello World!";
                ^
[d^]
    World!";
    ^

[d$]と入力すると、カーソル位置から右側を削除します。

    echo "Hello World!";
                ^
[d$]
    echo "Hello 
               ^

[c]オペレータ

[c]は削除して挿入モードに入るオペレータです。

オペレータの後にモーションを追加することで、挙動が変わります。

[cc]とオペレータを2回繰り返すと、行を削除し挿入モードに入ります。

<?php
    echo "Hello World!";
^
?>
[cc]
<?php
|
^
?>

[cw]と入力すると、カーソル位置から1単語分だけ削除し挿入モードに入ります。

    echo "Hello World!";
                  ^
[cw]
    echo "Hello Wo|!";
                  ^

[ciw]と入力すると、カーソル位置にある1単語分だけ削除し挿入モードに入ります。

    echo "Hello World!";
                  ^
[ciw]
    echo "Hello |!";
                ^

[cf<文字>]と入力すると、カーソル位置から最初の<文字>があるところまで削除し挿入モードに入ります。

    echo "Hello World!";
             ^
[cfr]
    echo "Hel|ld!";
             ^

[c^]と入力すると、カーソル位置から左側を削除し挿入モードに入ります。

    echo "Hello World!";
                ^
[c^]
    |World!";
    ^

[c$]と入力すると、カーソル位置から右側を削除し挿入モードに入ります。

    echo "Hello World!";
                ^
[c$]
    echo "Hello |
                ^

 

スポンサーリンク

[y]オペレータ

[y]はヤンク(コピー)するオペレータです。

オペレータの後にモーションを追加することで、ヤンクの挙動が変わります。

[yy]とオペレータを2回繰り返すと、行をヤンクします。

    echo "Hello World!";
^^^^^^^^^^^^^^^^^^^^^^^^

[yw]と入力すると、カーソル位置から1単語分だけヤンクします。

    echo "Hello World!";
                  ^
[yw]
    echo "Hello World!";
                  ^^^

[yiw]と入力すると、カーソル位置にある1単語分だけヤンクします。

    echo "Hello World!";
                  ^
[yiw]
    echo "Hello World!";
                ^^^^^

[yf<文字>]と入力すると、カーソル位置から最初の<文字>があるところまでヤンクします。

    echo "Hello World!";
             ^
[yfr]
    echo "Hello World!";
             ^^^^^^

[y^]と入力すると、カーソル位置から左側をヤンクします。

    echo "Hello World!";
                ^
[y^]
    echo "Hello World!";
    ^^^^^^^^^^^^

[y$]と入力すると、カーソル位置から右側をヤンクします。

    echo "Hello World!";
                ^
[y$]
    echo "Hello World!";
                ^^^^^^^^

貼り付け

[p]は[d][c][y]で削除やヤンクした文字列をペーストするコマンドです。

[dd][cc][yy]の場合、[p]ならカーソルの下の行に、[P]ならカーソルの上の行にペーストします。

←[P]上の行にペースト
    echo "Hello World!";
←[p]下の方にペースト

文字列コピー・削除などの場合、[p]ならカーソルの文字の次に、[P]ならカーソルの文字の前にペーストします。

    echo "Hello World!";
                  ^
[yiw]で[World]がヤンクされる
    echo "Hello World!";
            ^
[p]
    echo "HelWorldlo World!";
[P]
    echo "HeWorldllo World!";

 

スポンサーリンク

さいごに

文字の操作はこれくらいを覚えておくだけですごく簡単にできます。

まだまだいろいろなコマンドがあるので、また機会があれば紹介したいと思います。

 

スポンサーリンク

コメント

  1. […] Vimの基本的な使い方②文字列操作【初心者用】 […]