سؤال خطأ في إعداد تخطيط كيلو بايت مع `setxkbmap`


لدي إعداد x11-forwarding من جهاز ubuntu 12.04 vm إلى جهاز الكمبيوتر المحمول (windows) الخاص بي. يعمل ، ولكن عندما أكتب في التطبيقات المعاد توجيهها ، فإنه يستخدم تخطيط qwerty وأود أن استخدام colemak.

أرغب في الحصول على حل سطر الأوامر لأنني لا أملك واجهة المستخدم الرسومية المثبتة في جهاز vm.

لقد حاولت setxkbmap -v us -variant colemak، ولكن يمكنني الحصول على "خطأ في تحميل وصف لوحة المفاتيح الجديدة":

$ setxkbmap -v us -variant colemak
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   xfree86+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us(colemak)
geometry:   pc(pc101)
Error loading new keyboard description

لقد حاولت أيضا setxkbmap -v us -variant dvorakوالتي يبدو أنها تعمل.

ما الخطأ؟ يأتي Colemak مع ubuntu ، ويمكنني رؤية قسم له في /usr/share/X11/xkb/symbols/us، حيث يتم تحديد التخطيط ، أفترض.


4
2017-09-24 22:26


الأصل




الأجوبة:


كان خطئي افتراض أن تخطيطات لوحة المفاتيح التي كانت مهمة هي تلك الموجودة في vm (/ usr / share / X11 / xkb / symbols /).

في الواقع ، عند استخدام إعادة التوجيه x هو تخطيطات لوحة المفاتيح المعرّفة في خادم x ، xming (C: \ Program Files (x86) \ Xming \ xkb \ symbols) التي تعتبر هامة ، ولا يتم تضمين colemak مع xming بشكل افتراضي. كنت قادراً على تحميل تعريف colemak فقط وإفلاته في مجلد الرموز xming؛ ثم يعمل كما هو متوقع.


3
2017-10-09 17:30



... بعد بضع سنوات: ما هو التعريف الذي قمت بتنزيله ، إذا كنت لا تزال تتذكر؟ :) - ezuk
التخطيط متاح في colemak.com/Unix - Gabe Moothart
شكرا جابي! لقد وجدت ذلك منذ ذلك الحين. أنا فعلا أمسك واحد من موضوع منتدى الحيل الكبيرة DreymaR ، حيث أن ذلك أعطاني الدليل الكامل ، وحصلت عليه العمل. - ezuk


إنه أمر غريب ، يمكنني التبديل إليه بشكل صحيح colemak بأمرك:

#> setxkbmap -v us -variant colemak
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us(colemak)+inet(evdev)
geometry:   pc(pc105)

ولكن لا يمكنني ذلك إذا حاولت الحفاظ على الشكل الإيطالي الخاص بي:

#> setxkbmap -v it -variant colemak
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+it(colemak)+inet(evdev)
geometry:   pc(pc105)
Error loading new keyboard description

أنا أقترح عليك هذا المقال، ولكن نظرًا لعدم تثبيت أي مدير سطح مكتب ، فسيكون ذلك بلا جدوى.

ومع ذلك ، يجب أن يكون الدافع هو هذا:

#> grep colemak /usr/share/X11/xkb/symbols/*
/usr/share/X11/xkb/symbols/gb:xkb_symbols "colemak" {
/usr/share/X11/xkb/symbols/gb:    include "us(colemak)"
/usr/share/X11/xkb/symbols/lv:// http://colemak.com/
/usr/share/X11/xkb/symbols/lv:xkb_symbols "colemak" {
/usr/share/X11/xkb/symbols/lv:xkb_symbols "apostrophecolemak" {
/usr/share/X11/xkb/symbols/lv:  include "lv(colemak)"
/usr/share/X11/xkb/symbols/ph:// http://colemak.com
/usr/share/X11/xkb/symbols/ph:xkb_symbols "colemak" {
/usr/share/X11/xkb/symbols/ph:xkb_symbols "colemak-bay" {
/usr/share/X11/xkb/symbols/us:// 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain.
/usr/share/X11/xkb/symbols/us:xkb_symbols "colemak" {

يمكنني اختيار colemak التخطيط بين gb، lv، ph و us لغات فقط. يجب أن يكون لديك مشكلة مماثلة.

في نهاية القصة ، يمكنك القيام بأمرين: اختر colemak لغوية قريبة من us التي قمت بتثبيتها (على سبيل المثال uk أو gb) ، أو حاول التثبيت colemak الدعم ل us اللغة عن طريق سطر الأوامر (أنا حقا لا أعرف كيف ، آسف).


1
2017-10-05 16:54



شكر. هذا لم يحل مشكلتي ، لكنه أشار لي في الاتجاه الصحيح. يبدو أنه هو خادم X (xming) الذي يحتاج إلى تثبيت colemak ، وليس VM. - Gabe Moothart
عندما تقول أنه "يمكنك فقط استخدام colemak مع بعض اللغات / الإعدادات المحلية" ، فإنه يحدث لي أن إعدادات اللغة والمتغير موجودة في /usr/share/X11/xkb/rules/، في base.lst و base.xml. هناك يمكنك العثور على قائمة كاملة من أنواع اللغات ، ربما يمكنك تخصيص اللغة التي يمكن استخدامها colemak. مجرد تخمين ولكن ممكن جدا. - WesternGun
في الواقع ، أجد ذلك xkb_symbols هو اسم متغير بعض تخطيط لوحة المفاتيح في بعض اللغات. إذا قمت بفحص بعض الملفات ، مثل es تحت /usr/share/X11/xkb/symbols، يمكنك أن ترى أن أول واحد هو القاعدة ، مع default في السطر الأول ، xkb_symbols دائما basic، والبعض الآخر لن يكون default في التعريف ، و xkb_symbols سيكون لها أسماء متميزة. لذا ، أعتقد أنه يمكنك تحميل خريطة مفاتيح باستخدام setxkbmap xxx -variant colemak. قبل ذلك ، تأكد من ملف خريطة المفاتيح us لديه قسم من xkb_symbols "colemak" في الواقع الحالي. - WesternGun