2011-10-14 26 views
63

Tôi sử dụng gvim trong cửa sổ. Làm thế nào để sao chép văn bản từ vị trí hiện tại đến cuối dòng trong vi và dán nó vào một tập tin khác được mở trong vi. Tôi googled nó nhưng không thể tìm thấy bất kỳ giải pháp cho việc này. Đánh giá cao bất kì sự giúp đỡ nào về điều này. Cảm ơn bạn.Cách sao chép từ vị trí hiện tại đến cuối dòng trong vi

Trả lời

101

Lệnh chế độ thông thường để di chuyển đến cuối dòng là $. Bạn có thể sao chép vào cuối dòng bằng y$ và dán với p. Để sao chép/dán giữa các phiên bản khác nhau, bạn có thể sử dụng khay nhớ tạm thời của hệ thống bằng cách chọn đăng ký *, vì vậy các lệnh trở thành "*y$ để sao chép và "*p để dán.

Kiểm tra :h registers để biết thêm thông tin.

+0

Cảm ơn. nhưng tôi muốn dán nội dung vào 'một tệp khác' được mở trong vi. Điều này chỉ hoạt động với cùng một tệp. – javalearner

+2

Nó sẽ làm việc cho bất kỳ tệp nào mở trong cùng một phiên bản. Bạn có thể sao chép vào khay nhớ tạm của hệ thống bằng cách chọn thanh ghi '*' (hoặc '+'). –

+1

Tuyệt vời. Cảm ơn bạn .. – javalearner

28

Nếu bạn không muốn bao gồm ngắt dòng bằng yank, bạn có thể sử dụng yg_. (Hoặc trong trường hợp của bạn, "*yg_)

Về cơ bản, chỉ cần nhận ra có sự khác biệt giữa $g_ chuyển động khôn ngoan. Nó đã giúp tôi rất nhiều lần.

+1

Có cách nào để hoán đổi 'g_' và' $ 'không? Tôi thấy mình hiếm khi bao giờ cần phải bao gồm các ngắt dòng trong chuyển động. –

+0

CÓ! dòng mới bổ sung đang khiến tôi phát điên. Đây là thông tin cần thiết. – javadba

+2

@JonathanDumaine trong '$ MYVIMRC' của bạn thêm dòng' nmap $ g_' – thedanotto

2

Thêm dòng này để vimrc của bạn

" Make Y yank till end of line 
nnoremap Y y$ 

thêm tại my vimrc.

2

Một giải pháp khác: Dp và dán nó với p. Trong thực tế, điều này đầu tiên xóa đến cuối dòng và dán lại nó tại cùng một vị trí. Dán nó vào một nơi khác với p.

Các vấn đề liên quan