ฉันจะทำการนำเสนอเกี่ยวกับผลิตภัณฑ์ซอฟต์แวร์และมีปุ่มลัดบางปุ่มที่ฉันต้องการแสดง มีโปรแกรมที่แสดงแป้นพิมพ์ลัดที่ฉันใช้หรือไม่
ฉันจะทำการนำเสนอเกี่ยวกับผลิตภัณฑ์ซอฟต์แวร์และมีปุ่มลัดบางปุ่มที่ฉันต้องการแสดง มีโปรแกรมที่แสดงแป้นพิมพ์ลัดที่ฉันใช้หรือไม่
คำตอบ:
มีโปรแกรมที่เรียกว่าkey-monที่ตรวจสอบปุ่มกด มันผ่านมานานแล้วตั้งแต่ฉันใช้มัน แต่มันใช้งานได้ดีและจอแสดงผลนั้นค่อนข้างน่าสนใจ
คุณสามารถใช้xev
(เหตุการณ์ X) เพื่อทำสิ่งนี้
xman &
เริ่มต้นโปรแกรมที่คุณต้องการในการตรวจสอบเช่น
จากนั้นใช้wmctrl -l
เพื่อแสดงรายการ X windows มันอาจมีลักษณะเช่นนี้:
0x00400009 0 VLAN-.... urxvt
0x00e0007a 0 VLAN-.... Iceweasel
0x00800011 0 VLAN-.... xman
คุณต้องการ ID หน้าต่าง (ฐานสิบหก) ในคอลัมน์แรก เพื่อให้ได้คุณสามารถใช้grep
และเรียกบรรทัดตามคอลัมน์ที่สี่ (ชื่อแอปพลิเคชันซึ่งเป็นธรรมชาติมากขึ้นสำหรับคุณที่จะใช้เป็นมนุษย์) - เมื่อคุณมีบรรทัดคุณสามารถรับคอลัมน์แรกด้วยcut
( คอลัมน์แรก ฟิลด์ด้วย-f1
โดยใช้ตัวคั่นช่องว่าง-d" "
เพื่อคั่นฟิลด์)
คุณสามารถวิเคราะห์ข้อมูล (เพื่อรับ ID) ได้หลายวิธีหรือแม้กระทั่งป้อนรหัสด้วยตนเองแน่นอน (เลขศูนย์ในคอลัมน์ที่สองด้านบนคือหมายเลขเดสก์ท็อป)
จากนั้นลอง
xev -id `wmctrl -l | grep xman | cut -d" " -f1` | tee event.txt
มันจะแสดงการกดแป้น (และอื่น ๆ ) ในเทอร์มินัลเดียวกับคำสั่งที่ถูกเรียก; บวกกับtee
มันจะเก็บสิ่งที่คุณเห็นในไฟล์ มันเป็นความคิดที่ดีที่จะให้แสดงผลstdout
ในเทอร์มินัลเช่นนี้จะแสดงให้คุณเห็นการกระทำทันที นอกจากนี้หากคุณไม่ได้รันคำสั่งเป็นกระบวนการพื้นหลัง (ด้วย&
) คุณสามารถยกเลิกได้อย่างง่ายดายด้วยCtrl-C.
หมายเหตุมันใช้งานได้กับ urxvt และ xman แต่ด้วยเหตุผลบางอย่างมันล้มเหลวสำหรับ Iceweasel ในรายการด้านบน (มันบันทึกบางอย่าง แต่มันไม่ได้นำเสนอเหตุการณ์สำคัญที่ชัดเจน (โดยไกล) เช่นกรณีของตัวอย่างอื่น ๆ เหล่านั้น
ฉันพบหน้าจอคีย์วันนี้มันเจ๋งมากและใช้งานได้ดีมาก