मैं मैकबुक प्रो पर कमांड कुंजी और नियंत्रण कुंजी कैसे बदल सकता हूं?


59

मैंने वेब को स्कैन किया है, और मुझे Xmodmap / कुछ भी ठीक से काम करने के लिए नहीं मिल सकता है। मैं अपनी कमांड कुंजी को अपने नियंत्रण कुंजी के साथ स्वैप करना चाहता हूं - संक्षेप में, वर्तमान में वे क्या करते हैं, इनवर्टरिंग।

मुझे यह कैसे करना है?

मैंने xmodmap -e "keycode 133 = Control_L"कीकोड 134 (दाएं कमांड) और 37 (कंट्रोल लेफ्ट) के लिए इसी कमांड की कोशिश की । मैं भी इन आदेशों की कोशिश की, प्लस xmodmap -pke > ~/.Xmodmapऔर xmodmap ~/.Xmodmapमें .xinitrc

मेरा अंतिम लक्ष्य है मैं चाहता हूं कि जब मैं क्लिक करूं controlऔर HUD / डैश को ऊपर आऊं तो commandकार्यात्मक नियंत्रण, यानी, control-vपेस्ट करने के लिए एक कमोड शॉर्टकट है, मैं क्लिक करूंगाcommand-v

जवाबों:


63

मैं यह समझ गया। निम्नलिखित डालें ~/.Xmodmap:

clear control
clear mod4

keycode 105 =
keycode 206 =

keycode 133 = Control_L NoSymbol Control_L
keycode 134 = Control_R NoSymbol Control_R
keycode 37 = Super_L NoSymbol Super_L

add control = Control_L
add control = Control_R
add mod4 = Super_L

परीक्षण करने के लिए, कमांड चलाएँ:

xmodmap ~/.Xmodmap

इसे हर बार चलाने के लिए, इसे स्टार्टअप एप्लिकेशन में जोड़ें।

यह किसी भी मैकबुक प्रो पर काम करना चाहिए; मुद्दा यह था कि एक्समोडमैप बाएं और दाएं कमांड कीज के लिए Super_L को असाइन कर रहा था, और Control_L को बाईं कंट्रोल कुंजी को। किसी कारण से, डिफ़ॉल्ट रूप से, उबंटू को लगता है कि मैकबुक प्रो में एक मानक 105 कुंजी कीबोर्ड है (शायद पूर्ण Apple कीबोर्ड के बारे में सोच रहा है) लेकिन यह गलत है। वैसे भी, मैं सही keysims को keycodes पुन: सौंपा है, तो करने के लिए keysims सौंपा controlऔर mod4


मेरे पास एक अतिरिक्त प्रश्न है: मैं कैसे लेफ्ट कंट्रोल कुंजी को बदल सकता हूं पूरी कुंजी बनाने के लिए, और वाइसवेरा, लेफ्ट कंट्रोल कुंजी के बगल में लेफ्ट कंट्रोल कुंजी बनने के लिए क्या है?
719016

मैं दाहिने हाथ की ओर वाला बटन कैसे काम करूं?
अर्काइन जू

ध्यान रखें कि यह कीबोर्ड लेआउट स्विचिंग के साथ अच्छी तरह से काम नहीं करता है। इसलिए यदि आप एक से अधिक लेआउट का उपयोग करते हैं, तो आपको हर लेआउट परिवर्तन के बाद xmodmap चलाना होगा। नीचे दिए गए उत्तर जो एडिटिंग / यूएसआर / शेयर / एक्स 11 / एक्सबीएक्स / सिंबल / पीसी से पता चलता है, उसके लिए प्रतिरक्षा है।
क्लॉरज़

क्या यह VNCViewer पर चलता है। मैं Gnome डेस्कटॉप का उपयोग कर रहा हूं और अपने Apple कीबोर्ड (कमांड की) को Ctrl Key से बदलना चाहूंगा।
अहमद

32

मैंने कल ही अपने MBP13 पर Ubuntu 16.04 डुअल बूट स्थापित किया था। Ubuntu 16.04 के लिए, यहाँ मैंने यह कैसे किया:

चरण 1: लॉन्च टर्मिनल

चरण 2: एक्स कीबोर्ड एक्सटेंशन को संपादित करें

sudo nano /usr/share/X11/xkb/symbols/pc

चरण 3: निम्नलिखित परिवर्तन करें। सुनिश्चित करें कि आपकी फ़ाइल इस प्रकार है:

key <LCTL> {    [ Super_L       ]   };
key <LWIN> {    [ Control_L     ]   };

...

key <RCTL> {    [ Super_R       ]   };
key <RWIN> {    [ Control_R     ]   };

चरण 4: xkb का कैश साफ़ करें

sudo rm -rf /var/lib/xkb/*

चरण 5 (सशर्त): यदि चरण 4 के बाद कुंजियों की अदला-बदली नहीं होती है, तो अपने कंप्यूटर को पुनरारंभ करें। इसके बाद मेरे लिए काम किया।

आशा है कि यह मदद करता है, सौभाग्य!


स्वीकृत उत्तर की तुलना में यह एक बेहतर समाधान है।
श्री एक्सिलस

मेरे लिए काम नहीं किया।
चॉवी

यह वास्तविक (2017) उत्तर है।
CESCO

यह उत्तर है। बदलाव के बाद फिर से शुरू करने की जरूरत है। धन्यवाद
lxm7

यह मेरे लिए काम किया! अंत में मैक ओएस और लिनक्स के बीच स्विच करने से लगभग मांसपेशी मेमोरी रिप्रोग्रामिंग नहीं होती है :)
जोलोको

15

अंदर जाएं System -> Preferences -> Keyboard

"लेआउट" टैब पर क्लिक करें और फिर "लेआउट विकल्प" बटन पर क्लिक करें।

"Alt / Win प्रमुख व्यवहार" पर क्लिक करें

चुनें "नियंत्रण जीत कुंजी (और सामान्य ctrl कुंजी) के लिए मैप किया गया है।

से http://ubuntuforums.org/showthread.php?t=1293081


9
बस एक नोट - यह कुंजी स्वैप नहीं करता है , यह सिर्फ कमांड कुंजी अतिरिक्त नियंत्रण कुंजी बनाता है।
फैबियन टैंप

यह Ubuntu 16.04 के लिए काम नहीं करता है।
अद्वितीय

ऐसा लगता है कि उबंटू 18.04
RM de Vos

जैसा कि मैं Ubuntu पर Apple कीबोर्ड का उपयोग कर रहा हूं, मैंने "alt is swapped with Win" का इस्तेमाल किया।
एसएम अदनान

6

सिस्टम सेटिंग्स पर जाएं और फिर कीबोर्ड लेआउट पर, फिर विकल्पों के लिए, फिर विन / Alt कुंजी व्यवहार के लिए, और फिर "मेटा स्विच Ctrl" और फिर Ctrl स्थिति में "Ctrl स्विच मेटा" की जांच करें और वहां आपके पास है!

12.04.1 को आप इसे बदलते हैं:

सबसे पहले, "सिस्टम सेटिंग्स" पर जाएं फिर "कीबोर्ड" पर क्लिक करें फिर "लेआउट सेटिंग्स" (नीचे बाईं ओर), फिर नीचे दाईं ओर "विकल्प", फिर "Alt / Win प्रमुख व्यवहार" टैब का विस्तार करते हुए, फिर चयन करें " नियंत्रण कुंजी जीतने के लिए मैप किया जाता है (और सामान्य Ctrl कुंजी) "


12.04 में मेरे लिए काम किया। मैं वास्तव में यह विश्वास नहीं कर सकता, लेकिन यह काम किया। .Xmodmap
jyoseph

यह बहुत अच्छा है, धन्यवाद। मेरे पास नई प्रणाली है (आप दूसरे पैराग्राफ में क्या वर्णन करते हैं)। Ctrl को विन कीज पर मैप किया जाता है, Cmd को Ctrl के रूप में व्यवहार किया जाता है। Ctrl कुंजी की स्थिति -> मेटा के विपरीत लेफ्ट Ctrl इसके विपरीत होता है। साइड नोट के रूप में भी, मुझे स्टार्टअप और शटडाउन -> सेवा प्रबंधक -> स्टार्टअप सेवाओं और कीबोर्ड डेमॉन को सक्रिय करना था (यह डिफ़ॉल्ट रूप से बंद था)।
०:१६

14.04 को लगता है कि "विकल्प" लिंक नहीं है।
वाल्दिर लियोनसियो

उबंटू 15.04 के लिए, यह विकल्प अब "इनपुट डिवाइसेस> कीबोर्ड> एडवांस टैब> ऑल्ट / विन प्रमुख व्यवहार सेक्शन पर उपलब्ध है। Ctrl कुंजी जीतने के लिए मैप किया गया है (और सामान्य Ctrl कीज़)"
Serj Zaharchenko

2
खिचड़ी भाषा उबंटू 16.04
होउमन

5

समुदाय उबंटू मदद पृष्ठ एप्पल कीबोर्ड के लिए स्थायी रूप से यह परिवर्तन करने के लिए निम्न चरणों देता है: (परीक्षण किया 2017/05/27)

/etc/modprobe.d/hid_apple.confयदि आवश्यक हो तो फ़ाइल बनाने के लिए कॉन्फ़िगरेशन लाइन को जोड़ने के लिए निम्नलिखित कमांड चलाएँ :

echo options hid_apple swap_opt_cmd=1 | sudo tee -a /etc/modprobe.d/hid_apple.conf

Initramfs बूटफ़ाइल में कॉन्फ़िगरेशन की प्रतिलिपि बनाने वाला ट्रिगर।

sudo update-initramfs -u -k all

वैकल्पिक रूप से, रिबूट

sudo reboot

इसे अस्थायी रूप से परीक्षण करने के लिए, आप चला सकते हैं

echo 1 | sudo tee /sys/module/hid_apple/parameters/swap_opt_cmd

4

18.04 के लिए अपडेट किया गया क्योंकि प्रदान किए गए उत्तर में से कोई भी मेरे सिस्टम पर काम नहीं करता था। मैंने 18.04 की एक साफ स्थापना की और वायर्ड एल्यूमीनियम ऐप्पल कीबोर्ड का उपयोग करने का प्रयास किया। अंग्रेजी यूएस पर लेफ्ट सुपर के डिफ़ॉल्ट व्यवहार को गनोम डेस्कटॉप डैशबोर्ड पर मैप किया जाता है। जीयूआई का उपयोग करने के लिए एक आसान में सभी आवश्यक सेटिंग्स में ट्विक टूल था!

sudo apt install gnome-tweak-tool

पहले मैंने डैशबोर्ड हॉटकी को दाईं ओर स्वैप किया और फिर "अतिरिक्त लेआउट विकल्प" के तहत आप अच्छे प्रभाव के लिए "Ctrl स्थिति / वाम वामपंथी वाम दल के साथ स्वैप " का उपयोग कर सकते हैं ।


सूक्ति-ट्विक-टूल अद्भुत है, धन्यवाद!
डेनिस गोलोमेज़ोव

यह स्वीकृत उत्तर होना चाहिए। मैक के लिए, मुझे वर्तमान में पता चल रहा है कि सूक्ति और माउस> अतिरिक्त लेआउट विकल्प> Ctrl की स्थिति> Ctrl स्थिति> वाम वाम के साथ स्वैप जीत के तहत Gnome Tweak Tools की सेटिंग है। मैक कीबोर्ड की कमांड कुंजी को "विन" कहा जाता है।
भालेर

2019 में, गनोम में, यह सबसे आसान समाधान है। धन्यवाद
jymbob

1

कदम से कदम xkb के साथ कमान और नियंत्रण कुंजी स्वैप करने के लिए कैसे?

16.04 में, यहां मुझे काम करने का तरीका मिल गया। Xmodmap सार्वभौमिक रूप से सभी ऐप्स में काम नहीं करता है, सूक्ति ट्विन टूल में फ़ंक्शन की कमी है, एक कस्टम altwin2 कुंजी स्वैप (यहां मुख्य उत्तर की तरह) संपादित करने में विफल रहा है, इसलिए मैं अपने बालों को तब तक फाड़ रहा था जब तक कि मैंने इस पूर्ण, सरल में कई उत्तर नहीं जोड़ दिए। और सुरुचिपूर्ण समाधान:

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/*

(मुझे नहीं पता कि यह आवश्यक है, लेकिन मैंने ऐसा किया है।)

रीबूट।


यह अच्छा था लेकिन मैं अपने ALT कुंजियों को बाईं नियंत्रण कुंजी के रूप में बदलने के लिए समान चाल का उपयोग करने में असमर्थ हूं। ऐसा लगता है कि ALT कुंजियाँ अलग तरह से काम करती हैं। क्या आप जानते हैं कि मैं यह कैसे कर सकता हूं?
पियरे थिबॉल्ट

किसी भी चीज के लिए एक ही ट्रिक काम करती है। आपको दोनों प्रमुख मैपिंग और साथ ही modifier_map मैपिंग को स्विच करना होगा। आप ग्नोम ट्वाइक्स या गॉन्फ में भी कूद सकते हैं, मैं भूल जाता हूं कि कौन सा है, और "टॉगल सीटीएल और अल्ट" जैसी कई टॉगल सेटिंग्स हैं।
टॉम मर्सर

हम ऐसा नहीं कर सकते: कुंजी <LALT> {[Control_L]}; कुंजी <RALT> {[Control_L]}; अल्ट का इलाज अलग तरीके से किया जाता है। इसलिए मैंने Gnome Tweaks का इस्तेमाल किया। मैं वह नहीं कर पा रहा था जो मैं चाहता था, लेकिन यह इतना बुरा नहीं है।
पियरे थिबॉल्ट

मुझे यकीन नहीं है कि मैं आपकी समस्या को समझता हूं। यदि आप चाहते हैं कि दोनों अल्ट्स नियंत्रण के रूप में व्यवहार करें, तो ठीक ऊपर की तरह की फ़ाइल दोनों अल्ट कुंजी को नियंत्रण के रूप में व्यवहार करेगी, और दोनों नियंत्रण कुंजियाँ अलार्म के रूप में व्यवहार करती हैं। यदि आप निर्दिष्ट कर सकते हैं कि आप प्रत्येक कुंजी क्या चाहते हैं, तो शायद मैं मदद कर सकता हूं? क्या आपने इस फ़ाइल को आज़माया है? आप किस मशीन का उपयोग कर रहे हैं, और कौन सा कीबोर्ड? फ्रेंच कीबोर्ड लेआउट हमें परेशानी दे सकता है।
टॉम मर्सर

नहीं, मैंने फ़ाइल की कोशिश नहीं की। मैं देख सकता हूं कि बाद में फ़ाइल में आप दो ऑल्ट टू टू सीटीएल का स्विच बना रहे हैं। मैंने यह खो दिया। इसे इंगित करने के लिए धन्यवाद। मैं कोशिश करुंगा।
पियरे थिबॉल्ट

0

हो सकता है कि आपको किंतो उपयोगी लगे। यह एक ऐसी परियोजना है जिसे मैंने हाल ही में बनाया है, इस समस्या से निपटने के कुछ वर्षों के बाद कुछ अलग तरीके हैं और मुझे अभी लगता है कि यह साझा करने के लिए पर्याप्त है।

किंस्टो इंस्टॉलर बस प्रारंभिक इंस्टॉलेशन करने के लिए अजगर का उपयोग करता है, उसके बाद यह सिर्फ एक सिस्टमड सर्विस, बैश, एक्सप्रॉप, सेटक्सबामैम्प और एक्सबीएक्सपीएम है। जहां तक ​​मेरा सवाल है कि यह इस समस्या का सबसे तेज और सबसे देशी समाधान है जिसे आप खोजने जा रहे हैं।

https://github.com/rbreaves/kinto

https://medium.com/@benreaves/kinto-a-mac-inspired-keyboard-mapping-for-linux-58f731817c0

यहाँ एक जिस्ट भी है, यदि आप केवल यह देखना चाहते हैं कि यह सब किसके दिल में है, तो यह आपके कीमैप को वैकल्पिक रूप से आवश्यक नहीं करेगा। Gist में कस्टम xkb कीमैप फाइलें भी शामिल नहीं हैं जो macOS स्टाइल कर्सर / शब्द-वार जोड़तोड़ करते हैं जो Cmd और एरो कीज़ का उपयोग करते हैं।

https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb

सामग्री दें

# permanent apple keyboard keyswap
echo "options hid_apple swap_opt_cmd=1" | sudo tee -a /etc/modprobe.d/hid_apple.conf
update-initramfs -u -k all

# Temporary & instant apple keyboard keyswap
echo '1' | sudo tee -a /sys/module/hid_apple/parameters/swap_opt_cmd

# Windows and Mac keyboards - GUI (Physical Alt is Ctrl, Physical Super is Alt, Physical Ctrl is Super)
setxkbmap -option;setxkbmap -option altwin:ctrl_alt_win

# Windows and Mac keyboards - Terminal Apps (Physical Alt is Super, Physical Super is Alt, Physical Ctrl is Ctrl)
setxkbmap -option;setxkbmap -option altwin:swap_alt_win

#
# If you want a systemd service and bash script to help toggle between
# GUI and Terminal applications then look at project Kinto.
# https://github.com/rbreaves/kinto
#
# Note: The above may not work for Chromebooks running Linux, please look
# at project Kinto for that.
#
# If anyone would like to contribute to the project then please do!
#
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.