Câu trả lời:
Âm thanh như bạn đang tìm kiếm tham gia. Về mặt kỹ thuật cho phần thứ hai của câu hỏi của bạn, bạn muốn tham gia một khung vào cửa sổ hiện tại, không phải là cửa sổ đầy đủ từ phiên khác vì có thể bao gồm nhiều bảng.
Đây là một ví dụ. Giả sử bạn đang ở phiên 0, cửa sổ 4 và trong phiên 2 mà bạn muốn khung cửa sổ 3 1. Trong lời nhắc tmux ( ctrl+b :
theo mặc định)
join-pane -s 2:3.1
Điều này sẽ di chuyển khung 1 từ cửa sổ 3, phiên 2 (-s là cửa sổ nguồn và đưa định dạng phiên: window.pane) sang phiên hiện tại của bạn (phiên 0).
Dưới đây là các tài liệu đầy đủ cho khung tham gia, mà bạn có thể nhận được từ trang man tmux. Phần khó hiểu nhất đối với tôi khi đọc các tài liệu là tìm ra định dạng được mong đợi cho src-pane chỉ định số phiên, số cửa sổ và số khung ( session:window.pane
theo ví dụ ở trên). Bạn cũng có thể đặt tên cho phiên và cửa sổ của mình và sử dụng các tên đó thay vì số chỉ mục.
join-pane [-dhv] [-l size | -p percentage] [-s src-pane] [-t dst-pane]
(alias: joinp)
Like split-window, but instead of splitting dst-pane and
creating a new pane, split it and move src-pane into the
space. This can be used to reverse break-pane.
Nếu bạn đang cố gắng tham gia các bảng từ trong cùng một phiên, theo bản năng bạn sẽ muốn bỏ qua "phiên:" khỏi lệnh. Điều này sẽ thất bại. Có vẻ như các -s và -t chuyển sang khung tham gia chấp nhận đối số ở dạng [session]: window [.pane] thay vì [session:] window [.pane]
Điều đó có nghĩa là, phiên là tùy chọn và: là bắt buộc. Điều này thật ngớ ngẩn. Nó sẽ là tương đương với các trình duyệt yêu cầu http://google.com:/ là phiên bản phím tắt của http://google.com:80/ và báo lỗi cho http://google.com/ o_O
Vì ctrl-b! phá vỡ khung hiện tại thành một cửa sổ riêng biệt (ngược lại với những gì chúng tôi muốn làm) và ctrl-b @ (nằm ngay bên cạnh!) không bị ràng buộc theo mặc định (có nghĩa là bạn không ghi đè lên bất cứ điều gì) Tôi khuyên bạn nên tạo lối tắt này ...
bind-key @ command-prompt -p "create pane from:" "join-pane -s ':%%'"