পদক্ষেপে xkb সহ কমান্ড এবং নিয়ন্ত্রণ কী কীভাবে অদলবদল করা যায়?


9

আমি আমার অ্যাপল দীর্ঘ অ্যালুমিনিয়াম কীবোর্ড অদলবদল কমান্ড Cmdএবং নিয়ন্ত্রণ Ctrlকী ব্যবহার করতে চাই । এটি নির্ভর তহরে (14.04) ব্যবহার করে ধাপে ধাপে কীভাবে হয় xkb?

নোট: এই যেমন সমাধান আমার জন্য কাজ করে না xkbপ্রতিস্থাপিত xmodmapমধ্যে 13.04 বা এমনকি তার আগে


1
এই সমাধানটি আমার পক্ষে কার্যকর হয়নি। এটি সম্ভবত পুরানো (আসলে আমি বেশ নিশ্চিত, কেবল এখন রেফারেন্সটি খুঁজে পাচ্ছি না)। আমি পোস্ট করার আগে এটি চেষ্টা করেছিলাম। এজন্য আমি উবুন্টু সংস্করণটি নির্দিষ্ট করেছি।
আলেকসন্দর সাভকভ

1
@ ওয়াল্ডিরলিয়োনসিও আমি আশা করি এটি কেন পরিষ্কার হয়েছে যে প্রশ্নটি কেন নকল নয়: জিজ্ঞাসাবাবু
আলেকসন্দর সাভকভ

উত্তর:


8

এই উত্তরটি বেশিরভাগ এখানে দেওয়া উত্তরের উপর ভিত্তি করে । আমি এই প্রশ্নটি জিজ্ঞাসা ও পুনরায় উত্তর দেওয়ার কারণ চূড়ান্ত পদক্ষেপ, যা পুরোপুরি বর্ণিত হয়নি। এখানে , এখানে এবং এখানেxkb দেখুন সম্পর্কে আরও পড়ার জন্য ।

  1. একটি ফাইল তৈরি করুন /usr/share/X11/xkb/symbols(এছাড়াও হতে পারে /etc/X11/xkb/symbols) নামক altwin2এবং নিম্নলিখিত ম্যাপিং ধারণকারী:

    // Control is SWAPPED with Win-keys 
    partial modifier_keys
    xkb_symbols "cmd_n_ctrl" {
        key <LWIN> {        [       Control_L               ]       };
        key <RWIN> {        [       Control_R               ]       };
        key <LCTL> {       [       Super_L         ]       };
        modifier_map Control { <LWIN>, <RWIN> };
        modifier_map Mod4 { <LCTL> };
    };
    
  2. option = symbolsবিভাগের অধীনে নিম্নলিখিত লাইনটি সন্নিবেশ করান /usr/share/X11/xkb/rules/evdev(প্রথম লাইনে সতর্কতা উপেক্ষা করুন):

    altwin2:cmd_n_ctrl               =       +altwin2(cmd_n_ctrl)
    
  3. /usr/share/X11/xkb/rules/evdev.lstবিভাগের অধীনে নতুন বিকল্প যুক্ত করুন option:

    altwin2:cmd_n_ctrl    Win swapped with Ctrl
    
  4. আপনি যেখানে আপনার কীবোর্ড কনফিগারেশন ফাইল জানি না, আপনি এটি ব্যবহার সম্পাদনা করতে পারেন dconf-সম্পাদক যোগ "altwin2:cmd_n_ctrl"মধ্যে xkb-optionsঅধীনে সংস্থা :: GNOME :: ডেস্কটপ :: ইনপুট-সূত্র হিসাবে দেখানো এখানে । আপনার কনফিগারেশন ফাইলটি কোথায় রয়েছে তা যদি আপনি জানেন তবে XkbOptionsনীচে প্রদর্শিত হিসাবে আপনার ক্ষেত্রে ক্ষেত্রের নতুন বিকল্পটি অন্তর্ভুক্ত করা উচিত :

    Section "InputClass"
            Identifier "keyboard-layout"
            Driver "evdev"
            MatchIsKeyboard "yes"
            Option "XkbLayout" "us, ru, ca, fr"
            Option "XkbOptions" "altwin2:cmd_n_ctrl"
    EndSection
    
  5. হয় lightdmপরিবর্তনগুলি আপডেট করতে পুনরায় বুট করুন বা পুনরায় চালু করুন :

    sudo restart lightdm
    

উল্লেখ্য: যদি কোন পরিবর্তন বিন্যাস ফাইল সরাসরি করা হয়, অর্থাত বিকল্পগুলি ব্যবহার করে না, এ ক্যাশে ফাইল /var/lib/xkb/প্রয়োজন হিসাবে উল্লিখিত মুছে ফেলা হবে এখানে


2
!option = symbolsবিভাগটি হওয়া উচিত , না options = symbols( বিভাগটি সন্ধান করতে "বিকল্পগুলি =" অনুসন্ধানে সময় ব্যয় করা)।
বেন ডেভিস


Xkb এবং xmodmap এর সাথে বেশিরভাগ জিনিসগুলির মতো, কাজ করে না, সম্ভবত আমার পদ্ধতিটি অন্যভাবে ভেঙে দিয়েছে, আমি এই বাজে অসুস্থ sick
Seph

মনে রাখবেন যে এটি 2014 সালে লেখা হয়েছিল এবং এটি আধুনিক বিতরণে প্রযোজ্য নয়।
আলেকসন্দর সাভকভ

3

১.0.০৪ সালে, অবশেষে আমি এখানে কাজ করার উপায়টি পেয়েছি। এক্সমোডম্যাপ সমস্ত অ্যাপ্লিকেশনগুলিতে সর্বজনীনভাবে কাজ করে না, জিনোম টুইক টুলটিতে ফাংশনটির অভাব ছিল, ডকনফ একটি কাস্টম ওয়েলউইন 2 কী অদলবদল (এখানে মূল উত্তরের মতো) সম্পাদনা করতে ব্যর্থ হয়েছিল, তাই আমি বেশ কয়েকটি উত্তর সম্পূর্ণ না হওয়া পর্যন্ত আমার চুল ছিঁড়ে ফেলছিলাম simple , এবং মার্জিত সমাধান:

gksudo gedit /usr/share/X11/xkb/symbols/pc

এটিকে পরিবর্তন করুন:

default  partial alphanumeric_keys modifier_keys
xkb_symbols "pc105" {

key <ESC>  {    [ Escape        ]   };

// The extra key on many European keyboards:
key <LSGT> {    [ less, greater, bar, brokenbar ] };

// The following keys are common to all layouts.
key <BKSL> {    [ backslash,    bar ]   };
key <SPCE> {    [    space      ]   };

include "srvr_ctrl(fkey2vt)"
include "pc(editing)"
include "keypad(x11)"

key <BKSP> {    [ BackSpace, BackSpace  ]   };

key  <TAB> {    [ Tab,  ISO_Left_Tab    ]   };
key <RTRN> {    [ Return        ]   };

key <CAPS> {    [ Caps_Lock     ]   };
key <NMLK> {    [ Num_Lock      ]   };

key <LFSH> {    [ Shift_L       ]   };
key <LCTL> {    [ Alt_L     ]   };
key <LWIN> {    [ Super_L       ]   };

key <RTSH> {    [ Shift_R       ]   };
key <RCTL> {    [ Alt_R     ]   };
key <RWIN> {    [ Super_R       ]   };
key <MENU> {    [ Menu          ]   };

// Beginning of modifier mappings.
modifier_map Shift  { Shift_L, Shift_R };
modifier_map Lock   { Caps_Lock };
modifier_map Control{ Control_L, Control_R };
modifier_map Mod2   { Num_Lock };
modifier_map Mod4   { Super_L, Super_R };

// Fake keys for virtual<->real modifiers mapping:
key <LVL3> {    [ ISO_Level3_Shift  ]   };
key <MDSW> {    [ Mode_switch       ]   };
modifier_map Mod5   { <LVL3>, <MDSW> };

key <ALT>  {    [ NoSymbol, Control_L, Control_R    ]   };
//include "altwin(meta_alt)"
key <LALT> {    [ Control_L     ]   };
key <RALT> {    [ Control_R     ]   };
modifier_map Mod1   { Alt_L, Alt_R, Meta_L, Meta_R };

key <META> {    [ NoSymbol, Meta_L, Meta_R  ]   };
modifier_map Mod1   { <META> };

key <SUPR> {    [ NoSymbol, Super_L ]   };
modifier_map Mod4   { <SUPR> };

key <HYPR> {    [ NoSymbol, Hyper_L ]   };
modifier_map Mod4   { <HYPR> };
// End of modifier mappings.

key <OUTP> { [ XF86Display ] };
key <KITG> { [ XF86KbdLightOnOff ] };
key <KIDN> { [ XF86KbdBrightnessDown ] };
key <KIUP> { [ XF86KbdBrightnessUp ] };
};

hidden partial alphanumeric_keys
xkb_symbols "editing" {
key <PRSC> {
type= "PC_ALT_LEVEL2",
symbols[Group1]= [ Print, Sys_Req ]
};
key <SCLK> {    [  Scroll_Lock      ]   };
key <PAUS> {
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Pause, Break ]
};
key  <INS> {    [  Insert       ]   };
key <HOME> {    [  Home         ]   };
key <PGUP> {    [  Prior        ]   };
key <DELE> {    [  Delete       ]   };
key  <END> {    [  End          ]   };
key <PGDN> {    [  Next         ]   };

key   <UP> {    [  Up           ]   };
key <LEFT> {    [  Left         ]   };
key <DOWN> {    [  Down         ]   };
key <RGHT> {    [  Right        ]   };
};

সংরক্ষণ.

rm -rf /var/lib/xkb/*

(এটি প্রয়োজন কিনা আমি জানি না, তবে আমি এটি করেছি))

পুনরায় বুট করুন।


তার জন্য ধন্যবাদ. আমি নিকট ভবিষ্যতে 16.04 এ স্থানান্তরিত হলে আমি এটি পরীক্ষা করব।
আলেকসান্দার সাভকভ

এটি আমার 16.10 আপগ্রেডে স্রেফ ব্যবহৃত হয়েছে। খুব সুন্দরভাবে কাজ করেছেন।
টম মারসার

1
এতদূর সহজ উত্তরটি, আমার ফেডোরায় কবজির মতো কাজ করেছে। ধন্যবাদ!
হকুনিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.