วิธีทำให้เครื่องหมายคำพูดคู่ทำงานเป็นคีย์ที่ตายแล้วยกเว้นเมื่อใช้ร่วมกับตัวเอง


14

เมื่อฉันใช้แป้นพิมพ์ฉันคาดหวังพฤติกรรมดังต่อไปนี้ (และฉันต้องพึ่งพาพฤติกรรมเหล่านี้):

  • ข่าว"ประชาสัมพันธ์" : ควรจดจำกุญแจไว้ว่าเป็นกุญแจตาย
  • กด"ปล่อย"กด<space>ปล่อย<space> : ควรพิมพ์"
  • กด"ปล่อย"กด"ปล่อย" : ควรพิมพ์""

ฉันเข้าใจว่าพฤติกรรมนี้กำหนดโดยรูปแบบแป้นพิมพ์ดังนั้นฉันจึงทำการวิจัย

ในรูปแบบแป้นพิมพ์ "ภาษาอังกฤษ - สหรัฐอเมริกาพร้อมแป้นตาย" ฉันได้รับพฤติกรรม 2 อันดับแรกที่ฉันชอบ แต่พฤติกรรมสุดท้ายไม่สำเร็จและฉันได้ตัวละครแปลก ๆ¨เมื่อฉันลองทำ

ในรูปแบบแป้นพิมพ์ "อังกฤษ - สหรัฐอเมริกาด้วยปุ่มกด AltGr" ฉันจะได้รับพฤติกรรมครั้งสุดท้ายเท่านั้น แต่กุญแจนั้นจะไม่ทำงานอีกต่อไป

ฉันจะปรับเปลี่ยนเลย์เอาต์ของคีย์บอร์ดเพื่อตอบสนองพฤติกรรม 3 อย่างที่ฉันคาดหวังได้อย่างไรเมื่อฉันใช้คีย์บอร์ด


คำถามนี้จะดีขึ้นมากด้วยแรงจูงใจบางอย่าง
Joshua

ฉันเชื่อว่าแรงจูงใจของเขาคือการหลีกเลี่ยงคำพูดที่ไม่ตรงกันในสตริงตัวอักษร ดูเหมือนว่า overkill เล็กน้อยเพื่อให้บรรลุสิ่งนี้โดยการปรับเปลี่ยนพฤติกรรมของแป้นพิมพ์โดยรวม - สิ่งนี้ควรได้รับการจัดการโดย IDE ที่ใช้เพื่อวัตถุประสงค์อะไรก็ตาม
teukkam

2
@Joshua ในประเทศของฉันผู้คนเติบโตขึ้นด้วยบทเรียนคอมพิวเตอร์บน windows และพฤติกรรมคีย์หลักเหล่านี้เป็นค่าเริ่มต้นสำหรับ windows ในประเทศของฉัน มันยากที่จะเปลี่ยนนิสัยที่คุณเรียนรู้เมื่อ 20 ปีก่อนเมื่อคุณทั้งสองใช้ Ubuntu และ Windows ในเวลาเดียวกัน ใน Windows รูปแบบแป้นพิมพ์ที่มีพฤติกรรมนี้เรียกว่า "อังกฤษ - สหรัฐอเมริกา - นานาชาติพร้อมแป้นตาย"
Ferrybig

คำตอบ:


12

หลังจากลองใช้วิธีที่แตกต่างกันสำหรับปัญหานี้ในที่สุดฉันก็พบวิธีแก้ปัญหาด้วยความช่วยเหลือในการแชทสำหรับปัญหานี้

สาเหตุของปัญหาที่เกิดขึ้นจริงโดยความจริงที่ว่าลินุกซ์ไม่ได้มีdead_apostropheและdead_quotedblโดยค่าเริ่มต้นเพื่อเริ่มต้น "เรารูปแบบแป้นพิมพ์ตาย" มีแมปทั้งหรือคีย์ตายไม่ใช่แมปไปdead_acute"

นี่หมายความว่าปัญหานี้ไม่สามารถแก้ไขได้ด้วยการสร้างรูปแบบแป้นพิมพ์ของคุณเองตามที่ฉันแนะนำในการแชท

หลังจากการวิจัยเพิ่มเติมและเพียงแค่การเรียนรู้เวลาของคำหลักใหม่ในการค้นหาฉันพบโซลูชันนี้ใน Unix & Linux StackExchangeสิ่งที่ช่วยฉันแก้ปัญหา

ฉันทำตามขั้นตอนต่อไปนี้ที่ระบุไว้ในคำตอบนั้น:

  1. sudo apt install uim
  2. echo 'export GTK_IM_MODULE="uim"' >> ~/.profile
  3. echo 'export QT_IM_MODULE="uim"' >> ~/.profile
  4. curl 'https://gist.githubusercontent.com/guiambros/b773ee85746e06454596/raw/0ea6d7f7cf9a6ff38b4cafde24dd43852e46d5e3/.XCompose' > ~/.XCompose
  5. กำหนดค่าเค้าโครงแป้นพิมพ์ของฉันเป็น "อังกฤษ (US - intl ด้วยปุ่มตาย)"
  6. รีบูท Ubuntu ใหม่ (ตามความเห็นการล็อกเอาต์และเข้าใช้งานก็เพียงพอแล้ว)

หลังจากขั้นตอนเหล่านี้ฉันจัดการเพื่อตอบสนองความคาดหวังต่อไปนี้ที่ฉันมีเกี่ยวกับคีย์บอร์ดของฉัน:

  • ข่าว"ประชาสัมพันธ์" : ควรจดจำกุญแจไว้ว่าเป็นกุญแจตาย
  • กด"ปล่อย"กด<space>ปล่อย<space> : ควรพิมพ์"
  • กด"ปล่อย"กด"ปล่อย" : ควรพิมพ์""

4
ในการออกจากระบบเซสชั่นและเข้าสู่ระบบควรจะเพียงพอที่จะให้การเปลี่ยนแปลงการกำหนดค่าผู้ใช้มีผล ไม่ต้องรีบูท
David Foerster
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.