はい、ここに「ヤンク&プット」のプライマーがあります…
Vimでは、ヤンク(コピー)と配置(貼り付け)の主なコマンドはy
and p
です。
ヤンキングは、ヤンクしたテキストをレジスタに配置します。そのレジスターは"
デフォルトでは名前のないレジスターですが、他のレジスターを使用することもできます:
"ay " yank into register a
"by " yank into register b
"+y " yank into clipboard register
[…]
同様に、putはレジスターからテキストを挿入します。そのレジスターはデフォルトでは名前のないレジスターですが、他のレジスターを使用することができます:
"ap " put from register a
"+p " put from clipboard register
"3p " put from the register 3
[…]
これらのコマンドは、テキストが特別な処理なしでバッファーに「入れられる」ため、「右クリック/貼り付けまたは中クリックまたはCTRL + SHFT + V」よりも優先されます。「右クリック/貼り付けまたは中クリックまたはCTRL + SHFT + V」を使用すると、テキストは入力したかのようにバッファーに挿入され、自動インデント/フォーマットが適用されます。
"+p
または、"*p
X転送なしのSSHまたはクリップボードサポートなしでビルドされたVimを使用して作業できない場合、このpaste
オプションは自動インデントを無効にし、他の非常に便利なオプションをいくつか入力して、入力したテキストが認識されないようにします。
で説明したよう:help 'paste
に、オプションには潜在的に非常に悪い副作用があるため、テキストを貼り付けた直後に無効にすることが重要です。
:set paste
(paste)
:set nopaste
そのダンスは明らかにお尻の痛みなので、切り替え用の特別なショートカットを定義できる別のオプションがありますpaste
。
set pastetoggle=<F12>
それは少し痛みを軽減します:
<F12>
(paste)
<F12>
しかし、それはまだ苦痛です。
可能であれば、クリップボードをサポートする適切なVimをインストールして、"*p
または"+p
(テキストのコピー方法に応じて)を使用してテキストを正しい方法で貼り付けることをお勧めします。
- Mac OS Xの場合:MacVimをインストールします。
- Debianベースのシステムの場合:vim-gnomeまたはvim-gtkパッケージをインストールします。
- CentOSの場合:vim-enhancedパッケージをインストールします。
参照:
:help p
:help y
:help registers
:help 'paste'
:help 'pastetoggle'
]p
、インデントを正しく貼り付けて調整するで貼り付けない限り、常にヤンクテキストのようにインデントを取得します。