การรวมคำสั่งใน tmux โดยไม่ใช้คีย์คำนำหน้า


44

เป็นไปได้หรือไม่ที่จะผูกคำสั่ง tmux กับคีย์ผสมและใช้โดยตรงโดยไม่ต้องกดคำนำหน้าก่อน?

ฉันพบว่าC-b + nมันยุ่งยากเกินไปที่จะสลับบานหน้าต่างดังนั้นฉันจึงสงสัยว่าฉันจะผูกC-1ตัวอย่างได้หรือไม่เพื่อสลับไปที่บานหน้าต่าง # 1

หรืออาจจะมีวิธีทำให้ทางลัดใน terminal emulator ส่งC-b + 1เมื่อฉันกดC-1?

ขอบคุณ!


1
set -g prefix C-aฉันเพียงแค่ใช้
grawity

ฉันด้วยฉันก็แค่ใส่ Cb กับคำถามของฉันเพราะนั่นเป็นค่าเริ่มต้น
Ivan

คำตอบ:


45

สำหรับตัวอย่างของคุณใช้:

bind-key -n C-1 select-pane -t 1

อาร์กิวเมนต์ -n เพื่อผูกคีย์หมายถึงไม่มีคำนำหน้า


1
ขอบคุณ! ที่เกือบจะได้รับมันทำ unknown key: C-1แต่มันไม่รู้จักตัวเลขมันบอกว่า ถ้าฉันใช้ตัวอักษรมันใช้งานได้ คุณรู้หรือไม่ว่าฉันจะระบุหมายเลขได้อย่างไร
อีวาน

5
@Ivan: รหัสปกติสำหรับการกดแป้นควบคุมมาจาก ASCII ASCII ไม่ได้กำหนดรหัสสำหรับ C-1..C-9 อักขระควบคุม ASCII มาตรฐานคือ C- @, Ca..Cz, C- [, C- \, C-], C- ^, C-_ และ C-? เทอร์มินัลส่วนใหญ่ไม่สนับสนุนรหัสที่แตกต่างกันสำหรับการกดแป้นที่ถูกปรับเปลี่ยนส่วนใหญ่ คุณน่าจะใช้ดีกว่าF1แทนC-1(โปรดทราบว่าหมายเลขบานหน้าต่างเริ่มต้นที่ 0 ไม่ใช่ 1: ผูก F1 กับการเลือกบานหน้าต่าง 0, F2 ถึง 1, ฯลฯ )
Chris Johnsen

2

ฉันเล่นลิ้นกับคำตอบที่ยอมรับได้ที่นี่

ตามที่tmux(1), -n is an alias for -T root. ดังนั้นการรวม-nไม่ได้หมายความว่ามี "no prefix" เท่าที่มันหมายถึงคำสั่งจะถูกผูกไว้กับตารางรากซึ่งเป็น "ไม่แนะนำ"

tmux(1):

ตารางรากใช้สำหรับคีย์ที่กดโดยไม่มีคีย์นำหน้า: การผูก 'c' กับหน้าต่างใหม่ในตารางรูท (ไม่แนะนำ) หมายความว่า 'c' ธรรมดาจะสร้างหน้าต่างใหม่

สิ่งนี้ดูเหมือนจะพูดคือ:

bind -n c new-window

จะสร้างหน้าต่างใหม่เมื่อcกดและมันจะทำ

อารมณ์ขันแห้งในวลีของผู้เขียน "ไม่แนะนำ" เป็นความจริงที่ว่า "C" ของหลักสูตรจะต้องกดหลายครั้งในเซสชั่น tmux เฉลี่ยที่ได้รับว่า"C" คืออักษรสามส่วนใหญ่ที่พบบ่อยในภาษาอังกฤษ

ตัวอย่างอื่น ๆ นี่คือการสลับหน้าต่าง tmux อย่างรวดเร็ว (โดยใช้ปุ่ม PageUp / PageDown):

unbind NPage
unbind PPage
bind -n PPage previous-window
bind -n NPage next-window
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.