タグ付けされた質問 「register」

ヤンク(コピー)、削除(切り取り)、配置(貼り付け)のためのテキストのストアスニペットを登録します。Vimでは、レジスタはマクロ再生にも使用され、一部のレジスタは特別であり、OSクリップボードを参照したり、式を評価したりできます。


2
ファイルの一部を調達する方法
たとえば、vimrcwith :so %やでファイルを調達できます:so <filename>。しかし、ファイルの一部のみを調達する必要がある場合はどうすればよいですか。ファイルの一部を視覚的に選択して:h vソースを取得する方法が必要です。ちょっとemacsのようなM-x eval-region


1
奇妙なvim / xtermの相互作用:ファイルを開いたときの `" `レジスタの自動挿入
これは私を怒らせています。XTerm(330)と最新のvim 8.0.1365(FreeBSD上)を使用しています。 時々、常にではないが、5分の1にvimでファイルを開くと、面白い行が行1の上に挿入されます。多くの頭を掻いた後、前のセッションで最後に削除した行であることに気付きました。つまり、""P("レジスターを貼り付ける)が実行されているように見えます。 さらに調査した結果、これ*sunKeyboard: trueはXTermリソースで設定した場合、およびなどのレンダリングされたフォントを使用した場合にのみ発生することがわかりました-fa "DejaVu Sans Mono:size=24"。(私はあなたがそれが奇妙だったと言いましたね?)プラグインがいたずらをするのを避けるために、ディレクトリは.vimrcありませ.vimん。 次のコマンドを使用して、効果をいくらか再現できます。 #!/bin/sh rm -f .viminfo; echo inserted >bar; echo x >baz vim -c d -c wq bar echo '*sunKeyboard: true' > XTerm export XAPPLRESDIR=$PWD for i in 1 2 3 4 5 6; do xterm -fa "DejaVu Sans Mono:size=24" -e vim baz …


1
矢印キーを使用した後、以前に挿入したテキストがリセットされるのはなぜですか?
ヘルプから:help i_ctrl-a: CTRL-A Insert previously inserted text. {not in Vi} 空のバッファがあり、通常モードになっているとします。 入力iして挿入モードにします。 と入力して()から、カーソル<C-h>(<left>挿入モードでマップしたもの)を押してカーソルを1文字左に移動しfoo、と入力して、エスケープを押して通常モードに戻ります。 バッファには次のものが含まれています。(foo) 誤って、以前に挿入されたテキストはそうで(foo)あると考えましたが、そうではありません。 以前に挿入されたテキストは、挿入モードでもう一度foo入力:registers .またはヒットすることで確認できます<C-a>。 矢印キーを押すと、以前に挿入したテキストがリセットされるのはなぜですか? 矢印キーを押しても最後に挿入モードになったときに挿入されたすべてのテキストをドットレジスタに保存する方法はありますか?

2
レジスタで置換を使用するにはどうすればよいですか?
文字列が格納されているものを登録したとしましょう。ただし、置換コマンドを使用して変更したいとします。 たとえば、5x5のhtmlテーブルがあります。 let @t='<table>'.repeat('<tr>'.repeat('<td>_</td>',5).'</tr>',5).'</table>' そして、プレースホルダー(_)を既存のレジスターを変更する(別のレジスターに割り当てるのではなく)ことによって理想的には他のデータに置き換えたいと思います。 私は次の構文を試しました: "ts/_/test/g "@ts/_/test/g " with modifiable set エラーは発生しませんが、期待どおりに機能しません(prefixが%機能するのと同じように)。 それを行う適切な方法は何ですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.