ฉันรู้วิธีการเลื่อนใน tmux ใช้แป้นพิมพ์ แต่ผมสังเกตเห็นว่ามันดูเหมือนว่ามีวิธีการใช้ที่เลื่อนขั้วกับ GNU หน้าจอ สิ่งนี้สามารถทำได้ด้วย tmux?
ฉันรู้วิธีการเลื่อนใน tmux ใช้แป้นพิมพ์ แต่ผมสังเกตเห็นว่ามันดูเหมือนว่ามีวิธีการใช้ที่เลื่อนขั้วกับ GNU หน้าจอ สิ่งนี้สามารถทำได้ด้วย tmux?
คำตอบ:
สิ่งนี้เป็นไปได้ทั้งในหน้าจอ GNU และใน tmux และวิธีแก้ปัญหาคล้ายกัน: เพื่อหลอกมัลติเพล็กเซอร์ให้คิดว่าเทอร์มินัลไม่มีโหมด "หน้าจอทางเลือก" (เช่นที่ใช้โดย pico, mutt, ฯลฯ ) สามารถทำได้โดยการตั้งคำสั่ง termcap สำหรับเซสชัน
สำหรับหน้าจอ GNU ให้ใส่สิ่งนี้ใน.screenrc
:
termcapinfo xterm*|xs|rxvt|terminal ti@:te@
และสำหรับ tmux ให้เพิ่มส่วนนี้ของคุณ.tmux.conf
:
set -ga terminal-overrides ',xterm*:smcup@:rmcup@'
ส่วน ' xterm*
' ของคำสั่งควรถูกตั้งค่าเป็นสิ่งที่เทอร์มินัลอีมูเลเตอร์ของคุณถูกประกาศเป็น รูปแบบ xterm บางอย่างเป็นการคาดเดาที่ดี แต่คุณสามารถตรวจสอบของคุณในระบบ sane * nix ส่วนใหญ่ด้วย:
echo $TERM
และโดยปกติสามารถตั้งค่าได้ในการตั้งค่าของโปรแกรมเทอร์มินัลของคุณ (เช่น: สำหรับ Apple Terminal.app
มันอยู่ในการตั้งค่า -> โปรไฟล์ -> ขั้นสูง (หรือการตั้งค่า -> ขั้นสูง -> การจำลองก่อนโยเซมิตี) "
ผลลัพธ์สุดท้ายคือโอเวอร์โฟลว์สิ้นสุดลงในบัฟเฟอร์การเลื่อนกลับของเทอร์มินัลแทนที่จะหายไป แน่นอนเนื่องจากเป็นบัฟเฟอร์แบบคงที่สิ่งต่าง ๆ จะยุ่งเหยิงในขณะที่คุณสลับไปมาระหว่างหน้าจอหรือหน้าต่าง tmux แต่มันมีประโยชน์สำหรับการสะบัดอย่างรวดเร็วเพื่อดูผลลัพธ์ของls
คำสั่งหรือสิ่งนั้น
echo $TERM
หากต้องการเปิดใช้งานการเลื่อนคุณสามารถเปิดใช้งานโหมดเมาส์ในตัว~/.tmux.conf
ดังนี้:
set -g mode-mouse on