Để sao chép văn bản vào bảng tạm X trong tmux, điều tôi hiện đang làm là:
- đi chế độ lựa chọn với prefix[
- bắt đầu lựa chọn với space(sử dụng
mode-keys vi
btw) - chọn văn bản và nhấn enter
- sao chép bộ đệm tmux vào X clipboard bằng cách sử dụng prefixctrl+c
(Tôi có một ánh xạ như bind C-c run "tmux show-buffer | xclip -selection clipboard -i"
Tôi đang cố gắng loại bỏ một số bước này bằng cách tạo ánh xạ cho chế độ lựa chọn. Tôi đã thử:
bind-key -t vi-copy C-c run "tmux show-buffer | xclip -selection clipboard -i"
Điều này mang lại cho tôi và lỗi:
.. usage: bind-key [-cnr] [-t key-table] key command [arguments]
(Tôi không thể sao chép lỗi)
Làm thế nào tôi có thể sửa lỗi này?
EDIT: Tôi đã nhận ra rằng tôi có thể chọn và sao chép vào bộ đệm tmux (3 bước đầu tiên) bằng chuột giống như một lựa chọn thông thường (mặc dù tô sáng không kéo dài, nó vẫn chọn văn bản) và sau đó sử dụng liên kết sau để sao chép vào x clipboard :
bind-key -n C-c run "tmux show-buffer | xclip -selection clipboard -i"
(Tôi đã sử dụng phương pháp này để sao chép văn bản này và nó rất dễ dàng;)
lưu ý rằng -n
biểu thị "không có tiền tố" do đó không cần thoát. nếu bạn không bị nhầm lẫn bởi sự nổi bật biến mất thì điều này tương tự như sao chép thông thường (giao diện người dùng thông thường).
đây là điều tốt nhất tôi nghĩ ra cho đến nay ..
EDIT2: hóa ra sự ctrl+ctrùng lặp với điều gián đoạn quá trình nên ctrl+alt+cbây giờ tôi đã thay đổi . (không thích lắm)
EDIT3: tmux 1.8 trở lên đã thêm hỗ trợ để thêm keybindings trong chế độ sao chép để bây giờ ý định ban đầu đầu tiên của tôi có thể sử dụng một cái gì đó như:
bind-key -tvi-copy y copy-pipe "xclip -selection clipboard -i"
bind-key -tvi-copy enter copy-pipe "xclip -selection clipboard -i"
Hai ràng buộc này cho phép sao chép văn bản vào clipboard khi tôi sử dụng enterhoặc yhoàn thành sao chép.
Tôi vẫn giữ dòng này trong trường hợp tôi thực hiện sao chép bằng chuột và quyết định lấy nội dung bộ đệm tmux vào clipboard sau này:
bind-key y run "tmux show-buffer | xclip -selection clipboard -i"
^c
làm khóa ngắt khi tôi sử dụng nó thường xuyên hơn là sao chép. Tôi cũng đã cập nhật câu trả lời để phản ánh giải pháp hiện tại của tôi cho vấn đề này.
bind-key -t vi-copy C-c run "tmux show-buffer | xclip -selection clipboard -i"
trực tiếp mang lại:Unknown command: run
bind-key C-c run "tmux show-buffer | xclip -selection clipboard -i"
hoạt động tốt.
stty intr=^Z
. Hãy cẩn thận với lệnh đó, có thể đặt một ký tự thông thường thành ký tự ngắt (nếu bạn làm như vậy, hãy sử dụng ctrl-v để nhập nó cho đến khi sửa lỗi cài đặt). Và đừng nhầm lẫn về khóa nào được sử dụng (ví dụ: ctrl-z thường là khóa tạm dừng).