【Linux】viで複数行をコピーする

viで1行コピーするのは

でコピーして

で貼り付けるだけなので簡単です。

複数行のコピーも、数行程度なら行数が分かるので

(カーソル位置から下に5行分をコピー)
という感じで簡単です。

では行数が簡単に数えられないくらいの行をコピーするには?

そんなときはブックマーク機能(mコマンド)を使ってコピーしましょう。

まずコピーしたい最初の行にカーソルを持っていき、任意のアルファベットでマークします。

(aというマーク)

次にコピーしたい最後の行にカーソルを持っていき、別のアルファベットでマークします。

(bというマーク)

あとは、コマンドモードで以下のコマンドを打ちます。

最初と最後のマークをカンマ区切りで呼び出してy(ヤンク)
なので、viのコマンドとしては分かりやすい方かと思います。

貼付けは1行のときと同じように、貼り付けたい場所で

を押すだけです。

【jQuery】配列や連想配列をコピーする

のように配列や連想配列をそのまま代入すると「参照渡し」という形になり、
コピー先だけ変更したつもりがコピー元も一緒に変更されてしまいます。

コピーするには配列の中身を代入していく必要があるのですが、
jQueryの場合はextend関数で簡単にコピーできます。

配列:

連想配列: