Barrier: تخطيط لوحة مفاتيح خاطئ بين الخادم والعميل

تم إنشاؤها على ٢٢ سبتمبر ٢٠١٨  ·  4تعليقات  ·  مصدر: debauchee/barrier

أنظمة التشغيل

الخادم: Windows 10

العميل: Arch Linux

نسخة الحاجز

2.1.0

خطوات إعادة إنتاج الخطأ

  1. تعيين تخطيط لوحة المفاتيح لتكنولوجيا المعلومات على الخادم (Windows 10)
  2. تعيين تخطيط لوحة المفاتيح لتكنولوجيا المعلومات على العميل (Arch Linux)
  3. خطأ: يعود الحاجز إلى استخدام تخطيط لوحة المفاتيح باللغة الإنجليزية على العميل (Arch Linux)

معلومات اخرى

  • متى بدأت المشكلة تحدث؟ دائما
  • هل هناك طريقة لحلها؟ انا لا اعرف
  • هل يمنعك هذا الخطأ من استخدام الحاجز بالكامل؟ ليس تمامًا ولكنه مزعج جدًا أن يكون لديك تخطيط خاطئ للوحة المفاتيح

التعليق الأكثر فائدة

أعتقد أن هذا يحدث لأن امتداد XTEST يُستخدم لإيصال ضغطات المفاتيح ، وله لوحة مفاتيح افتراضية خاصة به. يمكنك رؤية هذا إذا قمت بتشغيل xinput list :

$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Broadcom Corp. Bluetooth USB Host Controller  id=11   [slave  pointer  (2)]
⎜   ↳ bcm5974                                   id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Broadcom Corp. Bluetooth USB Host Controller  id=10   [slave  keyboard (3)]

يمكن إصلاح ذلك باستخدام setxkbmap -device N حيث N هو رقم الجهاز من هذه القائمة.
لقد قمت بحل هذه المشكلة في الوقت الحالي عن طريق وضع ما يلي في .xinitrc :

setxkbmap -device `xinput list | grep "Virtual core XTEST keyboard" | sed -e 's/.\+=\([0-9]\+\).\+/\1/'` us colemak

هذا يضعه على التخطيط لنا ، colemak البديل. يمكنك تحديد القيم الصحيحة لنظامك ، جنبًا إلى جنب مع أي إعدادات -option ، عن طريق إصدار setxkbmap -query .

ال 4 كومينتر

أعتقد أن هذا يحدث لأن امتداد XTEST يُستخدم لإيصال ضغطات المفاتيح ، وله لوحة مفاتيح افتراضية خاصة به. يمكنك رؤية هذا إذا قمت بتشغيل xinput list :

$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Broadcom Corp. Bluetooth USB Host Controller  id=11   [slave  pointer  (2)]
⎜   ↳ bcm5974                                   id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Broadcom Corp. Bluetooth USB Host Controller  id=10   [slave  keyboard (3)]

يمكن إصلاح ذلك باستخدام setxkbmap -device N حيث N هو رقم الجهاز من هذه القائمة.
لقد قمت بحل هذه المشكلة في الوقت الحالي عن طريق وضع ما يلي في .xinitrc :

setxkbmap -device `xinput list | grep "Virtual core XTEST keyboard" | sed -e 's/.\+=\([0-9]\+\).\+/\1/'` us colemak

هذا يضعه على التخطيط لنا ، colemak البديل. يمكنك تحديد القيم الصحيحة لنظامك ، جنبًا إلى جنب مع أي إعدادات -option ، عن طريق إصدار setxkbmap -query .

فضولي حقًا: إذا استخدمت طريقتك مع تنسيق us ، أي بـ

setxkbmap -device `xinput list | grep "Virtual core XTEST keyboard" | sed -e 's/.\+=\([0-9]\+\).\+/\1/'` us

لقد حصلت على تنسيق it الصحيح (باستثناء الأحرف المعلمة ، لكنها ليست مشكلة).
إذا قمت بتعيين تنسيق it ، فهذا خطأ تمامًا.

على أي حال ، شكرًا جزيلاً لك على هذا الحل!

يعمل الآن مع it أيضًا ، بعد إعادة التشغيل ...

هذا رائع !، منذ عامين كنت أبحث عن هذا الحل دون حظ. شكرا جزيلا!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات