[解決済み] 単語をペーストバッファの内容で置き換える?
質問
ファイル内の単語の置換を大量に行う必要があり、次のような EX コマンドではなく vi コマンドで行いたいのですが、どうすればよいでしょうか。
:%s///g
.
私は、これが現在のカーソル位置の単語を置き換える典型的な方法であることを知っています。
cw<text><esc>
というように、現在のカーソル位置の単語を置き換える典型的な方法ですが、無名レジスタの内容を置換テキストとして、レジスタを上書きせずにこれを行う方法はあるでしょうか?
どのように解決するのですか?
paste"というのは、無名(yank/put/change/delete/substitute)レジスタのことではないでしょうか?(changeコマンドで上書きされるのはこれなので)。
レジスタの指定は、一般に
"
のように,レジスタの名前(1文字)を入力します。
"ay
次に
"ap
をクリックすると、登録されます。
a
の内容をレジスタ
a
. 変更コマンドの場合も同じです。この場合、変更コマンドで削除したテキストがどこにも行かないようにしたい場合は、ブラックホールレジスタの
"_
:
"_cw
. そして、挿入モードになったら、ctrl-R の後に希望のレジスタを押します(おそらく
"
を入力すると、そのレジスタの内容が挿入されます。
-
"*
- 選択レジスタ(中ボタンペースト) -
"+
- クリップボード登録 (おそらくターミナルから ctrl-shift-v でもアクセス可能) -
""
- vim のデフォルトの (名前のない) yank/put/change/delete/substitute レジスタです。
短い答えです。
"_cw^R"
編集:他の人が提案しているように、もちろん、あなたのテキストをデフォルトのレジスタに入れたヤンク(または何か)に別のレジスタを使うことができます。しかし、いつも最初にそれを考えるとは限らないので、吹き飛ばされることなく単一の変更コマンドを実行するのはいいことです。とはいえ、完全に吹っ飛んでしまうわけではありません。番号付きのレジスターがあります
"0
を通して
"9
:
Vim は yank と delete コマンドのテキストでこれらのレジスタを埋めます。
番号付きレジスタ 0 は、コマンドが ["x] で別のレジスタを指定しない限り、最も新しい yank コマンドからのテキストを含みます。
番号付きレジスタ 1 は、コマンドが別のレジスタを指定しない限り、またはテキストが 1 行未満でない限り、最も最近の delete または change コマンドによって削除されたテキストを含みます (小さな delete レジスタがそのとき使用されます)。 これらの移動コマンドでは、delete 演算子は例外となります。
%
,(
,)
,`
,/
,?
,n
,N
,{
と}
. このとき、常に "1 レジスタが使用されます (これは Vi 互換です)。 行内で削除する場合は、"- レジスタも同様に使用されます。削除や変更を繰り返すたびに、Vim はレジスタ 1 の以前の内容をレジスタ 2 に、2 を 3 に、...とシフトし、レジスタ 9 の以前の内容を失くしていきます。 レジスタ 9 の以前の内容は失われます。
関連
-
[解決済み] Vimで文字を改行で置き換える方法
-
[解決済み] Vimで最も生産性の高いショートカットは何ですか?
-
[解決済み] Vimでカーソルを動かさずに画面を移動させる方法は?
-
[解決済み] Bashコマンドからテキストファイルの内部を検索・置換する
-
[解決済み] Mac OS Xのターミナルで、前の出力をクリアするにはどうすればよいですか?
-
[解決済み] Vimで(多くのバッファのうち)1つのバッファを閉じるにはどうすればよいですか?
-
[解決済み] Vimで、テキストをレジスタに入れずに削除する方法はありますか?
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み】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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Vim 最後の検索ハイライトをクリアする
-
[解決済み] EmacsとVimの違い
-
[解決済み] Vimのコマンドラインにヤンクのテキストを貼り付ける方法
-
[解決済み] vimで開いたファイルで、^M改行を「通常の」改行に変換するにはどうしたらいいですか?
-
[解決済み] VimとCtagsのヒントとコツ [終了しました]。
-
[解決済み】Vimで'gf'から戻るにはどうしたらいいのか?
-
[解決済み] VIM:現在位置からスペースまで削除する
-
[解決済み] viで2つの行を結合するにはどうしたらいいですか?
-
[解決済み] nerdtreeを使ったディレクトリの作り方
-
[解決済み] Vim:letとsetはどう違うの?