2009-03-03 61 views
22

Tôi đang cố gắng sao chép một lựa chọn văn bản từ vim sang một ứng dụng cửa sổ khác ... ví dụ: firefox hoặc notepad. Tuy nhiên tôi không thể làm điều này với lệnh y. Tôi đã bật các phím nóng cho windows bằng cách nhấn ctrl-c Tôi có thể đạt được điều này nhưng hy vọng sẽ loại bỏ hoàn toàn các lệnh windows này trong Vim.sao chép văn bản từ vim sang windows

Điều này có khả thi không? cũng sao chép ngược lại từ cửa sổ và dán vào vim

Trả lời

16

Tôi không thấy bất kỳ tác hại nào khi sử dụng các phím lệnh Windows trong GVim. Ngoài ra, bạn cũng có thể sử dụng phím nóng "+y để quay số (sao chép) và "+p để dán vào và từ khay nhớ tạm của hệ thống. Điều này làm việc trên hầu hết các nền tảng (các cá thể Vim không được gắn trực tiếp vào một máy chủ X trên Unix thì khó hơn một chút).

+0

tôi tin rằng nên đọc "* (báo giá cho việc lựa chọn đệm, ast erix cho clipboard hệ thống), hoặc tôi nhầm? – falstro

+0

Bạn bị nhầm - tìm kiếm "cliboard" trong gvim help –

+0

Xin lỗi, bỏ qua điều đó - tôi đoán câu trả lời là bạn có thể sử dụng cả hai! –

7

Không sử dụng các liên kết cửa sổ vì bạn sẽ không thể hoạt động tốt trong Vim trên các nền tảng khác.

Sử dụng "*y - sao chép vào khay nhớ tạm của hệ thống. Nó hoạt động tốt trên Mac Os, Windows, Linux.

+0

"* y?" Là "quote - dấu sao - y"? – innaM

+0

Tôi không đồng ý với lý do của bạn không sử dụng ràng buộc Windows. Bên cạnh thực tế là trình soạn thảo văn bản không phải là hệ điều hành (ngoại trừ những người dùng emacs này ở đó) và các thành ngữ giao diện người dùng thay đổi từ hệ điều hành sang hệ điều hành, Command + C thực sự giống nhau trên tất cả các hệ thống được biết đến với tôi (mặc dù OS X… –

+0

(tiếp)… sử dụng phím lệnh “riêng” (trên tất cả các ứng dụng !) trong khi Windows và Linux GUI sử dụng phím điều khiển) –

9

theo câu trả lời ở trên:

"*y 
"*p 

Sử dụng Ctrl-V sẽ làm cho khi nhập ký tự điều khiển khó khăn trong chế độ chèn và ctrl-v là visual-block trong chế độ bình thường, mặc dù như vậy là ctrl-q.

Cá nhân đã tìm thấy khá tự nhiên & chút ngón tay sau thân thiện

vmap <a-c> "*y 
imap <a-p> "*p 
2

Nếu bạn muốn sao chép từ một cửa sổ (hoặc từ vim), hãy thử:

:set paste 

Nhưng hãy cẩn thận lựa chọn khác có thể được sửa đổi. Mọi thứ được chi tiết trong:

:help paste 

Hy vọng điều đó sẽ hữu ích.

27

Tôi có

set clipboard=unnamed 

trong tôi ~/vimrc. Sau đó, "yy", "D", v.v., được chuyển thẳng vào khay nhớ tạm của Windows. Nó cũng hoạt động trong MacVim. Đối với Linux gvim, bạn phải nhớ tiền tố các hoạt động này với "+

1

Lưu tập tin, mở nó trong một trình soạn thảo có sử dụng công ước chuẩn của Windows, sau đó copy và dán như bạn thường làm.

0

Đối với Windows 7 , bạn cần phải chỉnh sửa file config vim tại địa chỉ:

C:\users\<User>\vimfiles\vimrc 

chỉ cần thêm dòng sau vào tập tin cấu hình:

set clipboard=unnamed 
Các vấn đề liên quan