มีวิธีใดบ้างในการแก้ไขการตัดบรรทัดที่ผิดพลาดของหน้าจอ (อาจเป็นเพียง Terminal.app)


9

ฉันมีปัญหาในการใช้หน้าจอและ Terminal.app หากฉันได้รับพรอมต์ bash ที่ด้านล่างของหน้าจอและฉันพิมพ์ต่อไปเรื่อย ๆ จนกระทั่งบรรทัดนั้นตัดไปที่บรรทัดถัดไปฉันจะเห็นบรรทัดถัดไป แต่ฉันไม่เห็นบรรทัดที่อยู่เหนือการเปลี่ยนแปลงนี้

นี่เป็นวิธีที่แสดงภาพของปัญหาของฉัน The | แสดงถึงด้านขวามือของเครื่อง

ก่อน. เคอร์เซอร์ของฉันอยู่หลัง 'ตัวอย่าง' ตัวที่สามและฉันกำลังจะพิมพ์ 'ตัวอย่าง' ครั้งต่อไป:

$ asdf                        |
bash: asdf: command not found |
$ example example example     |

หลังจาก. สังเกตว่าหลังจากการห่อแล้วหน้าจอไม่เลื่อน แต่แทนที่จะ 'กิน' บรรทัดที่ฉันเปิดและเริ่มต้นใหม่:

$ asdf                        |
bash: asdf: command not found |
ple                           |

สิ่งที่ฉันคาดหวัง (และสิ่งที่เกิดขึ้นโดยไม่ต้องใช้หน้าจอ) คือหน้าจอทั้งหมดเลื่อนลงหนึ่งหน้าจอหลังจากการตัด

bash: asdf: command not found |
$ example example example exam|
ple                           |

ในที่สุดสิ่งนี้จะเกิดอะไรขึ้นถ้าฉันเลื่อนเคอร์เซอร์บนบรรทัดที่พันไว้ที่จุดเริ่มต้นของบรรทัดคำสั่งมันกินบรรทัดก่อนหน้า:

$ asdf                        |
$ example example example exam|
ple                           |

ความคิดใด ๆ ที่เกิดขึ้น?


เทอร์มินัล GNOME และหน้าจอ 4 ห่อตามที่คาดไว้ที่นี่ FWIW คุณกำลังใช้รุ่นใดและคุณเปลี่ยนการกำหนดค่าใด ๆ จากค่าเริ่มต้น
เบอร์นาร์ด

สิ่งนี้จะเกิดขึ้นเมื่อเชื่อมต่อกับเครื่องที่แตกต่างกันสองเครื่อง เครื่องเดเบียนของฉันมีหน้าจอ 4 พร้อมการกำหนดค่าแบบกำหนดเองบางส่วนและกล่อง rhel 5.3 ของฉันยังมีหน้าจอ 4 ที่ไม่มีการกำหนดค่าแบบกำหนดเองและกล่องทั้งสองแสดงพฤติกรรมเหมือนกันทุกประการ
AlexMax

ฉันมีพฤติกรรมเหมือนกันทุกประการ อาการอื่นของมัน (ไม่ได้อธิบายไว้ด้านบน) คือหลังจากที่บรรทัดก่อนหน้าคือ 'กิน' สิ่งประหลาดเกิดขึ้นกับการเลือก เริ่มเลือกด้วยเมาส์และสิ่งที่อยู่ภายใต้การเลือกจะปรากฏขึ้นถูกต้อง ตัวอย่าง: หากคุณต้องเลือกบรรทัด "$ asdf" ในตัวอย่างสุดท้ายข้างต้นก็จะเปลี่ยนเป็น "bash: asdf: command not found" (ซึ่งเป็นสิ่งที่บรรทัดก่อนหน้าควรจะพูด) มันเหมือนกับว่าหน้าจอเพิ่ง ยังไม่ได้วาดเส้นเหล่านั้นอีก แต่ควรมี มันเหมือนว่าลืมที่จะทำเครื่องหมายเส้นเหล่านั้นว่าสกปรกต้องมีการแสดงผลซ้ำ
ปรับปรุง

เมื่อใดก็ตามที่เริ่มไม่ดีเพียงเลือกทั้งหมด (คำสั่ง + A) เพื่อให้บัฟเฟอร์หน้าจอดูถูกต้อง
Eddified

และนี่ไม่ใช่ปัญหาใน iTerm.app
Eddified

คำตอบ:


7

ที่ประสบความสำเร็จ! ฉันลองคำแนะนำจากที่นี่:

/server/272818/screen-not-dropping-down-a-line

สิ่งที่จะเพิ่ม:

termcapinfo xterm* ti@:te@

ไปที่.screenrcหน้าจอและรีสตาร์ทของคุณ การเปลี่ยนแปลงพฤติกรรมการเลื่อนกลับของหน้าจอเป็นสิ่งที่น่าจะดีกว่าสำหรับกรณีการใช้งานโดยเฉลี่ยของฉัน (เช่นฉันสามารถใช้การเลื่อนกลับของเทอร์มินัลได้ตราบใดที่ฉันยังคงอยู่ในหน้าต่างเดียวกัน) นอกเหนือจากการแก้ไขปัญหาของ OP

นอกจากนี้ฉันสามารถยืนยันปัญหาใน Terminal.app ของ 10.7


งานนักสืบที่ดี! น่าเสียดายที่ฉันเป็นผู้ใช้จำนวนมากในหลาย ๆ หน้าต่างของหน้าจอดังนั้นสิ่งนี้จะไม่ทำงานสำหรับฉัน
AlexMax

มันไม่ทำงานสำหรับฉันทั้งเมื่อฉัน ssh ไปยังเซิร์ฟเวอร์อื่นซึ่งเป็นที่ที่ฉันกำลังทำงานในปัญหา ไม่แน่ใจว่าสามารถระบุได้เช่นนี้ยากหรือไม่termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' ti@:te@
Brian Thomas

2

มันอาจเป็น 'แนวนอนเลื่อนโหมด' ของ readline รันคำสั่งต่อไปนี้:

bind 'set horizontal-scroll-mode off'

และดูว่าอาการของคุณเปลี่ยน หากเป็นเช่นนั้นคุณสามารถตั้งค่าเป็น ~ / .inputrc


1
ไม่ได้ช่วยในกรณีของฉัน
ปรับปรุง

0

เข้าสู่การตั้งค่าเทอร์มินัลและเปลี่ยน "ประกาศเทอร์มินัลเป็น:" การตั้งค่าจาก "xterm-color" เป็นเพียง "xterm" ที่แก้ไขสำหรับฉัน (แต่ยังมีผลมาจากการปิด altscreen :()


ฉันได้กำหนดค่า Terminal.app ด้วยวิธีนี้และไม่ได้ช่วยฉันแก้ปัญหา โหมดเลื่อนแนวนอนถูกปิดใช้งานตามค่าเริ่มต้นตามหน้าหลักของหน้าจอและฉันไม่เห็นว่าจะเปิดไว้ที่ใด คนเกียจคร้าน ต้องการแก้ปัญหานี้จริงๆ
Tim Harper
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.