خطوات الاستنساخ:
M4
مع الاستمرار. اضغط على مفتاح s
(انظر الصورة)في الإصدار السابق من VSCode (1.10.2 8076a19fdcab7e1fc1707952d652f0bb6c6db331) كان هذا يعمل بشكل جيد.
نفس المشكلة بالنسبة لي. قم بإصدار الكلمات الأساسية لأنني لم أجد هذه المشكلة في البداية: تخطيط لوحة المفاتيح الألمانية من الطبقة 4 neo2.
عملت بشكل جيد في 1.10 ، لا تعمل في 1.11.
يبدو أن محرر الاختصارات في VSCode يحدد المجموعة المميزة في لوحة المفاتيح أعلاه على أنها [IntlBackslash] i
لم يتم كسره على النوافذ و VSCode 1.11.0.
ومع ذلك ، يتم إجراء تعيين المفاتيح عن طريق autohotkey الذي يعترض ضغطات المفاتيح وينبعث من تلقاء نفسه - AFAIK يتم التعامل مع هذا بشكل مختلف في Linux.
لقد قمت للتو بتشغيل git bisect
. يبدو أن أول التزام خاطئ هو https://github.com/Microsoft/vscode/commit/d10239639bf9beaa6ea34125319103de3dce43cd ( alexandrudima )
# bad: [9122ec4b1068bd391e41974f46a4b54c1b9c90f9] Fix styling of release notes (fixes #23948)
# good: [8076a19fdcab7e1fc1707952d652f0bb6c6db331] debug: save all untitled non dirty files before debug start
git bisect start '1.11.0' '1.10.2'
# good: [40fecfaa77f01672e8a147be71f6f7ccb9cf8a12] fix mixin
git bisect good 40fecfaa77f01672e8a147be71f6f7ccb9cf8a12
# good: [9d2e0611f7f7750f02ec72c4d18a20b69c5bf8cf] #18095 :lipstick:
git bisect good 9d2e0611f7f7750f02ec72c4d18a20b69c5bf8cf
# bad: [7c223972367b8ade5362d738606f3b910d0fbb42] Fixes #19235: Wording in tasks warning message
git bisect bad 7c223972367b8ade5362d738606f3b910d0fbb42
# good: [378231183e815c8e8e6a73ad04fc40ec5058fdc5] Promise cancellation is slow. Use a timer instead since this may run many times.
git bisect good 378231183e815c8e8e6a73ad04fc40ec5058fdc5
# good: [f70b0b3ecb7f276c811b0f18c7a0bec3b03c11a6] Fixes #22069: Define extension story for tasks
git bisect good f70b0b3ecb7f276c811b0f18c7a0bec3b03c11a6
# bad: [4ad4bd0d8011a5db5e2bea4543b7efb03d482aad] :bug: add commit box message
git bisect bad 4ad4bd0d8011a5db5e2bea4543b7efb03d482aad
# bad: [9003dbc3f5f2b87cb3cc4a3418030dbdc45ac0a3] Add IKeybindingService.resolveUserBinding
git bisect bad 9003dbc3f5f2b87cb3cc4a3418030dbdc45ac0a3
# bad: [968da131589845b43c0d00141b41b2bb366a84e8] Improve the ScanCode -> KeyCode guessing strategy
git bisect bad 968da131589845b43c0d00141b41b2bb366a84e8
# bad: [969cbdfea05beda1a38d4082698b87f239fc2384] Renames
git bisect bad 969cbdfea05beda1a38d4082698b87f239fc2384
# bad: [8a33db65efdd3ed4c76d01cb76c3ef658caf16db] Add Inspect Key Mapppings action
git bisect bad 8a33db65efdd3ed4c76d01cb76c3ef658caf16db
# bad: [0ebecd5ca915ed33ea747cafe2c99572c52904b5] Merge branch 'master' into alex/keybinding
git bisect bad 0ebecd5ca915ed33ea747cafe2c99572c52904b5
# bad: [d10239639bf9beaa6ea34125319103de3dce43cd] First cut at integrating keyboard mappers
git bisect bad d10239639bf9beaa6ea34125319103de3dce43cd
# first bad commit: [d10239639bf9beaa6ea34125319103de3dce43cd] First cut at integrating keyboard mappers
أحتاج إلى بعض الوقت لفهم تخطيط لوحة المفاتيح هذا. سوف أتواصل معك في الأيام القادمة إذا كنت من اللطيف بما يكفي لمساعدتي. إنه لا يشبه أي شيء رأيته.
الحل البديل لتبديل VS Code للإرسال استنادًا إلى رمز المفتاح مرة أخرى. أضف الإعداد التالي:
"keyboard.dispatch": "keyCode"
وأعد تشغيل VS Code
لدي نفس المشكلة على Debian / Jessie.
https://github.com/Microsoft/vscode/issues/25797
لدي مشاكل مع Backspace.
مرحبا، انا عندي نفس المشكلة. بالأمس نجح الحل البديل بالنسبة لي ، لكنه لم يعد يعمل اليوم. إنه يعمل لمدة ثانيتين تقريبًا بعد بدء تشغيل المحرر ، ثم لم تعد المفاتيح الأساسية (الحروف) تعمل. : التفكير:
لست متأكدًا مما إذا كنت قد فعلت شيئًا غبيًا منذ الأمس ، لكن هل لدي أي فكرة عن سبب حدوث ذلك؟
zommerfelds أول شيء أود التحقق منه هو settings.json
. هل "keyboard.dispatch"
مكرر هناك ، هو الإعداد الذي تم استبداله بواسطة إعداد مساحة العمل عند فتح مجلد ، وما إلى ذلك.
الشيء التالي الذي يجب النظر إليه هو فتح محرر وتشغيل F1 > Developer: Inspect key mappings
. هل تقوم بطباعة "إرسال FallbackKeyboardMapper على keyCode" (مؤشر على تطبيق الإعداد).
إذا لم تكن هذه مشكلة في الإعدادات ، أي التأكيد على أن الإرسال يتم على keyCode
موجود ، فحينئذٍ سأحاول البحث في ما يرسله Electron / Chromium / OS في طريقنا عندما تضغط على مفتاح معين : يرجى تمرير مؤشر الماوس فوق مربع الإدخال والتقاط لقطة شاشة:
مرحبًا alexandrudima ، شكرًا على الإجابة التفصيلية.
cat ~/.config/Code/User/settings.json
:
// Place your settings in this file to overwrite the default settings
{
"keyboard.dispatch": "keyCode"
}
إذا فتحت المحرر وانتقلت إلى _File => التفضيلات => الإعدادات_ ، أرى نفس محتويات _USER SETTINGS_ كما هو مذكور أعلاه ، و {}
لـ _WORKSPACE SETTINGS_ ، لذلك يجب أن يكون ذلك جيدًا.
_F1> المطور: فحص تعيينات المفاتيح_ يعطيني:
Layout info:
{
"model": "pc105",
"layout": "de,ch",
"variant": "neo,",
"options": "grp:menu_toggle",
"rules": "evdev"
}
FallbackKeyboardMapper dispatching on keyCode
Raw mapping:
...
بالنسبة إلى روابط المفاتيح التي أحصل عليها:
إذا أردت كتابة "أ":
إذا أردت كتابة "(":
المطبوع على ما يرام في تلك النافذة المنبثقة ، ولكن ليس في المحرر الرئيسي.
في Neo ، يكون A
هو المكان الذي سيكون فيه المفتاح D
في QWERTY ، و (
هو CapsLock+J
في QUERTY.
يمكنني استخدام مفاتيح الأسهم في الطبقة الرابعة في Neo على ما يرام ، ولكن ليس على سبيل المثال الأرقام. يعمل Backspace. إدخال لا يعمل. Ctrl+Z
يعمل للتراجع (في Neo).
أيضًا ، كما قلت سابقًا ، يعمل كل شيء في الثواني القليلة الأولى أثناء بدء تشغيل Vscode ، ثم يتوقف عن العمل.
اسمحوا لي أن أعرف إذا كان بإمكاني المساعدة بطريقة أخرى. سيكون من الرائع أن أبدأ في استخدام Vscode مرة أخرى :)
تحرير: للتوضيح أعتقد أنني قد لا أواجه نفس المشكلة مثل OP. تعمل مفاتيح الأسهم الخاصة بي في الطبقة الرابعة ولكن ليس مفاتيح الأحرف البسيطة والبسيطة.
EDIT2: _Help => About_:
Version 1.12.2
Commit 19222cdc84ce72202478ba1cec5cb557b71163de
Date 2017-05-10T13:16:25.899Z
Shell 1.6.6
Renderer 56.0.2924.87
Node 7.4.0
alexandrudima شكرا! ساعدني تغيير "keyboard.dispatch": "code"
إلى "keyboard.dispatch": "keyCode"
في File->Preferences->Settings
في الحصول على مفاتيح طبقة m4 (مفتاح الهروب ، مفاتيح التنقل ، مسافة للخلف ، حذف ، أرقام).
ما زلت لا تعمل بالنسبة لي على 1.19.0
.
لقد لاحظت أيضًا أن إعداد keyboard.dispatch
لا يُحدث فرقًا. في أي من الإعدادين ، تعمل مفاتيح التنقل و backspace على سبيل المثال ، ولكن ليس الأرقام والحروف العادية.
هل هناك طريقة يمكنني من خلالها التحقق من أن vscode يقوم بالفعل بتحميله كـ keyCode
ولا يعود إلى code
بطريقة ما؟
في الواقع لقد حصلت للتو على العمل! كان امتداد NeoX يفسد إعداداتي. تعطيله حل المشكلة. ليس لدي أي فكرة بعد الآن عن سبب تثبيت هذا الامتداد ولا ما يفعله. لا يزال يتعين علي تعيين keyboard.dispatch
على keyCode
حتى يعمل.
آسف لذلك وشكرا على الدعم. Yay يمكنني استخدام vscode الآن! :)
أعتقد أنه يمكننا إغلاق هذه المشكلة بعد ذلك؟
لا تزال المشكلة موجودة في رمز VS الحالي:
لقد واجهت أيضًا مشكلة في استخدام Neo-Layout مع VS Code 1.201 ضمن Ubuntu 17.10 (Linux 4.13.0-36-generic). بدون المفتاح "keyboad.dispatch": keyCode
- تمكنت من الكتابة باستخدام Neo2 ولكن لم أتمكن حتى من استخدام CTRL + C و CTRL + V لأنه سيعود إلى التخطيط الافتراضي (يؤدي إلى تشغيل CTRL + R و CTRL + W ، على التوالي ).
حسنًا ، لقد حاولت للتو "keyboard.dispatch" ويخبرني "إعداد تكوين غير معروف". لكن مشاكلي مختلفة بعض الشيء.
تعمل مفاتيح الأسهم بشكل جيد ، ولكن على سبيل المثال ، لا يعمل مفتاح التراجع. عندما أضغط على M4+z
يتعرف كود الاستوديو المرئي على z
. وعندما أريد ربط شيء ما بمفاتيح مثل äöü ، يترجم vscode هذه المفاتيح إذا كانت لوحة مفاتيح أمريكية. لذلك يتم التعرف على Ctrl+ü
كـ Ctrl+z
. هذا مروع.
أقوم بتعيين لوحة المفاتيح الخاصة بي باستخدام برنامج XKB لاستخدام لوحة مفاتيح dvorak المعدلة.
أستخدم خيار ralt_switch ، والذي يستخدم لتبديل مفتاح alt الأيمن ليعمل كمفتاح تعريف أو معدل إضافي.
أقوم بتمكين إعداد keyCode في VSCode Insider.
فيما يلي نموذج إعداد XKB الخاص بي
تم التعرف على RAlt (aka Meta key) + s
بواسطة VS كمفتاح End
. + جيد
ولكن عندما كان من المفترض أن أقوم بعمل مفتاح ctrl+End
باستخدام Ctrl+RAlt (Meta)+s
، تم التعرف عليه على أنه Ctrl+s
والذي سيحفظ المستند. -سيئة
خمن ماذا يحدث عندما حاولت القفز على بعض الكلمات بالضغط على Ctrl+Right
ويعرف أيضًا باسم Ctrl+RAlt (Meta)+n
عدة مرات.
أفترض أن معدل Ctrl لا يعمل بشكل جيد مع المُعدِّل الإضافي (أو مُعدِّل keyCode-ed) مثل meta key أو Mod4.
حتى Ctrl+Shift+RAlt (Meta)+s
يحفظ أيضًا.
لكن Shift+Ralt (Meta)+s
يشبه Shift+End
وهو +Good
هل يمكنك فقط جعل ctrl يتصرف مثل shift ، من حيث الجمع بين المُعدِّلات؟
أعتقد أنها قضية ذات صلة ، ولكن مع حالة مختلفة.
_ العنوان يذكر التخطيط الجديد ، هذا مخصص_
هل هذا متعلق بهذا التعليق المحلول؟
باستخدام keyboard.dispatch 'code' ، ولكن فقط لـ OSX. وقد حاولت للتو أنها لم تنجح في Linux Mint / Ubuntu
https://github.com/Microsoft/vscode/issues/12393#issuecomment -288994081
أنا على لينكس.
الإصدار 1.21.1
قم بتنفيذ 79b44aa704ce542d8ca4a3cc44cfca566e7720f1
المسند 2018-03-14T14: 46: 30.761Z
شل 1.7.9
العارض 58.0.3029.110
العقدة 7.9.0
Architektur إلى x64
لسوء الحظ ، يبدو أن الحل البديل keyboard.dispatch
لا يعمل معي أيضًا - على الأقل ليس جيدًا بما يكفي. يمكنني استخدام CapsLock
(Mod3) المعاد تصميمه لإدراج رموز المبرمجين مثل /,\,[,]
وما إلى ذلك داخل المحرر ، ولكن ليس في الاختصارات مثل shift+/
والتي تترجم إلى الضغط على الأزرار المادية shift+capslock+s
تظهر محاولة إعادة تعيين الاختصارات باستخدام Mod3 unknown
يبدو أنه تم ذكر
الاختصارات مثل shift+/
هي إجمالي BS ويجب ألا تكون موجودة.
يجب أن يكون إما ?
والسماح للتخطيط بتحديد المعدلات المطلوبة لكتابة هذا الحرف ، أو تنسيق مستقل عن shift + scancode_slash
. في الخيار الأول سأكتب ببساطة؟ (بغض النظر عن المكان الذي أضع فيه ذلك في التخطيط الخاص بي وما هي المُعدِّلات التي أحتاج إلى الضغط عليها) ، وفي الثانية ، سأكتب فقط رأس المال J
في تخطيطي ، لأن لدي حرف J في موضع لوحة المفاتيح حيث لدى qwerty الأمريكية /
.
كما هو الحال مع krux02 ، اضطررت إلى كتابة 'Ctrl + ü' و 'Ctrl + k' للتراجع والإعادة ، على التوالي ، لكنني تمكنت من العثور على إعداد "keyboard.dispatch" المناسب ويبدو أن هذا حل المشكلة.
نظام التشغيل: Ubuntu 18.04 LTS
كود VSC:
الإصدار 1.23.1
التزام d0182c3417d225529c6d5ad24b7572815d0de9ac
التاريخ 2018-05-10T16: 04: 33.747Z
شل 1.7.12
العارض 58.0.3029.110
العقدة 7.9.0
العمارة x64
يا إلهي ، أنا أستخدم vscode insider فقط لانتظار حل هذه المشكلة.
تمامًا مثلsakasistem
أستخدم Thinkpad مع لوحة مفاتيح qwerty الفعلية ، وقم بتعديل خريطة المفاتيح الخاصة بي إلى dvorak المخصص مع ملف xkb على linux mint sonya
هذا هو ملف خريطة المفاتيح https://pastebin.com/cUAxDtAM
إنه مخصص لنظام التشغيل المستند إلى دبيان ، Linux Mint على وجه الدقة.
ضعه في /usr/share/X11/xkb/symbols/us
قبل تعريف dvorak-intl
partial alphanumeric_keys
xkb_symbols "dvorak-intl" {
يضيف سحر التنقل إلى تخطيط dvorak ، وسوف يتصرف up
، left
، down
، right
مع RAlt+c,RAlt+h,RAlt+t,RAlt+n
(يجب أن يكون i, j, k, l
على qwerty بدلاً من c, h, t, n
) ، إنه يعمل بالفعل على معظم التطبيقات باستخدام مُعدِّل ctrl
و shift
و alt
، لكن vscode. يجب أن يقفز Ctrl+RAlt+n
الكلمة التالية ولكن بدلاً من ذلك يتصرف مثل Ctrl + n ويفتح علامة تبويب جديدة.
يعمل معدِّل Shift ، مما يجعل Shift+RAlt+s
سيختار حتى نهاية السطر ، إنه فقط مفتاح Ctrl الذي يطلق الاختصار في المقام الأول.
حسنًا ، هذا هو محتوى Pastebin:
partial alphanumeric_keys
xkb_symbols "dvorak-shy" {
name[Group1]= "English (Dvorak) by Shy";
key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at ] };
key <AE03> { [ 3, numbersign ] };
key <AE04> { [ 4, dollar ] };
key <AE05> { [ 5, percent ] };
key <AE06> { [ 6, asciicircum, dead_circumflex, dead_circumflex ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk ] };
key <AE09> { [ 9, parenleft, dead_grave] };
key <AE10> { [ 0, parenright ] };
key <AE11> { [ bracketleft, braceleft ] };
key <AE12> { [ bracketright, braceright, dead_tilde] };
key <AD01> { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] };
key <AD02> { [ comma, less, dead_cedilla, dead_caron ] };
key <AD03> { [ period, greater, dead_abovedot, periodcentered ] };
key <AD04> { [ p, P ] };
key <AD05> { [ y, Y ] };
key <AD06> { [ f, F ] };
key <AD07> { [ g, G, Page_Up, Page_Up ] };
key <AD08> { [ c, C, Up, Up ] };
key <AD09> { [ r, R, dead_tilde, dead_tilde ] };
key <AD10> { [ l, L ] };
key <AD11> { [ slash, question ] };
key <AD12> { [ equal, plus ] };
key <AC01> { [ a, A ] };
key <AC02> { [ o, O ] };
key <AC03> { [ e, E ] };
key <AC04> { [ u, U ] };
key <AC05> { [ i, I ] };
key <AC06> { [ d, D, Home, Home ] };
key <AC07> { [ h, H, Left, Left ] };
key <AC08> { [ t, T, Down, Down ] };
key <AC09> { [ n, N, Right, Right ] };
key <AC10> { [ s, S, End, End ] };
key <AC11> { [ minus, underscore ] };
key <AB01> { [ semicolon, colon, dead_ogonek, dead_doubleacute ] };
key <AB02> { [ q, Q ] };
key <AB03> { [ j, J ] };
key <AB04> { [ k, K ] };
key <AB05> { [ x, X ] };
key <AB06> { [ b, B ] };
key <AB07> { [ m, M, Page_Down, Page_Down ] };
key <AB08> { [ w, W ] };
key <AB09> { [ v, V ] };
key <AB10> { [ z, Z ] };
key <BKSL> { [ backslash, bar ] };
key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] };
include "level3(ralt_switch)"
};
انتبه إلى الكود السحري include "level3(ralt_switch)"
الذي يجعل RAlt مثل mod3 ولكنه يجعل vscode يتعرف عليه كـ unknown
.
Linux هنا ، بدون استخدام تخطيط لوحة مفاتيح غير عادي ، قمت فقط بإعادة تعيين Caps Lock إلى Backspace عبر XkbOptions
، ولم ينجح ذلك أيضًا. التبديل إلى keyCode
جعله يعمل. أعتقد أن هذا يؤثر على أي نوع من تعيين المفاتيح.
بالنسبة لي ، توقف القولون :
تلقائيًا عن العمل في Visual Studio Code 1.32.3 على macOS 10.14.3. تركيبة المفاتيح في Neo2 هي caps lock + ;
(على qwerty). ساعد تعيين keyboard.dispatch
إلى keyCode
.
مستخدم آخر لـ neo2 هنا ؛) تعثرت في مشكلة عدم عمل مسافة للخلف خلال الدقائق القليلة الأولى من استخدام VSCode. لحسن الحظ ، يعمل الحل البديل مثل السحر حتى الآن!
ومع ذلك ، سيكون رائعًا إذا تم إصلاح هذا الخطأ يومًا ما ؛)
الحل البديل من https://github.com/microsoft/vscode/issues/24043#issuecomment -292334048 يعمل مع وظيفة backspace (: +1 :) ولكن نقل كلمة واحدة للأمام / للخلف وحذف كلمة واحدة أمام المؤشر أو خلفه لا يزال لا يعمل: مرتبك: أي Ctrl
+ Alt Gr
+ w
(في تخطيط qwerty / المفاتيح على لوحة المفاتيح) يجب حذف كلمة واحدة على اليسار من المؤشر ولكن لصقها فقط الحافظة ، والتي ستكون Ctrl
+ w
(بتنسيق qwerty / المفاتيح على لوحة المفاتيح) وهي Ctrl
+ v
.
يبدو أن الضغط على المفتاح Alt Gr
يتم تجاهله فقط عند الضغط على المفتاح Ctrl
.
أنا أستخدم Arch Linux مع آخر التحديثات.
كيف يمكنني تقديم مزيد من المعلومات للمساعدة في حل هذه المشكلة؟
أنا جديد على VS Code وأستخدم تنسيق KOY (مع بعض التعديلات) على Linux ( setxkbmap de koy
). نفس المشكلة مع Neo2: يمكنني كتابة واصلة بالضغط على CapsLock+L
في المحرر. لكن الاختصارات التي تحتوي على CapsLock لا تعمل (مثل التصغير باستخدام Ctrl+-
= Ctrl-CapsLock-L
).
توصي صفحة مشكلات ربط المفاتيح بتشغيل F1 > Developer: Inspect key mappings
إذا لم يساعدك شيء آخر.
باستخدام التخطيط الألماني القياسي ( setxkbmap de
) ، أحصل على هذا للمفتاح L :
"KeyL": {
"value": "l",
"withShift": "L",
"withAltGr": "ł",
"withShiftAltGr": "Ł"
}
مع KOY ( setxkbmap de koy
) ، أحصل على:
"KeyL": {
"value": "n",
"withShift": "N",
"withAltGr": "n",
"withShiftAltGr": "N"
},
على ما يبدو ، لا تحصل VS Code على المستويات الأعلى من التخطيط بشكل صحيح!
بعض المعلومات الفنية الإضافية حول عائلة تخطيط لوحة المفاتيح هذه (neo، adnw، koy، bone):
في التخطيط الافتراضي الألماني ، تم تعيين AltGr إلى ISO_Level3_Shift
(في Linux). في Neo2 (وعلى حد سواء) ، تم تعيين AltGr إلى ISO_Level5_Shift
وتم تعيين CapsLock إلى ISO_Level3_Shift
.
لذا أعتقد أننا يجب أن نرى في الناتج > Developer: Inspect key mappings
أيضًا
"KeyL": {
"value": "n",
"withShift": "N",
"withAltGr": "-",
(لأن CapsLock يستبدل AltGr في Neo2 من حيث كونه المفتاح الجديد ISO_Level3_Shift
)
أو
"KeyL": {
"value": "n",
"withShift": "N",
"withAltGr": "6",
(لأنك تحصل على "6" عند الضغط على مفتاح AltGr الفعلي بالإضافة إلى المفتاح L كما ترون في لقطة شاشة OP).
آمل أن يساعدك هذا مطوري VS Code على فهم مشكلتنا بشكل أفضل.
أدرك أنني (وآخرين) أخلط هنا بعض المشكلات المتعلقة بـ Neo. لكن قد تكون مرتبطة.
تم الاختبار على Ubuntu 18.04 باستخدام هذا الإصدار من VS Code / Codium:
Version: 1.44.0
Commit: 2aae1f26c72891c399f860409176fe435a154b13
Date: 2020-04-09T10:44:46.342Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Linux x64 4.15.0-96-generic
يبدو أن الضغط على المفتاح
Alt Gr
يتم تجاهله فقط عند الضغط على المفتاحCtrl
.انا لدى نفس المشكله. يعمل وضع علامة على الأحرف المفردة عبر
Shift + RightArrow
عند إدخالRightArrow
عبرAltGr + E
، لكن باستخدامCtrl + Shift + RightArrow
مع تخطيطات NeoCtrl + Shift + E
بدلاً من ذلك .
لقد استخدمت وظيفة التسجيل الرئيسية وحصلت على طريقة الإرسالcode
:
- سيؤدي الضغط على
Shift + AltGr + E
إلى عرضshift + alt
، ثم يتحول إلىshift + right
.- يؤدي الضغط على
Ctrl + Shift + AltGr + E
أولاً إلى عرضctrl + shift + alt
، ثم يتحول إلىctrl + shift + e
وباستخدام الطريقة keyCode
:
Shift + AltGr + E
إلى عرض shift + oem_8
، ثم يتحول إلى shift + right
.Ctrl + Shift + AltGr + E
عرض ctrl + shift + oem_8 ctrl+shift+e
يحدث نفس الشيء عند استخدام Ctrl + AltGr +E
الذي يصبح ctrl + e
بدلاً من ctrl + right
.
بالنسبة لهذه المشكلة المحددة ، هل من الممكن أن يكون حلًا عمليًا مجرد وضع علامة على مفتاح معين على أنه ميت؟ لا تحتاج التخطيطات مثل Neo إلى VSCode للاستماع إلى AltGr
على الإطلاق ، يجب فقط معالجة رمز المفتاح الذي يتم إرساله عند الضغط عليه معًا. علاوة على ذلك ، عندما تكون هذه الطبقة "مقفلة" باستخدام مفتاحي Mod4 ، فإن الضغط على Ctrl + Shift + e
يتم التعرف عليه بشكل صحيح على أنه ctrl + shift + right
.
معلومات التخطيط الخاص بي:
"layout": {
"model": "pc105",
"layout": "de,de,gb",
"variant": "neo,,",
"options": "grp_led:scroll,altwin:alt_super_win",
"rules": "evdev"
}
لقد واجهت نفس المشكلة كما هو موضح هنا عدة مرات ، حيث يؤدي الاحتفاظ بمفاتيح control
أو مفاتيح مماثلة إلى جعل مفاتيح معينة في المستوى 4 من التخطيط الجديد غير قابلة للاستخدام وتنفيذ اختصارات غير مرغوب فيها.
ما نجح معي في Ubuntu 18.04
وأصلح كل هذه المشاكل ، هو تشغيل setxkbmap -layout de -variant neo
بعد بدء التشغيل وكل تنبيه. يبدو أنه يعمل مع أي من الإعداد keyboard.dispatch
( keyCode
أو code
).
في "Startup Application Preferences"->Add
أدخل setxkbmap -layout de -variant neo
مثل هذا واحفظه
بإضافة sudoedit /lib/systemd/system-sleep/setxkbmap
#!/bin/bash
case $1 in
post)
DISPLAY=:1 ; export DISPLAY
su $USER -c "sleep 1; setxkbmap -layout de -variant neo"
;;
esac
ومنح أذونات قابلة للتنفيذ sudo chmod 755 /lib/systemd/system-sleep/setxkbmap
.
$USER
أضف المستخدم الخاص بك.DISPLAY=:0
، لكن هذا لم ينجح معي. ثم جربت القيمة التي حصلت عليها من echo $DISPLAY
( :1
) ، والتي نجحت.sleep 1;
، استخدم sleep 3;
)آمل أن يكون هذا يساعد الآخرين!
التعليق الأكثر فائدة
أحتاج إلى بعض الوقت لفهم تخطيط لوحة المفاتيح هذا. سوف أتواصل معك في الأيام القادمة إذا كنت من اللطيف بما يكفي لمساعدتي. إنه لا يشبه أي شيء رأيته.
الحل البديل لتبديل VS Code للإرسال استنادًا إلى رمز المفتاح مرة أخرى. أضف الإعداد التالي:
"keyboard.dispatch": "keyCode"
وأعد تشغيل VS Code