it-swarm-vi.com

Làm cách nào để chọn / xóa cho đến khi kết thúc tập tin trong vim / gvim?

Vô tình tôi quản lý để sao chép-dán một đoạn trong vim một trăm triệu lần. Làm cách nào để chọn và sau đó xóa văn bản từ vị trí hiện tại của tôi đến cuối tệp?

Trong Windows, đây sẽ là Ctrl-Shift-End, sau đó là Xóa.

44
ripper234
VGx

Vào Chế độ trực quan, đi đến Kết thúc tệp, xóa.

Ngoài ra, bạn có thể làm:

Vggx

Để xóa từ vị trí hiện tại đến đầu tập tin.

55
Mark Szymanski

d đang xóa và G di chuyển đến cuối tập tin, vì vậy dG sẽ xóa đến cuối tập tin. Nó bao gồm toàn bộ dòng hiện tại mặc dù; nếu bạn ở giữa dòng và muốn giữ mọi thứ trước vị trí hiện tại bạn cần sử dụng Phương pháp của Mark

57
Michael Mrozek

Bạn cũng có thể chỉ cần gõ u để hoàn tác các thay đổi dẫn đến việc sao chép-dán sai lầm.

8
vimmar

Một phương pháp khác: :.,$d

Điều đó có nghĩa là trong chế độ ex, địa chỉ dòng hiện tại kết thúc và xóa.

8
Keith
vGx

hoạt động tốt cho lựa chọn nhiều dòng (trong trường hợp này là đoạn văn), nhưng nếu bạn muốn chọn trong một dòng duy nhất thì nó hoạt động một cách bí ẩn (chọn từ con trỏ cho đến đầu dòng).

Trong trường hợp lựa chọn trong một dòng duy nhất, bạn phải sử dụng:

v$x

Chuyển sang chế độ Visual ("v") và đi đến cuối dòng ("$") và xóa ("x") từ vị trí hiện tại cho đến cuối dòng.

2
Kayvan Tehrani

Vggx không làm việc cho tôi, nhưng vG $ d đã làm. vG $ chọn to EOF (ký tự cuối cùng của dòng cuối cùng), sau đó bất kỳ lệnh nào bạn muốn thực hiện.

= Cách tiếp cận này (lệnh sa select) dường như hoạt động tốt hơn. Tất nhiên, tôi đang sử dụng Vim 8.1 trên Windows 10 và một vài năm sau đó.

0
user3473636