ฉันโต shift-pgup แล้วเหนื่อยล้าเพื่อเลื่อนหน้าขึ้นใน terminal gnome, command line, terminator และ guake เป็นต้น
มีวิธีใดบ้างที่จะทำให้แอปเหล่านี้ใช้ปุ่มเลื่อนหน้าขึ้นและเลื่อนลงตรงสำหรับการสลับหน้า
ฉันโต shift-pgup แล้วเหนื่อยล้าเพื่อเลื่อนหน้าขึ้นใน terminal gnome, command line, terminator และ guake เป็นต้น
มีวิธีใดบ้างที่จะทำให้แอปเหล่านี้ใช้ปุ่มเลื่อนหน้าขึ้นและเลื่อนลงตรงสำหรับการสลับหน้า
คำตอบ:
ฉันกลัวว่านี่จะเป็นไปไม่ได้เนื่องจากไม่มี PgUp / PgDown จะถูกส่งไปยังแอปพลิเคชันบรรทัดคำสั่งซึ่งจะทำให้บางส่วนใช้งานไม่ได้ นี่เป็นฟีเจอร์ที่ดีสำหรับ Unix
หากคุณต้องการการเลื่อนที่ใช้ง่ายขึ้นฉันแนะนำให้ใช้less
คำสั่ง มันใช้วิธีนี้:
command-with-lot-of-output | less
สิ่งนี้จะเริ่มต้นless
คำสั่งด้วยผลลัพธ์ของคำสั่งดั้งเดิมของคุณ ( ข้อมูลเพิ่มเติมเกี่ยวกับการส่งออกไพพ์ไปยังโปรแกรมอื่น ๆ สามารถดูได้ที่นี่: http://www.dsj.net/compedge/shellbasics1.html )
สามารถนำทางน้อยโดยใช้ลูกศรหรือ PgUp / PgDown เพื่อความสะดวกของคุณนอกจากนี้ยังมีการค้นหาและอื่น ๆ (ดูman less
เพิ่มเติม) คุณสามารถเลิกless
ได้โดยเพียงแค่กดปุ่มq
ที่สำคัญ
ใช้xterm
และปรับแต่งปุ่มลัด (ใน~/.Xresources
) ดังนี้:
xterm*VT100.Translations: #override \n\
<KeyPress>Prior:scroll-back(1,page)\n\
<KeyPress>Next:scroll-forw(1,page)\n\
gnome-terminal
พูดว่า PageUp / PageDown สำหรับแอพพลิเคชั่นภายในเครื่องเทอร์มินัลและการใช้งานจะทำให้เกิดความสับสน ...
Konsoleเป็นโปรแกรมจำลองเทอร์มินัลสำหรับ KDE ที่มีตัวเลือกที่เกี่ยวข้องซึ่งสามารถกำหนดค่าให้ใช้Page UpและPage Downปุ่มสำหรับการสลับหน้าโดยตรง ไม่มีเทอร์มินัลอีมูเลเตอร์อื่น ๆ ที่ฉันพบว่าทำได้ง่ายเหมือนกับ Konsole สำหรับการปรับแต่งเช่นนั้น
วิธีจัดเพจจิ้งโดยตรง
ใน Konsole ให้ทำตามขั้นตอนต่อไปนี้
ในแถบเมนูไปที่ "การตั้งค่า" และคลิก "กำหนดค่าโปรไฟล์ปัจจุบัน ... " (Kubuntu 12.04) หรือ "แก้ไขโปรไฟล์ปัจจุบัน ... " (Kubuntu 16.04) และหน้าต่างจะปรากฏขึ้น
คลิกที่แท็บ "Input" (Kubuntu 12.04) หรือแท็บ "Keyboard" (Kubuntu 16.04) ซึ่งมีส่วนที่เรียกว่า "Key Bindings" พร้อมรายการลิสต์ของคีย์ที่กำหนดไว้ล่วงหน้า
เลือก "ค่าเริ่มต้น (XFree 4)" และคลิกปุ่ม "แก้ไข ... " จากนั้นหน้าต่างอื่นจะปรากฏขึ้น
เลื่อนลงและมองหาคีย์ผสมกับการส่งออกPgDown-Shift-AnyModifier
เปลี่ยนชื่อการส่งออกนี้\E[6~
ScrollPageDown
เลื่อนลงและมองหาคีย์ผสมกับการส่งออกPgUp-Shift-AnyModifier
เปลี่ยนชื่อการส่งออกนี้\E[5~
ScrollPageUp
คลิกปุ่ม "ตกลง" เพื่อเสร็จสิ้นและปิดหน้าต่าง
วิธีทดสอบผลลัพธ์
ในขั้นตอนที่ 3 มี "พื้นที่ทดสอบ" เพื่อยืนยันเอาต์พุตสำหรับการกดปุ่มแต่ละครั้ง
คลิกเพื่อนำโฟกัสในช่องข้อความ "อินพุต:" และกดPage UpและPage Downปุ่ม (ทีละครั้ง)
ยืนยันว่าเอาต์พุตจะเหมือนกับที่ถูกเปลี่ยนชื่อ
หรือเขียนสคริปต์อย่างง่ายเพื่อสะท้อนข้อความในลูป ฉันได้รวมสคริปต์ของฉันเองดังต่อไปนี้
คัดลอกและวางบรรทัดของรหัสต่อไปนี้ในเท็กซ์เอดิเตอร์
#!/bin/bash
echo "Started script"
echo "If no input, then loop"
while true
do {
echo "Hello, world"
echo "Wait 1 second to loop [q to quit]"
read -t 1 -n 1 INPUT && echo
if [ "$INPUT" == "q" ]
then break
else echo "UTC now: $(date -u +%H%M%S)"
fi
continue
}
done
echo "Ended script"
บันทึกเป็นไฟล์ ie loop.sh
และเรียกใช้สคริปต์ในเทอร์มินัล ie bash loop.sh
(ไม่สามารถเรียกใช้งานได้)
รอจนกว่าข้อความที่สะท้อนจะเต็มพื้นที่ดูและเริ่มเลื่อนเอาต์พุตลง
จากนั้นกดPage UpและPage Downปุ่มเพื่อเลื่อนขึ้นและเลื่อนลงไปดูพื้นที่
ฉันทดสอบโดยใช้ Konsole 2.8.5, KDE 4.8.5 ใน Kubuntu 12.04
โบนัส: คีย์ผสมและเอาท์พุท
เอาล่ะคำตอบโบนัสสำหรับการชี้แจง บางคนอาจสงสัยว่าทำไมฉันต้องแก้ไขชุดคีย์เหล่านั้นและไม่ใช่ชุดอื่น ๆ ฉันคิดว่าก่อนหน้านี้โดยการทดสอบคีย์บอร์ดหลายประเภท
ต่อไปนี้เป็นชุดคีย์เริ่มต้นและเอาต์พุตซึ่งได้คิดโดยใช้ "พื้นที่ทดสอบ" ใน Konsole
สำหรับปุ่ม Page Up / Page Down หลัก (รวมถึงชุดแป้นพิมพ์ที่ต้องการกดFnแป้น aka Fn + PgUp / Fn + PgDn):
การรวมกันที่สำคัญ: PgDown-Shift-AnyModifier
เอาท์พุท:\E[6~
การรวมกันที่สำคัญ: PgUp-Shift-AnyModifier
เอาท์พุท:\E[5~
สำหรับปุ่ม Page Up / Page Down สำรอง (ทางลัดเริ่มต้นในเทอร์มินัลที่ต้องใช้Shiftชื่อแป้น Shift + PgUp / Shift + PgDn):
การรวมกันที่สำคัญ: PgDown+Shift-AppScreen
เอาท์พุท:ScrollPageDown
การรวมกันที่สำคัญ: PgUp+Shift-AppScreen
เอาท์พุท:ScrollPageUp
โปรดสังเกตว่าเครื่องหมายลบ-
และ+
เครื่องหมายบวกแตกต่างกันระหว่างคำหลักสำหรับคีย์หลักและรอง สิ่งเหล่านี้คือวิธีการแปลความกดปุ่มเป็นตัวละครที่เทียบเท่ากันอย่างน้อยใน Konsole
อย่างไรก็ตามฉันไม่แน่ใจว่าอีมูมินัลเทอร์มินัลเทอร์เรเตอร์คนอื่น ๆ สามารถเข้าใจอักขระที่เทียบเท่าเหล่านั้นได้หรือไม่ นี่คือเท่าที่ฉันรู้จากประสบการณ์ของตัวเอง
คำตัดสิน
สำหรับผู้ใช้ระดับสูงที่ไม่ชอบจัดการกับไฟล์การตั้งค่าที่หลากหลายและวิธีการแก้ปัญหาที่น่าเบื่อหน่าย Konsole จะชนะใจคุณอย่างง่ายดาย ดูเหมือนว่าไม่มีใครสังเกตเห็นถึงการปรับแต่งระดับนี้ที่นำเสนอโดย Konsole และ KDE ในช่วงสี่ปีที่ผ่านมา ช่างแปลกเหลือเกิน
PgDown
ดูเหมือนจะไม่ทำงานด้วยเหตุผลบางอย่าง
ScrollPageDown
, ScrollPageUp
กับก่อนแทนที่\E[6~
, \E[5~
สำหรับPgDown+Shift-AppScreen
และPgUp+Shift-AppScreen
คำสั่งผสมที่สำคัญตามลำดับ สิ่งสำคัญคือต้องคลิก "ตกลง" เพื่อให้การตั้งค่าใช้งาน
คุณสามารถใช้more
คำสั่งดังนี้:
command-with-lots-of-output | more
สิ่งนี้จะเริ่มต้นเอาต์พุตคำสั่งต้นฉบับด้วยเพิ่มเติม
more
สามารถสำรวจด้วย 'space' เพียงกดช่องว่างและดูผลลัพธ์ของคำสั่งเป็นหน้า