ক্যাপসলক কী সিস্টেমটি প্রশস্ত করে পুনরায় পুনরায় তৈরি করা সম্ভব যে ক্যাপসলক বোতামটি নিজে চাপলে এটি এস্কেপ কী হিসাবে কাজ করে এবং অন্য কী দিয়ে চাপলে এটি নিয়ন্ত্রণ কী হিসাবে কাজ করে?
ক্যাপসলক কী সিস্টেমটি প্রশস্ত করে পুনরায় পুনরায় তৈরি করা সম্ভব যে ক্যাপসলক বোতামটি নিজে চাপলে এটি এস্কেপ কী হিসাবে কাজ করে এবং অন্য কী দিয়ে চাপলে এটি নিয়ন্ত্রণ কী হিসাবে কাজ করে?
উত্তর:
আমি xcape নামে একটি খুব ভাল সমাধান পেয়েছি । পুনরায় পড়া থেকে:
xcape ডেমন হিসাবে চালিত হয় এবং নিয়ন্ত্রণ কীটি বাধা দেয়। যদি কন্ট্রোল কীটি নিজে থেকে চাপ দেওয়া হয় এবং প্রকাশ করা হয় তবে এটি একটি এস্কে কী ইভেন্ট উত্পন্ন করবে।
আপনি যদি ক্যাপসটিতে আপনার ক্যাপস লক কীটি পুনরায় তৈরি করে থাকেন তবে এটি আরও অর্থবোধ করে। এই প্রোগ্রামের ভবিষ্যতের সংস্করণগুলি আপনার জন্য এই ম্যাপিংটি করতে পারে তবে আপাতত এটি আপনাকে নিজেরাই করতে হবে।
আমি ক্যাপসকে এস্কেপ ম্যাপ করেছিলাম যাতে আমি ভিমে টাইপ করা আরও স্বাচ্ছন্দ্য বোধ করি। আমি ব্যবহার করেছি xmodmap
, এবং এটি ভিতরে রাখা ~/.Xmodmap
।
clear Lock
keycode 0x42 = Escape
প্রয়োগ করতে: xmodmap ~/.Xmodmap
। আপনি এটি কোনও ফাইল যেমন ~ / .bash_profile এ রাখতে পারেন (আমি ~ / .xinitrc এ দিয়েছি, কারণ আমি লগইন পরিচালক ব্যবহার করি না।
CapsLock + [[অন্য কী]] মানচিত্র করতে, ব্যবহার বিবেচনা করুন xbindkeys
।
সিস্টেম-ওয়াইড রিম্যাপিং কীগুলির জন্য একটি লিনাক্স-কেবলমাত্র সমাধান হল একটি সহজ ইউদেব নিয়ম write এটি এক্স এর উপর নির্ভর করবে না, যে কোনও টার্মিনাল বা অ্যাপ্লিকেশনটিতে কাজ করবে এবং কেবলমাত্র দুটি ফাইল অনুলিপি করে কোনও সাম্প্রতিক লিনাক্স ইনস্টলের মধ্যে বহনযোগ্য।
আপনাকে ২ টি ফাইল লিখতে হবে: একটি ওদেব নিয়মযুক্ত একটি যা কার্নেলটিকে কীগুলি পুনর্নির্মাণ করতে এবং আপনার প্রয়োজনীয় প্রকৃত ম্যাপিংগুলি অন্তর্ভুক্ত করে।
এই পদ্ধতিটি ব্যবহার করে আমি আমার পুরো কীবোর্ডটি পুনরায় তৈরি করেছি, কোডটি অনুপ্রেরণা হিসাবে কার্যকর হতে পারে http://git.adirat.com/carpalx-keyboard
আমি এই উদ্দেশ্যে সি তে একটি সরঞ্জাম তৈরি করেছি যা এক্সকেপ / এক্সমোডম্যাপ সমাধান সহ অনেকগুলি সমস্যা কাটিয়ে উঠেছে :
আমি আস্কউবুন্টু সম্পর্কে একটি পৃথক শব্দযুক্ত প্রশ্ন জুড়েছিলাম যার একটি ভাল উত্তর ছিল , তবে আমার সিস্টেমে কাজ করার জন্য আমাকে এটিকে সামান্য পরিবর্তন করতে হয়েছিল।
প্রতি লুই এবং সের্গির মন্তব্য সেখানে আমি এই সমাধানটি নিয়ে এসেছি যা উবুন্টু ১.0.০৪ (জেনিয়াল) এ আমার জন্য কাজ করছে এবং আমি এটি অন্যান্য লিনাক্স সিস্টেমে আমার সাথে ব্যবহার করব।
আমি এক্সক্যাপ ইনস্টল করেছি এবং .profile
আমার হোম ডিরেক্টরিতে আমার ফাইলটিতে নিম্নলিখিত কোডের লাইনগুলি রেখেছি।
বিভিন্ন ডিসপ্লে ম্যানেজার (জিডিএম / কেডিএম / এসডিডিএম / ইত্যাদি) অদ্ভুত উপায়ে আচরণ করে এবং setxbmap
সাসপেন্ড / পুনঃসূচনা বা লক / আনলকের পরে পুনরায় সেট করার কারণে আমি আবিষ্কার করেছি যে কীভাবে বিকল্পগুলি সেটির উত্তরাধিকারী হয় এবং কীভাবে ডোন ' এটি সব সময় পুনরায় সেট করুন। কারণ আমি স্থগিত হয়েছি এবং আমার প্রচুর পরিমাণে পুনরায় কাজ শুরু করার প্রয়োজন হয়েছিল তা নিশ্চিত করার জন্য যে আমার প্রচুর অনুলিপি xcape
চালিত হয়নি যা নীচের নতুন স্ক্রিপ্টে সমাধান হয়েছে।
প্রথমে কীবোর্ড কনফিগারেশনটি সংশোধন করুন sudo gedit /etc/default/keyboard
এবং সেট করুন XKBOPTIONS="ctrl:nocaps"
এবং তারপরে আপনার ~/.xprofile
নীচে একক লাইন রাখুন।
ps aux | grep -i '[x]cape' && killall -9 xcape; hash xcape 2>&1 >/dev/null && xcape -e 'Control_L=Escape' -t 100 &
আশা করি স্ক্রিপ্টের বিভিন্ন বিভাগ আপনাকে কিছুটা সময় / ঝামেলা সাশ্রয় করবে এবং আটকে থাকা লগইনগুলি রোধ করবে। প্রথমে এটি পরীক্ষা করে দেখেছে যে ইতিমধ্যে কোনও দৃষ্টান্ত চলছে এবং এটি মেরে ফেলেছে, যেহেতু একমাত্র কাজটি xcape
হ'ল সিএসটিএল-এর ম্যাপ Esc, এটি নিরাপদ, তারপরে hash
অংশটি নিশ্চিত করে যে আপনি xcape
ইনস্টল করেছেন অন্যথায় লগইন করার চেষ্টা করার সময় আপনার সিস্টেমটি স্তব্ধ হয়ে যেতে পারে কারণ সমস্ত স্টার্টআপ স্ক্রিপ্টগুলি পরিষ্কারভাবে প্রস্থান করার আশা করা হচ্ছে।
setxkbmap -option 'caps:ctrl_modifier'; xcape -e '#66=Escape'
Sergiy:
উবুন্টু ১৪.০৪-তে সিস্টেম সেটিংসে কোনও কীবোর্ড লেআউট নেই বলে ক্যাপস লক টু সিটিআরএল করার জন্য আমি জিনোম-টুইক-টুল ব্যবহার করেছি। তারপরে xcape -e 'Control_L = Escape' কাজ করেনি, তবে xcape -d ব্যবহার করার পরে আমি আবিষ্কার করেছি যে ক্যাপস লকটি কীকোড 66 66 উত্পন্ন করে এবং যথাক্রমে এটি পুনরায় সরিয়ে নিয়েছে: xcape -e '# 66 = Escape' Escape - সের্গেই বাইলোজিওরভ 4 সেপ্টেম্বর 4 '14 এ 10:08 এ
লুই:
এই ব্লগ পোস্ট অনুসারে, একা xcape দিয়ে এটি করা সম্ভব: setxkbmap -option 'caps: ctrl_modifier'; xcape -e 'Caps_Lock = Escape' setxkbmap -option 'caps: ctrl_modifier'; xcape -e 'Caps_Lock = Escape; Control_L = Escape; Control_R = Escape' - লুই সিমোনাও 4 আগস্ট '15 এ 10:06