ソースファイルに「300yy」と入力すると、300行をヤンクしたと表示されます。
宛先ファイルに移動してpを押すと、貼り付けられますが、最初の50行のみです。
300を貼り付けない理由は何ですか?
vimセッション中に現在の設定を確認するには、次のコマンドを実行します。
:set viminfo?
Vim Tips Wikiで提案されているように、ex-commandを実行することで設定を調整できviminfo
ます(これもvimセッション中に)。
:set viminfo='100,<1000,s100,h
または、を削除して、次の:
ようにデフォルトとして設定できます.vimrc
。
set viminfo='100,<1000,s100,h
個々の部分の意味:
'100
最後に編集された100個のファイルのマークが記憶されます。<1000
各レジスタに保存される行数を1000行に制限します。レジスタに1000行を超える行が含まれている場合、最初の1000行のみが保存されます。s100
テキストが100KBを超えるレジスタはスキップされます。h
Vimの起動時に検索の強調表示を無効にします。Eugene と Zyx が言ったように、viminfo を調整するのが最も簡単な解決策です
:set viminfo-=<50,s10
代替ソリューションは、使用:read
および/または:write
file-name.txt から現在のバッファに読み込むには
:read file-name.txt
現在のバッファから 1 行目から 300 行目までの範囲を file-to-append.txt に追加するには
:1,300write >> file-to-append.txt
ビジュアル マークなどの行番号の代わりにマークを使用することもできます。
:'<,'>write >> file-to-append.txt
もちろん、追加は、viminfo の変更がおそらく最適に機能するユース ケースを満たすことができない場合があります。
:help :write
:help :read
:help 'viminfo'
:help :set-=
同じセッションにとどまり(:e pathを実行して新しいファイルを開きます)、制限はありません。
試してみてくださいvim -p file1 file2
。各ファイルを新しいタブで開き (これはすばらしい)、コピー/貼り付けの制限を解決します。