Làm cách nào tôi có thể sao chép vào bảng tạm của Mac từ vim?


6

Tôi có thể dán từ vim trong một cửa sổ terminal để vim trong một cửa sổ khác, nhưng không dán bất cứ thứ gì bên ngoài vim. Tôi đã đọc rất nhiều bài viết về chủ đề này, và không có gì tôi tìm thấy đã giúp ích. Sao chép / dán từ MacVim hoạt động, nhưng tôi thích sử dụng VIM hơn.

Tôi đang sử dụng OSX 10.7.5 và Vim 7.4, được cài đặt qua MacPorts.

vim --version 

hiển thị + bảng tạm, + x11, + xterm_clipboard.

Tôi đã thử "+ y," * y kết hợp với cả lựa chọn hình ảnh và lựa chọn phạm vi.

trong tôi ~/.vimrc , Tôi có

set clipboard=unnamedplus,unnamed,autoselect

CHỈNH SỬA:

Giải pháp tìm thấy! Bây giờ, y, yy và như vậy làm việc hoàn hảo! Bất cứ điều gì tôi đã làm trong Vim, tôi có thể dán bên ngoài và bất cứ điều gì tôi ra lệnh bên ngoài, tôi có thể p trong Vim.

Giải pháp: Theo đề xuất của FDinof, tôi đã cài đặt lại qua MacPort KHÔNG CÓ x11, thay vào đó chỉ làm

sudo -v port cài đặt vim + rất lớn

Đối với hồ sơ, tôi vẫn có

đặt clipboard = unnamedplus, chưa đặt tên, tự động chọn

trong ~ / .vimrc của tôi

Cảm ơn sự giúp đỡ của bạn!


2
x11 không cần thiết cho việc này vì mac không sử dụng x11. Tuy nhiên mọi thứ khác có vẻ tốt.
FDinoff

Tôi tò mò về lý do tại sao tôi đã thấy các đề xuất rằng bạn nên biên dịch / cài đặt với x11. Từ những gì tôi có thể google, Apple đã bỏ hỗ trợ cho x11, nhưng có lẽ hỗ trợ clipboard của Vim vẫn yêu cầu x11 hoạt động bình thường vì một số lý do? Tôi phải nói rằng, thật khó chịu khi ứng dụng x11 xuất hiện trên dock bất cứ khi nào tôi đang sử dụng Vim, vì vậy nếu tôi có thể có được những gì tôi muốn mà không cần x11, tôi chắc chắn sẽ thích điều đó.
Reefersleep

1
Biên dịch lại vim không có x11. Tôi không có nó và tôi có thể sao chép vào clipboard. Tôi đoán là bạn đang sao chép vào bảng tạm x11 mà bạn không biết cách truy cập từ phía mac.
FDinoff

Các biến thể duy nhất tôi sử dụng là +huge+python27 Khi tôi cài đặt vim thông qua macports
FDinoff

FDinoff, bạn đã đúng - được biên dịch lại mà không có x11, bây giờ y, yy và cứ thế hoạt động hoàn hảo! Không biết tại sao nó không hoạt động trước đây. Có lẽ tôi đã không đủ hệ thống trong thử nghiệm của mình.
Reefersleep

Câu trả lời:


1

x11 không cần thiết để sao chép vào clipboard vì mac không sử dụng x11. Biên dịch lại vim không có x11. Tôi đoán là bạn đang sao chép vào bảng tạm x11 mà bạn không biết cách truy cập từ phía mac.

Trong macports sử dụng biến thể khổng lồ là đủ để hỗ trợ clipboard hoạt động.

port install vim +huge

4

Từ bộ nhớ trong Vim, bạn có thể sử dụng pbcopy và pbpaste giống như bất kỳ lệnh bên ngoài nào khác. Để sao chép dòng hiện tại vào loại clipboard:

:.!pbcopy

sao chép các dòng từ 1 đến 50

:1,50!pbcopy

Để sao chép nội dung của bảng tạm vào vim bufer hiện tại, hãy sử dụng:

:r !pbpaste


Có thể tôi đã hỏi sai câu hỏi của mình - Tôi cũng đã tìm đến giải pháp pbcopy / pbpaste, nhưng điều tôi thực sự thích là cho y, yy và cứ thế sao chép vào clipboard, vì vậy tôi có thể dán vào bên ngoài Vim - và cho p để dán từ bảng ghi tạm. Liên kết pbcopy và pbpaste với ctrl c / v, như bạn đã đề xuất trong bài đăng trên blog được liên kết của mình, là một giải pháp hiệu quả, nhưng không hoàn toàn thỏa mãn - Tôi sử dụng Vim để có các phím tắt như p và y trong tầm tay và phải sử dụng ctrl c / v trong MỘT SỐ tình huống có vẻ dư thừa và khó hiểu. Tôi mới đăng bài trên stack - tôi có thể viết lại câu hỏi ban đầu của mình không?
Reefersleep


1
Sử dụng: reg để kiểm tra những gì trong sổ đăng ký của bạn sau khi sử dụng y yy + Y, v.v ... Có thể đưa ra manh mối về những gì sai
Antony

0

Đối với những gì đáng giá, tôi đã gặp nhiều rắc rối khi định cấu hình vim để sử dụng bảng tạm và không thể làm cho nó hoạt động cho đến khi tôi cài đặt lại thông qua homebrew mà không có tùy chọn máy khách.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.