রিডলাইন আপনাকে আপনার হোম ডিরেক্টরিতে .inputrc কনফিগারেশন ফাইল সম্পাদনা করে আপনার নিজস্ব কাস্টম কী-বাইন্ডিং ম্যাপ করার ক্ষমতা প্রদান করে৷
নিম্নলিখিত দুটি ধরণের কাস্টম কীবাইন্ডিং আপনি সংজ্ঞায়িত করতে পারেন:
- ম্যাক্রো
- ফাংশন
ম্যাক্রো
আপনি একটি কী-বাইন্ডিং সংজ্ঞায়িত করতে পারেন যা কার্যকর করা হলে, কার্সারের বর্তমান অবস্থানে অক্ষরগুলির একটি স্ট্রিং পূরণ করবে। এটি করার জন্য আপনার .inputrc কনফিগারেশন ফাইলে নিম্নলিখিত বিন্যাস সহ একটি লাইন যোগ করুন (অথবা এটি এখনও বিদ্যমান না থাকলে ফাইলটি তৈরি করুন):
<key combination>: "<string of characters>"
উদাহরণস্বরূপ, বলুন আমি বারবার আউটপুটকে “~/debug_output.txt” ফাইলে পুনঃনির্দেশিত করছি। আমি নিম্নলিখিত লাইন যোগ করে আমার .inputrc-এ একটি ম্যাক্রো সংজ্ঞায়িত করতে পারি:
Control-g: " > ~/debug_output.txt"
এখন, যখনই আমি Control-g কী সমন্বয় টাইপ করি, তখনই আমার কার্সারের পরে রিডাইরেক্ট স্টেটমেন্ট যোগ করা হবে, যাতে আমি সহজেই এটিকে অন্যান্য কমান্ডের শেষে যুক্ত করতে পারি।
আপনি যখন ম্যাক্রো তৈরি করছেন তখন নিম্নলিখিত বিষয়গুলি মনে রাখবেন:
<কেন্দ্র> কেন্দ্র>- আমি ইংরেজিতে কী সমন্বয়গুলি বানান করতে পারি (এ বিষয়ে আরও তথ্যের জন্য, ব্যাশের জন্য ম্যান পৃষ্ঠাটি দেখুন। "রিডলাইন কী বাইন্ডিং" বিভাগে অনুসন্ধান করুন)
- ম্যাক্রো দ্বারা ঢোকানো অক্ষরগুলির ক্রমটি অবশ্যই ডবল কোট (“) দিয়ে মোড়ানো উচিত
- Control-g-এর পছন্দ ছিল নির্বিচারে, আপনি এমন একটি সংমিশ্রণ বেছে নিতে পারেন যা আপনার কাছে আরও অর্থবহ৷
- ডিফল্ট কীবাইন্ডিংগুলিকে ওভাররাইড করা সম্ভব (যখন আপনি নিজের সংজ্ঞায়িত করবেন তখন এটি মনে রাখবেন)
- কী-বাইন্ডিং কার্যকর হওয়ার জন্য, আপনাকে অবশ্যই একটি নতুন শেল ইন্সট্যান্স শুরু করতে হবে (. inputrc কনফিগারেশন ফাইল শেল স্টার্টআপে পড়া হয়)
ফাংশন
আপনি একটি কী-বাইন্ডিংও তৈরি করতে পারেন যা কার্যকর করার সময় একটি ফাংশনকে কল করবে। রিডলাইন বেছে নেওয়ার জন্য প্রচুর সংখ্যক প্রাক-সংজ্ঞায়িত ফাংশন সরবরাহ করে। একটি পূর্ব-নির্ধারিত ফাংশনে একটি কী সমন্বয় ম্যাপ করতে:
<key combination>: <function-name>
উপলব্ধ পূর্ব-সংজ্ঞায়িত ফাংশনগুলির একটি তালিকার জন্য, GNU রিডলাইন ম্যানুয়াল দেখুন৷
৷আপনার নিজস্ব কাস্টম ফাংশন সংজ্ঞায়িত করাও সম্ভব, তবে এর জন্য সেগুলিকে সি-তে লেখার প্রয়োজন এবং এই টিউটোরিয়ালের সুযোগের বাইরে। আমরা পরে এটি একটি পৃথক টিউটোরিয়াল হিসাবে কভার করতে পারি।
একটি দরকারী পূর্ব-সংজ্ঞায়িত ফাংশন মেনু-সম্পূর্ণ। এটি একটি বিকল্প স্বয়ংসম্পূর্ণ আচরণ প্রদান করে৷
৷স্বয়ংক্রিয়-সম্পূর্ণতার জন্য ডিফল্ট আচরণ (TAB কী-তে ম্যাপ করা হয়েছে) হয়:
- একটি মিল থাকলে আংশিক কমান্ড/ডিরেক্টরি/ফাইলনাম পূরণ করুন
- 1 টির বেশি উপস্থিত থাকলে সম্ভাব্য মিলগুলির একটি তালিকা প্রদর্শন করুন
menu-complete এর পরিবর্তে সম্ভাব্য ম্যাচের তালিকার মধ্য দিয়ে ঘুরবে, প্রতিবার ফাংশনটি কল করার সময় পরবর্তী সম্ভাব্য ম্যাচটি পূরণ করবে। এই আচরণটি চমৎকার হতে পারে, বিশেষ করে যখন দীর্ঘ ফাইলের নাম স্বয়ংক্রিয়ভাবে সম্পন্ন হয়। এই আচরণটি ব্যবহার করার জন্য TAB কী পুনরায় ম্যাপ করতে, আপনার .inputrc ফাইলে নিম্নলিখিত লাইনটি যোগ করুন।
TAB: menu-complete
মনে রাখবেন যে এই নতুন কীবাইন্ডিং বর্তমান শেলে কার্যকর হবে না, আপনাকে .inputrc কনফিগারেশন ফাইলটি পুনরায় লোড করার জন্য একটি নতুন উদাহরণ শুরু করতে হবে
এই টিউটোরিয়ালে আমরা শিখেছি যে লিনাক্স কমান্ড লাইন কীবাইন্ডিং রিডলাইন নামে একটি টুল দ্বারা চালিত হয়। একটি কীবাইন্ডিং 2 প্রকারের মধ্যে 1টি হতে পারে:
- ম্যাক্রো:অক্ষরের একটি ক্রম প্রসারিত করে
- ফাংশন:একটি ক্রিয়া সম্পাদন করে
রিডলাইন আমাদের ডিফল্ট কীবাইন্ডিংয়ের একটি সেট সরবরাহ করে, তবে .inputrc কনফিগারেশন ফাইলে আমাদের নিজস্ব তৈরি করার নমনীয়তাও প্রদান করে। সবশেষে, বর্তমান কী-বাইন্ডিংগুলি দেখতে, আমরা 'bind' কমান্ড ব্যবহার করতে পারি।
bind -p