Vim(ヴィム)を使い始めて、こんなことで困っていませんか?
- どうやって文字をコピーするの?
- 切り取りと貼り付けができない
- 普通のエディタとは操作が全然違う
- モードって何?どう使い分けるの?
実は、Vimは独特な操作方法を持つテキストエディタです。
しかし、基本を理解すれば、非常に高速で効率的な編集ができるようになります。
この記事では、Vimでの切り取り(カット)と貼り付け(ペースト)の基本操作を、初心者にもわかりやすく説明します。
Vimの基本:モードとは?

Vimには3つのモードがある
1. ノーマルモード
- Vim起動時の初期状態
- 文字の削除や移動などの操作を行う
- 文字の入力はできない
2. インサートモード
- 文字を入力できる状態
- 普通のテキストエディタのような感覚
- タイピングした文字がそのまま入力される
3. ビジュアルモード
- 範囲選択を行う状態
- マウスでドラッグするような感覚で選択
- 選択した部分に対して操作を実行
モードの切り替え方
ノーマルモードから他のモードへ:
i:インサートモードに入るv:ビジュアルモードに入るV:行ビジュアルモードに入る
他のモードからノーマルモードへ:
Escキー:常にノーマルモードに戻る
現在のモードを確認する方法
画面の表示:
- ノーマルモード:何も表示されない
- インサートモード:画面下に「– INSERT –」
- ビジュアルモード:画面下に「– VISUAL –」
大切なこと:切り取りや貼り付けは、主にノーマルモードとビジュアルモードで行います。
基本的な切り取り操作

1行まるごと切り取り
操作方法:
- ノーマルモードになる(
Escを押す) - 切り取りたい行にカーソルを合わせる
ddと入力
何が起こる?:
- その行が完全に削除される
- 削除された内容がVimの記憶領域に保存される
- 他の場所に貼り付けることができる
具体例:
元のテキスト:
1行目
2行目 ← カーソルがここにある
3行目
`dd`を実行後:
1行目
3行目 ← 2行目が削除された
複数行の切り取り
数字+dd で複数行:
2dd:現在の行から2行分を切り取り3dd:現在の行から3行分を切り取り5dd:現在の行から5行分を切り取り
具体例:
元のテキスト:
1行目
2行目 ← カーソルがここにある
3行目
4行目
5行目
`3dd`を実行後:
1行目
5行目 ← 2、3、4行目が削除された
文字や単語の切り取り
1文字の切り取り:
x:カーソル位置の文字を削除X:カーソルの前の文字を削除
単語の切り取り:
dw:カーソル位置から単語の終わりまで削除db:カーソル位置から単語の始まりまで削除
行の一部を切り取り:
d$:カーソル位置から行末まで削除d0:カーソル位置から行頭まで削除
ビジュアルモードで範囲選択して切り取り

ビジュアルモードの使い方
基本手順:
- ノーマルモードで
vを押す - カーソルを移動して範囲を選択
dを押して切り取り
選択できる範囲:
- 文字単位の選択
- 単語をまたいだ選択
- 複数行にわたる選択
実際の操作例
文字を選択して切り取り:
元のテキスト:
Hello World ← "World"を選択したい
操作手順:
1. "W"の位置にカーソルを移動
2. `v`でビジュアルモード開始
3. →キーで"World"を選択
4. `d`で切り取り
結果:
Hello ← "World"が削除された
行ビジュアルモード
V(大文字)の使用:
- 行単位で選択
- 複数行をまとめて選択しやすい
V→↓キーで複数行選択→dで切り取り
貼り付け操作の基本

基本的な貼り付け
2つの貼り付け方法:
p:カーソルの後ろに貼り付けP:カーソルの前に貼り付け
行の貼り付け
ddで切り取った行の場合:
p:現在の行の下に新しい行として貼り付けP:現在の行の上に新しい行として貼り付け
具体例:
切り取り前:
1行目
2行目 ← この行を`dd`で切り取り
3行目
切り取り後:
1行目
3行目 ← カーソルがここにある
`p`を実行:
1行目
3行目
2行目 ← 3行目の下に貼り付けられた
`P`を実行した場合:
1行目
2行目 ← 3行目の上に貼り付けられた
3行目
文字の貼り付け
xやdwで切り取った場合:
p:カーソルの右側に貼り付けP:カーソルの左側に貼り付け
コピー(ヤンク)操作

切り取らずにコピーする
ヤンク操作:
yy:現在の行をコピー3yy:3行分をコピーyw:単語をコピーy$:行末までコピー
ビジュアルモードでコピー:
vでビジュアルモード- 範囲を選択
yでコピー
コピーと切り取りの違い:
- コピー(ヤンク):元のテキストは残る
- 切り取り:元のテキストが削除される
レジスタ(記憶領域)の活用

Vimの記憶システム
複数の記憶領域:
- Vimは複数の「レジスタ」を持っている
- 削除やコピーの履歴を保存
- 過去の内容を呼び出すことができる
よく使うレジスタ
デフォルトレジスタ:
p:最新の削除・コピー内容を貼り付け
番号付きレジスタ:
"1p:1つ前に削除した内容"2p:2つ前に削除した内容"9pまで使用可能
名前付きレジスタ:
"ayy:現在の行をレジスタ”a”にコピー"ap:レジスタ”a”の内容を貼り付け
実用例
複数の内容を保存:
操作例:
1. `"ayy` → 1行目をレジスタ"a"に保存
2. 別の行に移動
3. `"byy` → その行をレジスタ"b"に保存
4. 別の場所で `"ap` → レジスタ"a"の内容を貼り付け
5. また別の場所で `"bp` → レジスタ"b"の内容を貼り付け
よくあるミスと対処法

ミス1:貼り付けできない
症状:
ddで切り取ったはずなのにpで貼り付けできない
原因:
- 別の削除操作で内容が上書きされた
- モードを間違えている
対処法:
"1pで1つ前の削除内容を試すEscでノーマルモードに戻る
ミス2:思った場所に貼り付かない
症状:
pで貼り付けたら変な場所に入った
原因:
pとPの違いを理解していない- カーソル位置を間違えている
対処法:
uで元に戻す(アンドゥ)- 正しい位置にカーソルを移動してから再実行
ミス3:間違って削除してしまった
症状:
- 必要な内容を間違って削除した
対処法:
uでアンドゥ(元に戻す)Ctrl+rでリドゥ(やり直し)
実践的なテクニック
行の移動
行を別の場所に移動:
- 移動したい行で
dd - 移動先にカーソルを移動
pで貼り付け
重複行の作成
行をコピーして貼り付け:
yyで行をコピーpで同じ行を複製
範囲指定での操作
特定の範囲を操作:
vでビジュアルモード- 範囲を選択
dで切り取り、またはyでコピー
外部アプリとの連携

システムクリップボードとの連携
システムクリップボードの使用:
"+yy:システムクリップボードにコピー"+p:システムクリップボードから貼り付け
他のアプリとの連携:
- Vimの内容を他のアプリに貼り付け可能
- 他のアプリからVimに貼り付け可能
設定の確認
クリップボード機能の確認:
:echo has('clipboard')
1が返されればクリップボード機能が使用可能
練習方法
基本操作の練習
毎日5分の練習:
ddとpで行の移動v→選択→dで範囲削除yyとpで行の複製
実践的な練習
実際のファイルで練習:
- プログラムコードの編集
- 設定ファイルの修正
- メモやドキュメントの作成
まとめ:Vimマスターへの道
Vimの切り取り・貼り付けは、慣れれば非常に高速で効率的な操作ができます。
この記事のポイント
- 3つのモードを理解することが基本
ddで行切り取り、pで貼り付けが最重要- ビジュアルモードで自由な範囲選択
- レジスタで複数の内容を管理
uでアンドゥ、間違いを恐れずに練習
学習の順番
ステップ1:基本操作をマスター
dd、p、yy- モードの切り替え
u(アンドゥ)
ステップ2:応用操作を覚える
- ビジュアルモード
- 複数行操作
- レジスタの使用
ステップ3:効率化テクニック
- 組み合わせ操作
- システムクリップボード連携
- 自分なりのワークフロー確立
練習のコツ
少しずつ慣れる:
- 最初は基本操作だけでOK
- 無理に全部覚えようとしない
- 毎日少しずつ練習
間違いを恐れない:
uでいつでも元に戻せる- 練習用のファイルで自由に試す
- 失敗から学ぶことが大切
Vimの操作は最初は難しく感じるかもしれませんが、基本をマスターすれば非常に強力なツールになります。焦らず、一歩ずつ習得していきましょう!
よくある質問

Q: 他のエディタのようにCtrl+Cでコピーできませんか?
A: Vimでは独自の操作体系を持っています。yyでコピー、pで貼り付けが基本です。慣れれば、こちらの方が効率的です。
Q: マウスでの選択はできませんか?
A: 設定によっては可能ですが、Vimの真価はキーボード操作にあります。ビジュアルモードを使うことをおすすめします。
Q: 操作を間違えた時はどうすればいいですか?
A: uキーでアンドゥ(元に戻す)ができます。何度でも戻せるので、安心して練習してください。


コメント