Score:1

xbindkeys การกดแป้นนับสองครั้ง (ไม่แยกความแตกต่างระหว่างการกดและการปล่อย)

ธง us

ฉันมีเมาส์ Logitech g502 Proteus และต้องการใช้ปุ่มเมาส์ "ย้อนกลับ" และ "ไปข้างหน้า" (โดยทั่วไปจะใช้กับเบราว์เซอร์)

ฉันตรวจสอบกับ xev ตรวจพบการกดปุ่มเมาส์ ฉันติดตั้ง xbindkeys และใช้การตั้งค่าการอ้างอิงออนไลน์ต่างๆ .xbindkeysrc เพื่อจับคู่ปุ่มเมาส์ (6 และ 7) เพื่อกดชุดปุ่มต่างๆ เพื่อจำลองลักษณะการทำงานที่ถูกต้อง

"xte 'คีย์เ'"
     b:6 + รีลีส

"xte 'keydown Alt_L' 'keydown ขวา' 'keyup ขวา' 'keyup Alt_L'"
     b:7 + รีลีส

ปัญหาคือ การรีแมปจะดำเนินการสองครั้ง หนึ่งครั้งเมื่อกด และอีกครั้งเมื่อปล่อย ฉันคิดว่าตัวดัดแปลง "Release" จะแก้ปัญหานี้ได้ แต่ก็ยังดำเนินต่อไป ฉันยืนยันสิ่งนี้โดยใส่รีแมปจำลองลงในจดหมาย 'ที'กดปุ่มเมาส์ค้างไว้และเห็นปุ่มหนึ่ง 'ที' แทรกตามด้วยอีกอัน 'ที' เมื่อฉันปล่อยวาง

ฉันฆ่ากระบวนการ xbindkeys ทั้งหมดก่อนที่จะทำการทดสอบด้วย วิ่ง xbindkeys --verbose --nodaemon แสดงกิริยาไม่ปกติ กล่าวคือ ก กด และ ปล่อย ทั้งสองจะถูกบันทึกเมื่อฉันกดปุ่มเมาส์ แม้ว่าฉันจะไม่ได้ปล่อยปุ่มเมาส์ที่กดอยู่ก็ตาม ต่อไปนี้ดูเหมือนว่าฉันกดและปล่อยปุ่มสองครั้ง แต่เพียงครั้งเดียว:

วงเริ่มต้น...
กดปุ่ม !
เช่น xbutton.button=6
e.xbutton.state=16
ปลดกระดุม !
เช่น xbutton.button=6
e.xbutton.state=16
"xte 'คีย์ t' "
    ปล่อย + m:0x0 + b:6 (เมาส์)
ได้หน้าจอ 0 สำหรับ window 510
เริ่มโปรแกรมด้วยการเรียก fork+exec

กดปุ่ม !
เช่น xbutton.button=6
e.xbutton.state=16
ปลดกระดุม !
เช่น xbutton.button=6
e.xbutton.state=16
"xte 'คีย์เ' "
    ปล่อย + m:0x0 + b:6 (เมาส์)
ได้หน้าจอ 0 สำหรับ window 510

บรรทัด xte เองบนบรรทัดคำสั่งจะพิมพ์ 't' เพียงหนึ่งบรรทัด ความคิดใด ๆ เกี่ยวกับวิธีการแก้ไข / วิธีแก้ปัญหานี้?

Score:0
ธง us

ดูเหมือนว่านี่ไม่ใช่ปัญหากับ Ubuntu หรือ xbindkeys แต่เกิดจากไดรเวอร์เมาส์ xrdp ฉันใช้ MS Hyper-V VM ที่ใช้ Ubuntu 20.04.2 และฉันพบปัญหาต่อไปนี้ใน GitHub ซึ่งมีคนรายงานปัญหาของฉันว่า "การคลิกเพียงครั้งเดียว (กด + ปล่อย) ของเมาส์ Logitech MX Vertical ที่ปุ่ม 6 และ 7 (ปุ่มไปข้างหน้า/ย้อนกลับ) สองเหตุการณ์ ButtonPress และ ButtonRelease จะถูกส่ง"

xrdpmouse: เหตุการณ์ ButtonPress/ButtonRelease ส่งสองครั้ง

ดูเหมือนว่าจะไม่มีทางแก้ไขได้ง่ายๆ ซึ่งน่าเสียดาย

Score:0
ธง ru

ฉันใช้ xbindkeys ในทำนองเดียวกันบนพีซีหนึ่งเครื่องเพื่อสลับพื้นที่ทำงานด้วยปุ่มด้านข้างของเมาส์ ดูการกำหนดค่าของฉัน ฉันเห็นว่าฉันมี & ในตอนท้ายของฉัน xte บรรทัดการกำหนดค่าที่ฉันเชื่อว่าทำงาน xte ในพื้นหลัง. บางทีคุณอาจต้องการสิ่งนั้น? ฉันไม่ได้อยู่ที่พีซีเครื่องนั้นเพื่อตรวจสอบว่าจะเกิดอะไรขึ้นหากฉันลบท่า & จากการกำหนดค่าของฉัน:

        # ปุ่มเมาส์ 8 (ปุ่มด้านข้าง "ย้อนกลับ")
        # แมปใหม่เป็น super+page-down (ย้ายไปยังพื้นที่ทำงานลง)
        "xte 'keydown Super_L' 'key Page_Down' 'keyup Super_L' &"
          ข:8

        # ปุ่มเมาส์ 9 (ปุ่มด้านข้าง "ไปข้างหน้า")
        # แมปใหม่เป็น super+page-up (เลื่อนไปที่พื้นที่ทำงานขึ้น)
        "xte 'keydown Super_L' 'key Page_Up' 'keyup Super_L' &"
          ข:9
traycerb avatar
us flag
ขอบคุณสำหรับการตอบกลับ ฉันลองแล้วและมันแสดงข้อผิดพลาด `sh: 1: amp: not found` ดังนั้นยังคงค้นหาคำอธิบายบางอย่าง ฉันกำลังทำสิ่งนี้ใน Hyper-V VM แต่ไม่มีคีย์ เมาส์ หรืออื่น ๆ มีลักษณะการทำงานนี้ ฉันลองแทนที่ `b:6` (ปุ่มเมาส์ย้อนกลับ) ด้วย `b:1` (คลิกซ้ายของเมาส์) และใช้งานได้ตามที่ต้องการ คลิกซ้ายค้างไว้ ฉันได้รับสถานะ "การกดปุ่ม" เท่านั้น จนกว่าฉันจะปล่อย
traycerb avatar
us flag
แก้ไข: การตรวจสอบเอาต์พุต `xev` จะแสดงปุ่ม 6 และ 7 ลงทะเบียนเมื่อกดและปล่อยแม้ในขณะที่เพิ่งกด ดังนั้นบางที 'xkeybind' จะทำงานตามที่คาดไว้ แต่ทำไมเมาส์ถึงมีพฤติกรรมนี้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา