คำถามติดแท็ก ncurses

4
ฉันจะตรวจสอบข้อกำหนดของเทอร์มินัลใดบ้างที่มีอยู่?
ส่วนใหญ่ของคำถามอยู่ในชื่อ แต่จะทำเพียงเล็กน้อย: ในส่วน Linuxes find /usr/share/terminfo -type fฉันสามารถ แต่ในเครื่อง Solaris ฉันมีสถานที่ใกล้เคียง - ไดเรกทอรีนี้ไม่มีอยู่จริง ฉันสามารถวนซ้ำรายการเทอร์มินัลและทำสิ่งที่ชอบ: for TERM in xterm xtermc xterm-color xterm-256color screen rxvt do tput cols >/dev/null 2>/dev/null && echo "$TERM available" done แต่มันช้า ตัวเลือกใด ๆ เพื่อค้นหาเส้นทางที่ใช้โดยtputนิยามเทอร์มินัลและเรียกใช้ "ค้นหา" ด้วยตัวเอง?

4
Escape sequences ในเอาต์พุตของสคริปต์ที่เรียกจากแอ็พพลิเคชัน ncurses
ขณะนี้ฉันกำลังเรียกใช้ mcabber เป็นลูกค้า Jabber ของฉัน (ซึ่งใช้ ncurses) ในเซสชั่น tmux บน homeserver ของฉัน ในพื้นที่ฉันเรียกใช้ iTerm2 เป็นเทอร์มินัลอีมูเลเตอร์ซึ่งรองรับการกระตุ้นการแจ้งเตือนคำรามผ่านลำดับการหลีกเลี่ยงตัวละคร หมายเหตุ: ทั้งหมดechoในคำถามนี้ทำงานเหมือนprintf %bหรือecho -eในทุบตีและ echoGNU เช่นecho "\e]9;foobar\007"ทำให้ iTerm2 ส่งข้อความคำรามด้วยข้อความ "foobar" อย่างไรก็ตามเมื่ออยู่ในเซสชั่น tmux ลำดับการหลีกเลี่ยงจะถูกทำลาย ดังนั้นการใช้ลำดับ escape character ที่เป็นกรรมสิทธิ์\Ptmuxสามารถใช้ดังนี้: echo "\ePtmux;\e\e]9;foobar\007\e\\" สิ่งนี้ทริกเกอร์ข้อความคำรามจากภายในเซสชัน tmux อย่างไรก็ตามเมื่อฉันใช้สิ่งนี้ในสคริปต์เหตุการณ์ mcabber ของฉันที่ถูกไล่ออกเมื่อได้รับข้อความใหม่จะไม่มีการแจ้งเตือนใด ๆ ขึ้นมาราวกับว่าเสียงสะท้อนถูกส่งไปยังเทอร์มินัลผิด ฉันคิดว่าสิ่งนี้เกี่ยวข้องกับ mcabber ซึ่งเรียกสคริปต์ว่าเป็นแอปพลิเคชัน ncurses ดังนั้นผลลัพธ์จากสคริปต์ทุบตีปกติของฉันจะหายไปและ iTerm 2 ไม่เคยเห็นเลย ฉันพยายามโทร …

2
ทำไม bash เชื่อมโยงไปยัง ncurses
ฉันคิดว่าฉันสังเกตเห็นสิ่งนี้มาก่อน แต่ไม่เคยคิดถึงมันมากนัก ตอนนี้ฉันอยากรู้ > ldd /bin/bash linux-vdso.so.1 => (0x00007fff2f781000) libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f0fdd9a9000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f0fdd7a5000) libc.so.6 => /lib64/libc.so.6 (0x00007f0fdd3e6000) /lib64/ld-linux-x86-64.so.2 (0x00007f0fddbf6000) Libtinfo เป็นส่วนหนึ่งของ ncurses นี่เป็นระบบ fedora แต่มันเหมือนกันบน Ubuntu และฉันสังเกตเห็นบน raspbian (ตัวแปร debian) มันยังเชื่อมโยงไปยัง libncurses ด้วย อะไรคือเหตุผลนี้ ฉันคิดว่าทุกอย่างทุบตีสามารถทำได้ด้วย libreadline (ซึ่งอยากรู้อยากเห็นมันไม่ได้เชื่อมโยงไป) นี่เป็นเพียงสิ่งทดแทนสิ่งนั้นหรือไม่?
11 bash  readline  ncurses 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.