ইমাকস এবং ওপেনবক্সের সাথে কাজ করার সময় কীম্যাপিংয়ের সমস্যা


17

আমার কাছে একটি অ্যাপল কীবোর্ড রয়েছে এবং ইমাসের সাথে কাজ করার সময় বারের mod-4বাম দিকে প্রথম কীটি তৈরি করতে আমাকে কীগুলির কিছু পুনর্নির্মাণ করতে হয়েছিল Space। আমি যখন dwm উইন্ডো ম্যানেজারটি ব্যবহার করছিলাম তখন নীচের স্ক্রিপ্টটি ঠিকঠাকভাবে কাজ করেছিল, তবে ওপেনবক্সে স্যুইচ করার পরে আমি দেখতে পেয়েছি যে বিকল্প এবং কমান্ড কীগুলির মধ্যে কী-কোডগুলি অদলবদলের পরিবর্তে উভয় কী একই কাজ করছে।

একটি বিচিত্র বিষয় আমি লক্ষ্য করেছি, নতুন সেটআপটিতে যখন আমি রান ক্লিক করি showkeyএবং অপশন এবং কমান্ড কীগুলি টিপুন আমি যথাক্রমে ৫ and এবং ১২৫ পেয়েছি, তবে these৪ এবং এর পরিবর্তে নীচের স্ক্রিপ্টে keysোকানোর সময় এই কীগুলি মোটেই কাজ করে না 133।

আমি অবশ্যই স্বীকার করব যে আমি নীচের স্ক্রিপ্টটি ক্রমাগত টুইট করে এটি তৈরি না করে তৈরি করেছি যাতে এটি করার আরও ভাল উপায় হতে পারে।

.xmodmap

# switch alt and command...the switch is not being done properly
xmodmap -e "keycode 64 = Alt_L"
xmodmap -e "keycode 133 = Meta_L"

# remap of mod 4
xmodmap -e "clear Mod4"
xmodmap -e "add Mod4 = Super_L"

হালনাগাদ

আমি পূর্ববর্তী কীবোর্ড সেটআপে অভ্যস্ত হয়েছি এবং এটি টুইট করার চেষ্টা ছেড়ে দিয়েছি। দুর্ভাগ্যবশত, পরে একটি সাম্প্রতিক পুনর্সূচনা CapsLockকরা Ctrlআর তাই এখানে কাজ আমি আবার নই।

এবার উপরে ব্যবহৃত ম্যাপিংয়ের পরিবর্তে আমি দৌড়ে গিয়ে xmodmap -pke > ~/.xmodপরিবর্তে সেখানে কীগুলি (যা আরও সহজ) টি টিক করেছিলাম ।

যাইহোক, বিষয়গুলি এখনও বেশ সঠিক নয়। CapsLockযখন ব্যতীত স্বাভাবিক হিসাবে এখনও ফাংশন xevকমান্ড চালানো হয়, তাহলে এটি নিম্নলিখিত সঠিক ম্যাপিং দেখানোর জন্য বলে মনে হচ্ছে না যা ফেরৎ:

# caplock
KeyRelease event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4858000, (57,-31), root:(426,402),
state 0x2, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes: 
XFilterEvent returns: False

# ctrl-L
KeyRelease event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4805947, (686,148), root:(1055,581),
state 0x4, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

# Alt-L
KeyPress event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4555825, (-158,-649), root:(959,133),
state 0x0, keycode 64 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

# Super-L
KeyRelease event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4920564, (-63,169), root:(306,602),
state 0x40, keycode 133 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

4
পিসিগুলিতে (আমি জানি না এটি ম্যাক্সের ক্ষেত্রেও সত্য কিনা) showkeyএক্স ব্যবহার করে এমন কী-কোডসটি দেখায় না। চালান xevএক্স keycodes এবং তাদের ক্রিয়া দেখার জন্য। আপনি জড়িত প্রতিটি কী টিপুন xmodmap -pmএবং তার আউটপুট আমাদের প্রদর্শন করুন xev
গিলস

আমি xmodmap -pm কমান্ডের জন্য উপরে একটি আপডেট যুক্ত করেছি
ক্রিস

আপনি wiki.archlinux.org/index.php/Apple_Keyboard এবং help.ubuntu.com/commune/AppleKeyboardএকবার দেখতে চাইতে পারেন । সংক্ষিপ্তসার হিসাবে, আপনি এক্স
উইঙ্গসসবারমারিনার

এটি যদি ডিডাব্লুএম-এ কাজ করছিল তবে আমার অনুমান যে বিরোধের সাথে ~/.config/openbox/rc.xmlএটিই সমস্যা।
মেজরব্রিজ

আপনি কি xmodmap এর পরিবর্তে কীগুলি পুনরায় তৈরি করতে udev ব্যবহারের কথা বিবেচনা করেছেন? udev নির্দিষ্ট স্ক্যানকোডগুলি নির্দিষ্ট কীকোডগুলিতে পুনরায় তৈরি করতে কেবল একটি hwdb ফাইলের প্রয়োজন।
সেন্টিমানে

উত্তর:


1

আপনার সম্ভবত আপনার প্রথমে নিম্নলিখিতটি স্থাপন করা দরকার ~/.xmod

remove Lock = Caps_Lock
remove Control = Control_L
remove Mod1 = Alt_L Meta_L
remove Mod4 = Super_L Hyper_L

এবং নীচে নীচে ~/.xmod

add Control = Control_L
add Mod1 = Alt_L Meta_L
add Mod4 = Super_L Hyper_L

এই কীগুলির সংশোধক প্রকৃতিটি সনাক্ত করতে এটি সিস্টেমকে আপডেট করবে।

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