วิธีการใช้งาน Byobu keybindings ในเซสชันระยะไกลที่ซ้อนอยู่?


22

ฉันใช้ Byobu (กับ Tmux, ภายใน gnome-terminal) และฉันมีปัญหากับปุ่มลัด (ซึ่งฉันอาจไม่เข้าใจ)

ฉันเปิดตัว byobu เปิดหน้าต่างสองสามครั้งจากหนึ่งในหน้าต่างเหล่านี้ฉัน ssh ไปยังเครื่องอื่นและเปิดใช้ byobu ที่นั่น ไม่ว่าฉันจะกดCtrl- cหรือCtrl- a- cฉันไม่แน่ใจว่าจะสร้างและสลับระหว่างหน้าต่างในเซสชันระยะไกลนี้ได้อย่างไร

หมายเหตุ: ถ้าฉันป้อนShift- F12ฉันสามารถสลับระหว่าง windows โดยใช้ปุ่มฟังก์ชั่นในเซสชันระยะไกลได้

ความคิดใด ๆ

ขอบคุณล่วงหน้าสำหรับความช่วยเหลือของ.


1
การมีอินสแตนซ์ของ tmux สองตัวนั้นทำให้คุณสับสน: ลองหลีกเลี่ยงถ้าคุณทำได้ ที่กล่าวว่าฉันตอบคำถามของคุณ
Jennifer Wilson

คำตอบ:


20

ฉันสมมติว่าคุณกำหนดค่า byobu ให้ใช้Ctrl- Aเป็นลำดับ escape ของ tmux

คำสั่งที่คุณพิมพ์ในเทอร์มินัลของคุณได้รับการจัดการโดยอินสแตนซ์ tmux โลคัลของคุณจากนั้นจัดการโดยเซสชั่น tmux ที่ซ้อนกัน หมายความว่าคุณต้องหลบหนีสองครั้งเพื่อไปยังอินสแตนซ์ที่ซ้อนกัน:

  • Ctrl- a c# เปิดหน้าต่างในเซสชันท้องถิ่นของคุณ
  • Ctrl- a Ctrl- a c# เปิดหน้าต่างในเซสชันระยะไกลของคุณ

หากบรรทัดที่สองไม่ทำงานให้ลอง (ตามที่ระบุโดย @artm )

  • Ctrl- a a c# วินาทีโดยไม่Ctrl

2
แนวคิดเพิ่มเติมหนึ่งข้อ: หากคุณทำเช่นนี้บ่อยครั้งให้เปลี่ยนคีย์คำสั่งสำหรับเครื่องด้านในเป็นอย่างอื่นเช่น ^ B
poolie

7
ไม่ได้ผลสำหรับฉัน ctrl-a สองเท่าสลับไปยังแท็บอื่นของเซสชัน byobu ในพื้นที่
Gelin Luo

1
@ สีเขียวฉันประสบปัญหาเดียวกันการกด Ctrl-a สองครั้งจะเปลี่ยนแท็บในเซสชันภายนอก
ออกจากระบบ

6
มันควรจะเป็นCtrl-a a c(ที่สอง 'a' โดยไม่มีการควบคุม)
artm

16

ฉันพบว่าการใช้Shift-F12การสลับเปิด / ปิดปุ่มลัดของ byobu ภายนอกนั้นง่ายต่อการจดจำและใช้งาน คีย์ใหม่เดียวที่ต้องจำคือShift-F12และจากนั้นภายใน byobu สามารถควบคุมได้ด้วยปุ่มลัดปกติ

พบวิธีแก้ปัญหาที่นี่


1
นอกจากนี้ยังมีประโยชน์สำหรับความสามารถในการส่งคีย์ F ไปยังแอปพลิเคชันที่ทำงานอยู่ภายใน byobu ตามที่ระบุไว้ใน: askubuntu.com/questions/146585/ …
mp3foley

2

Ctrl-a Ctrl-aยังไม่ทำงานสำหรับฉัน ฉันพบว่ามันทำงานได้หลังจากแสดงความคิดเห็นบรรทัดต่อไปนี้ใน.byobu/keybindings.tmux:

unbind-key -n C-a

วิธีแก้ปัญหาอื่นคือการใช้send-keyคำสั่งTmux ภายใน:

  • เลือกบานหน้าต่างหรือหน้าต่างที่เซสชันซ้อนอยู่ทำงาน
  • กดCtrl+ a :enter send-key -2จากนั้นคำสั่งหรือแป้นที่คุณต้องการส่ง

ตัวอย่าง:

  • Ctrl+ a : send-key -2 c= สร้างหน้าต่างใหม่
  • Ctrl+ a : send-key -2 p= เปลี่ยนเป็นหน้าต่างก่อนหน้า
  • Ctrl+ a : send-key -2 n= เปลี่ยนเป็นหน้าต่างถัดไป

ไม่เข้าใจง่าย แต่ทำงานได้แม้กับ Putty


ขอบคุณสำหรับสิ่งนี้! ฉันสามารถตั้งค่าคำนำหน้า byobu ท้องถิ่นของฉันเป็น Cb และคำนำหน้า byobu ระยะไกลเป็น Ca โดยการเปลี่ยน ~ / .byobu / keybindings.tmux กำลังพยายามตั้งค่านี้ใน ~ / .byobu / .tmux.conf ไม่ทำงานด้วยเหตุผลบางประการ
Marc Laugharn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.