切り取ったテキストを、nano/vi のクリップボード/バッファに置き換えるのではなく追加するにはどうすればよいでしょうか?

切り取ったテキストを、nano/vi のクリップボード/バッファに置き換えるのではなく追加するにはどうすればよいでしょうか?

現在、ArchLinux pacman ミラー リストを再編成して、米国のサーバーをすべて一番上に配置していますが、非常に時間がかかっています。サーバーごとに、リストの次の米国のサーバーまでスクロールダウンして、それを切り取り、一番上に戻って貼り付ける、という作業をしています。

下から始めて、表示されるすべての米国サーバーを累積バッファに切り取り、それをすべて一度にファイルの先頭に貼り付ける方法があるはずだと感じています。

Nano では、cut コマンドを複数回使用して、カットバッファに複数回追加できることは知っていますが、それは互いに直接隣接する行にのみ適用されます。

答え1

Vimでは、:global:move一致するすべての行を先頭に移動します。

:global/United States/move 0

ただし、これにより移動した行の順序が逆になることに注意してください。


あなたが尋ねていることにもっと沿った別のアプローチは、線を切ることです名前付きレジスタ:help quote_alpha大文字の変形は追加され、したがって削除が蓄積されます。

:let @a = "" | global/United States/delete A

次に、レジスタを上部に貼り付けます (今回は元の順序のまま)。

:0put a

関連情報