অবশ্যই আপনি আর Ctrl+ ব্যবহার করতে পারবেন না R। আপনি যদি জেড শেল ম্যানুয়ালটির সাথে পরামর্শ করেন তবে আপনি দেখতে পাবেন যে কী ম্যাপে history-incremental-search-backward
উইজেটের জন্য কেবল একটি মূল বাঁধাই রয়েছে emacs
। Vi কীম্যাপসে এর জন্য কোনও কী বাইন্ডিং নেই।
তবে যেমন আপনি ম্যানুয়ালটি পড়েছেন (এটি অধ্যায় 18 from), কী বাইন্ডিং যুক্ত করা bindkey
কমান্ডটির ব্যবহারে মোটামুটি সহজ অনুশীলন :
bindkey "^R" history-incremental-search-backward
এমনকি zle
শেল ফাংশনটিতে উইজেটটি মানচিত্র করতে আপনাকে কমান্ডটি ব্যবহার করতে হবে না , কারণ এটি একটি স্ট্যান্ডার্ড উইজেট।
আপনি যদি জেড শেল উইকিতে থাকা এই একই প্রশ্নের উত্তরের জন্য পরামর্শ নেন , আপনি বিশেষত এটি vi "কমান্ড" এবং "সন্নিবেশ মোড" কীম্যাপগুলিতে যুক্ত করার জন্য কমান্ডগুলি দেখতে পাবেন:
bindkey -M viins '^R' history-incremental-search-backward
bindkey -M vicmd '^R' history-incremental-search-backward
আরও মনে রাখবেন, গ্যারিজন জন যেমন উল্লেখ করেছেন , vi "কমান্ড" কীম্যাপে, /চরিত্রটি vi-history-search-backward
উইজেটের সাথে আবদ্ধ । এই উইজেট এবং উইজেটের মধ্যে পার্থক্য history-incremental-search-backward
হ'ল উইজেট আচরণ যা ইতিহাস অনুসন্ধান মোডে একবার প্রযোজ্য । এখানে কয়েকটি পার্থক্য যা আপনি লক্ষ্য করবেন:
- ভিআই মোডগুলি স্যুইচ করা:
- মধ্যে অনুসন্ধান মোডে
history-incremental-search-backward
মধ্যে টগল main
এবং vicmd
বোর্ডের ব্যবহার যখন আপনি ডাকা vi-cmd-mode
থাকাকালীন এখনও অনুসন্ধান মোডে স্থিত উইজেট। থেকে অর্থাত emacs
মোড presssing Escকী বা Ctrl+ + XCtrl+ + Vকী মধ্যে অনুসন্ধান মোডে টগল emacs
এবং vicmd
বোর্ডের ব্যবহার। (Invoking history-incremental-search-backward
থেকে vicmd
কীম্যাপ যদি না আপনি বেঁধে কিছু, এইভাবে বিরক্তিজনক হয় vi-cmd-mode
মধ্যে vicmd
পাশাপাশি কীম্যাপ।)
- অনুসন্ধান মোডটি উইজেটের
vi-history-search-backward
সাথে একই আচরণ করে এবং অনুসন্ধানটি শেষ করবে, আপনি যে কমান্ড মোড থেকে সন্ধানটি প্রবেশ করেছিলেন তা পুনরায় প্রবেশ করবে। যেমন (ডিফল্ট বাইন্ডিং সহ) কমান্ড মোড থেকে অনুসন্ধান মোডে প্রবেশ করে এবং কমান্ড মোডে ফিরে যায়।vi-cmd-mode
accept-line
/Esc
- একটি অনুসন্ধান পুনরাবৃত্তি:
- ইন
history-incremental-search-backward
, history-incremental-search-backward
এবং vi-rev-repeat-search
উইজেট উভয়ই স্বীকৃত। উদাহরণস্বরূপ (ধরে নেওয়া যায় যে আপনি বাইন্ডিংগুলি উপরের মতো পরিবর্তন করেছেন) উভয় Ctrl+ Rএবং Nপূর্ববর্তী মিলের লাইনটি অনুসন্ধান করবে।
- ইন
vi-history-search-backward
, কেবলমাত্র vi-rev-repeat-search
উইজেট স্বীকৃত। উদাহরণস্বরূপ (ধরে নেওয়া যে আপনি উপরের মতো বাইন্ডিংগুলি পরিবর্তন করেছেন) Ctrl+ Rবীপের কারণ এবং এড়ানো হবে।
garyjohn
এটি করার একটি ভিম উপায়JdeBP
দেখায় এবং কীভাবে Ctrl + R এর কী-বাইন্ডিং পাবেন তা দেখায়! আমি উভয় পদ্ধতি নিয়ে খেলতে যাচ্ছি এবং পরে একটি উত্তর গ্রহণ করব। আমি 1 এর উপর ভিত্তি করে সিদ্ধান্ত নেব) কোন পদ্ধতিটি আমার কাছে সহজ মনে হয় এবং 2) কোনটি আরও উচ্চতর হয়। আপনাদের দুজনকেই ধন্যবাদ!