ইনক্রিমেন্টাল অনুসন্ধানে বর্তমান মিলটি (অর্থাত্ অঞ্চল হিসাবে) নির্বাচন করা হচ্ছে


9

স্ট্রিংটির সাথে C-sঅনুসন্ধান করার সময়, অনুসন্ধান মোড থেকে প্রস্থান করার জন্য আমি কিছু কী চাপতে সক্ষম হতে চাই তবে এখনও ম্যাচের নির্বাচন বজায় রাখতে পারি। আমি অবিলম্বে টাইপ শুরু করতে এবং শেষ ম্যাচটি প্রতিস্থাপন করতে পারি।

উদাহরণস্বরূপ, বলুন আমার কাছে নিম্নলিখিত নথি রয়েছে:

The quick brown fox jumps over the lazy dog.

যদি আমি "অলস" সন্ধান করি, ইমাসগুলি সেই শব্দটি এমনভাবে নির্বাচন করবে (বর্গাকার বন্ধনী নির্বাচন করা হয়, পাইপ কার্সার হয়):

The quick brown fox jumps over the [lazy|] dog.

এখন, আমি returnটিপলে, ইম্যাকগুলি আমার কার্সারের অবস্থান বজায় রাখবে, তবে এটি "অলস "টিকে অনির্বাচিত করবে:

The quick brown fox jumps over the lazy| dog.

এর পরিবর্তে, আমি একটি শর্টকাট চাই যা অনুসন্ধান মোড থেকে প্রস্থান করবে কিন্তু উপরের দ্বিতীয় অবস্থার মতো বর্তমান ম্যাচ নির্বাচন বজায় রাখবে।


আপনি M-x query-replaceযা খুঁজছেন তাই না ?
Nsukami _

1
@ শুকামি_ আমি সবসময় জানি না যে আমি আমার ক্যোয়ারীটি কী হতে চাই বা এমনকি আমি অনুসন্ধানের আগে এটি কীভাবে প্রতিস্থাপন করতে চাই। C-sআমি যেটি সন্ধান করতে চাই তা হিট করা এবং টাইপ করা অনেক সহজ , তারপরে ডাব্লু / ব্যাকস্পেসটি আমি যে জিনিসটি পরিবর্তন করতে চাইছি তাতে শূন্যে পরিবর্তন করুন। তারপরে আমি ঠিক কীটির সাথে এটি প্রতিস্থাপন করতে চাই তা নিয়ে খেলি। M-%খুব "আনুষ্ঠানিক।"
বেন

সমাধানটি আমার পক্ষে কার্যকর হয়ে আসে, যেমন আমি যখন কোনও শব্দটিকে হত্যা করার জন্য অনুসন্ধান করি এবং এরপরে এটি অন্য কোনও জায়গায় নিয়ে যাই ank query-replaceএটি সমাধান করে না।
জারজিলি পোলোনকাই

উত্তর:


7

এখানে একটি পদ্ধতির:

(defun isearch-exit-mark-match ()
  "Exit isearch and mark the current match."
  (interactive)
  (isearch-exit)
  (push-mark isearch-other-end)
  (activate-mark))

(define-key isearch-mode-map (kbd "<C-return>") #'isearch-exit-mark-match)

বর্তমানের অনুসন্ধান থেকে বেরিয়ে আসার জন্য এবং শেষ ম্যাচটি নির্বাচিত ছেড়ে যাওয়ার জন্য এটি একটি আলাদা কী (সি-রিটার্ন) বাঁধে। এটি isearch-forward-regexpপাশাপাশি কাজ করবে , যা সুবিধাজনক।


1
আমি পেয়েছি "প্রতীকটির ফাংশন সংজ্ঞাটি বাতিল: বাইন্ড-কী"। কোথা bind-keyথেকে আসছে?
বেন

1
দুঃখিত, bind-keyঅন্য লাইব্রেরি থেকে এসেছে। define-keyপরিবর্তে বিল্ট-ইন ফাংশনটি ব্যবহার করার জন্য আমি উত্তরটি পরিবর্তন করেছি ।
গ্লুকাস

4

লাইব্রেরি আইশার্ক + আপনাকে এটি সহজেই করতে দেয় এবং এমনকি ফ্লাইতে এটিকে টগল চালু / বন্ধ করতে দেয়।

  • নন-নিল বিকল্প isearchp-set-region-flagস্বয়ংক্রিয়ভাবে সর্বশেষ অনুসন্ধান লক্ষ্যটির আশেপাশে অঞ্চল (নির্বাচন) সেট করে যখন আপনি অনুসন্ধান ত্যাগ করবেন।

  • কমান্ড isearchp-toggle-set-region, M-s M-SPCআইকন টোগল অপশন চলাকালীন আবদ্ধ isearchp-set-region-flag

  • কমান্ড set-region-around-search-targetম্যানুয়ালি অঞ্চলটিকে শেষ সন্ধানের লক্ষ্য নির্ধারণ করে। (সুতরাং বিকল্পটি সেট না করা থাকলেও আপনি স্বয়ংক্রিয় নির্বাচন না পেয়ে আপনি নিজেই এটি করতে পারেন))


লাইব্রেরি রিপ্লেস + আপনাকে ইত্যাদির জন্য একই জিনিস করতে query-replaceদেয় এটি অঞ্চলটিকে শেষ প্রতিস্থাপনের (যেমন নির্বাচন করে) রাখে। এটি isearchp-set-region-flagনিয়ন্ত্রণ করতে একই বিকল্প ব্যবহার করে , এবং আদেশের set-region-around-search-targetএকই প্রভাব রয়েছে effect

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