如何將剪切文字附加到 nano/vi 的剪貼簿/緩衝區而不是替換那裡的內容?

如何將剪切文字附加到 nano/vi 的剪貼簿/緩衝區而不是替換那裡的內容?

我目前正在重新組織 ArchLinux pacman 鏡像列表,將所有美國伺服器放在頂部,但進展非常緩慢。對於每台伺服器,我都會向下滾動到列表中的下一個美國伺服器,剪下它,返回頂部,貼上它,等等。

我覺得應該有某種方法讓我從底部開始,將我看到的每台美國伺服器剪切到累積緩衝區中,然後將其全部貼到文件頂部。

我知道 Nano 允許您多次使用 cut 命令來多次添加到 cutbuffer,但這僅適用於彼此直接相鄰的行。

答案1

在 Vim 中,你可以使用:global:move所有符合的行都放在頂部:

:global/United States/move 0

但請注意,這會顛倒移動行的順序。


另一種更符合您要求的方法是將線條切割成命名暫存器:help quote_alpha)。大寫變體會追加並因此累積刪除:

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

然後,您可以將暫存器貼到頂部(這次使用原始順序):

:0put a

相關內容