22
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【vimめも】 3. レジスタ

Last updated at Posted at 2018-03-11

vimでは通常のクリップボードのコピー&ペーストとは違う
レジスタという保存領域を持っている

xydの操作時にはレジスタという領域に保存されるようになっている

レジスタの種類

@0829さんがわかりやすくhelpの内容をまとめてくださってました
vimのレジスタ

むずかしい・・・

という方のために、簡単にまとめると
(個人的に必要と思うものだけ)

レジスタ 意味
" 通常のヤンクや削除時に無差別に入る
a-z 指定して入れれる(上書き)
A-Z a-zの内容に追加で入れれる
+ クリップボード。winなら*でもよいがmacを考えると+を使うべし
0 直近のヤンク(コピー)したものが入る ※1
1-9 直近の変更・削除したものが入り、順に1から9へと移っていく。9以降は削除される ※1
. 直近に挿入した文字が入る
: 直近に実行したコマンドラインのコマンドが入る
% 編集中のファイル名
_ 保存されない消去専用のレジスタ(ブラックホール)

※1:レジスタを指定していなかった時のみ入る

使い方

ノーマルモード

" + {レジスタ} + {オペレータ}
で任意のレジスタに入れるようにして、コマンドを実行できる

{オペレータ}のみでレジスタをしてしていなければ、"の無名レジスタが対象のレジスタとなる

|オペレータ|意味|
|:-:|:-:|:-:|
|x|カーソルの文字を削除+ヤンク|
|s|カーソルの文字を削除+ヤンク+挿入モードに入る|
|yy|1行ヤンク|
|dd|1行削除+ヤンク|
|cc or S|1行削除+ヤンク+挿入モードに入る|
|d + 位置指定|範囲を削除+ヤンク ※2|
|y + 位置指定|範囲をヤンク ※2|
|p|カーソルの後に貼り付け|
|P|カーソルの前に貼り付け|

※2:wやbやeやfやGなどの移動でのコマンドと組み合わせることができ、カーソル位置から移動先の位置までが対象範囲

挿入モード

<C-r> + {レジスタ} : レジスタの内容を貼り付け

ビジュアルモード

" + {レジスタ} + {オペレータ}

|オペレータ|意味|
|:-:|:-:|:-:|
|x or d|削除+ヤンク|
|y|ヤンク|

使い方の例

私のマッピング例です
削除 と 切り取り をはっきりと分けて使い分けてます

" 削除のみ
vnoremap d "_d
nnoremap d "_d
vnoremap D "_D
nnoremap D "_D
vnoremap x "_x
nnoremap x "_x
vnoremap s "_s
nnoremap s "_s

" 切り取り
nnoremap t d
vnoremap t x
nnoremap tt dd
nnoremap T D

前回:【vimめも】 2. normalモードの基本的な操作
次回:【vimめも】 4. テキストオブジェクト

22
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?