জেডএসএইচ ইতিহাস-বর্ধিত-প্যাটার্ন-সন্ধান-পিছনে পিছনে ম্যাচের মাধ্যমে চক্র


10

আমি সম্প্রতি অনুসন্ধানের ব্যবহারটি অনুসন্ধান স্যুইচ করেছি history-incremental-pattern-search-backwardযেহেতু এটি অনুসন্ধানে নিদর্শনগুলির অনুমতি দেয়। এটি আমার মধ্যে সেটআপ হয়.zshrc

bindkey -M vicmd '/' history-incremental-pattern-search-backward

এটি দুর্দান্ত কাজ করে তবে অনুসন্ধান মেনু থেকে পরবর্তী ম্যাচে কীভাবে যাবেন তা আমি বুঝতে পারি না।

% cat foobarbaz.txt
bck-i-search: f*baz

এটি করার জন্য কী কী আছে?

উত্তর:


12

অবশেষে সঠিক জ্বলন খুঁজে পেল। সন্নিবেশ মোডে আপনাকে প্যাটার্ন অনুসন্ধানটি মানচিত্র করতে হবে। এই টুকরোটি আমি অনুপস্থিত ছিল:

# Search backwards and forwards with a pattern
bindkey -M vicmd '/' history-incremental-pattern-search-backward
bindkey -M vicmd '?' history-incremental-pattern-search-forward

# set up for insert mode too
bindkey -M viins '^R' history-incremental-pattern-search-backward
bindkey -M viins '^F' history-incremental-pattern-search-forward

আমি ^Bসন্নিবেশ মোডে পিছনের দিকে অনুসন্ধানের জন্য ব্যবহার করতে পারতাম , তবে আমি সেটিকে অন্য কোনও কিছুর সাথে ম্যাপ করেছি। সুতরাং এখন ^Rএবং ^Fম্যাচগুলির মধ্যে চক্র।


কি -Mকমান্ড কি? আমার ক্ষেত্রে এমনকি -Mকীওয়ার্ড ছাড়াই এটি দুর্দান্ত কাজ করে ..
alpha_989

-M keymapBindkey যা বাঁধাই আবেদন করতে কীম্যাপ বলে। আমি এটি সন্নিবেশ মোড এবং কমান্ড মোড উভয়ের জন্য সেট আপ করেছি।
ক্লিটারট্রন

স্পষ্টতার জন্য ধন্যবাদ। আমার ক্ষেত্রে আমার কেবল আছে bindkey '^R' history-incremental-pattern-search-backward, এবং এটি কার্যকর হয় works আমি /zsh এ vi সাধারণ মডেলের ডিফল্ট কমান্ডটিও ব্যবহার করি । এটিতে আমি কমান্ডের ইতিহাস অনুসন্ধান করতে পারি এবং এটি কমান্ডটি সন্ধান করার পরে এটি কমান্ড লাইনে সরবরাহ করবে। তারপরে আমি প্রয়োজন হলে শেষ কমান্ডটি সংশোধন করতে পারি।
alpha_989

আমি যদি '^R' history-incremental-pattern-search-backwardঅন্যদিকে ব্যবহার করি তবে এটি আমাকে অনুসন্ধানের সাথে মেলে এমন সর্বশেষ কমান্ডটিতে পৌঁছে দেবে। তবে, কমান্ডটি সম্পাদনা করতে সক্ষম হওয়ার কোনও উপায় আমি খুঁজে পাইনি। ইনক্রিমেন্টাল প্যাটার সন্ধানের মাধ্যমে অনুসন্ধানের স্ট্রিংয়ের সাথে মিলিয়ে একটি উপযুক্ত কমান্ড সন্ধান করার পরে, কোনও নির্দিষ্ট কী সংমিশ্রণ রয়েছে, যা আমি কমান্ডটি সম্পাদনা করতে সক্ষম হতে টিপতে পারি?
alpha_989

9

zshzleZsh 4.3.10 এর ম্যানুয়াল পৃষ্ঠা অনুসারে , কোনও কী ডিফল্টরূপে আবদ্ধ হয় না। আপনাকে isearchমানচিত্রে বাইন্ডিং যুক্ত করতে হবে এবং কয়েকটি উইজেট পাওয়া যাবে। উদাহরণস্বরূপ, আপনি এটি করতে পারেন:

bindkey -M isearch '^R' history-incremental-search-backward
bindkey -M isearch '^S' history-incremental-search-forward

bindkey -lকোনও isearchম্যাপিং দেখায় না
ক্লাটিট্রন

@ ক্লেট্রন: অবশ্যই একটি সংস্করণ ইস্যু হতে হবে: ৪.৩.১০ isearchএ নতুন, যখন history-incremental-pattern-search-backward৪.৩..7 এ উপস্থিত হয়েছিল (যদি আমি চেঞ্জলগটি সঠিকভাবে পড়ি)।
গিলস 'অশুভ হওয়া বন্ধ করুন'

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