[解決済み] レジスタを上書きせずに貼り付ける方法
2022-07-20 05:01:46
質問
選択範囲をデフォルトのレジスタに配置することなく、視覚的に選択された領域の上に貼り付ける方法をご存知の方はいらっしゃいますか?
常に明示的なレジスタからペーストすることによって問題を解決できることは知っています。しかし、以下のように入力するのは首が痛くなります。 " x p ではなく、単に p
どのように解決するのですか?
"{register}p
は、あなたが説明したようには動作しません。これは、選択範囲をレジスタの内容に置き換えてしまいます。代わりに次のようなことをしなければならないでしょう。
" I haven't found how to hide this function (yet)
function! RestoreRegister()
let @" = s:restore_reg
return ''
endfunction
function! s:Repl()
let s:restore_reg = @"
return "p@=RestoreRegister()\<cr>"
endfunction
" NB: this supports "rp that replaces the selection by the contents of @r
vnoremap <silent> <expr> p <sid>Repl()
pにnon-nore vmapを持つプラグインや、上書きされるレジスタを期待するプラグインを使用しない限りは、問題ないはずです。
このコードはスクリプトとして利用可能です。 そこで . また、Ingo Karkat は プラグイン を定義し、同じ問題を解決しています。
関連
-
[解決済み] Vimエディタを終了するにはどうすればよいですか?
-
[解決済み] git に自分の好きなエディタを使わせてコミットするにはどうしたらいいですか?
-
[解決済み] Vimで文字を改行で置き換える方法
-
[解決済み] Vimで大文字小文字を区別しない検索をする方法
-
[解決済み] Vimで行全体を複製する方法は?
-
[解決済み] Vimで行末に移動するにはどうしたらいいですか?
-
[解決済み] vimのレジスタはどのように使うのですか?
-
[解決済み] vimでシステムのクリップボードからペースト(とコピー)するには?
-
[解決済み】vimの「sudoで書く」トリックはどうやるの?
-
[解決済み】Vimで複数のファイルを効率的に操作する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] .vimrcファイルはどこですか?
-
[解決済み] Vimの効果的な使い方:ワイルドメニュー
-
[解決済み] Vimで縦割りから横割りに高速で切り替えるには
-
[解決済み] Vimで、テキストをレジスタに入れずに削除する方法はありますか?
-
[解決済み] vimでカーソルをファイル末尾に移動させる
-
[解決済み] Vimの設定ファイルにコメントを入れる方法。".vimrc" は?
-
[解決済み] viで2つの行を結合するにはどうしたらいいですか?
-
[解決済み] vimの "変更可能 "がオフになっている
-
[解決済み] Vimで最近のドキュメントを一覧表示する
-
[解決済み] Vimで前に開いていたファイルに戻るには?重複