সমস্ত প্রকল্পের ফাইলগুলিতে হেল্প ছড়িয়ে পড়ে (কেবলমাত্র বর্তমান বাফারগুলি নয়)


15

সুতরাং আমি কেবলমাত্র ওপেন বাফারগুলির বর্তমান সেটটি নয়, একটি প্রকল্পের সমস্ত ফাইলগুলিতে helm-swoopনজর রাখছি ।

এটি তাই আমি কোনও প্রকল্পে সমস্ত উপস্থিতি সন্ধান করতে ব্যবহার করতে পারি, প্রাসঙ্গিকগুলিকে চিহ্নিত করতে পারি, তারপরে সেগুলি সম্পাদনা করতে পারি (হেল্ম স্যুপস এডিট মোডে)।

আমি অনুভব করেছি যে হেলম / হেলম চেঁচামেচি করে এটি করার সম্ভবত একটি পরিষ্কার উপায় আছে তবে সমাধানের মাধ্যমে চিন্তা করার আমার চেষ্টা এখানে রয়েছে:

  1. প্রক্ষেপণ থেকে ফাইলের নাম সংগ্রহ করুন
  2. ফাইলের নাম তালিকা থেকে বাফারগুলির একটি তালিকা তৈরি করুন
  3. এই নতুন বাফার তালিকাটি ব্যবহারের পাশাপাশি হেলম-মাল্টি-সোয়ুপ-অল হিসাবে একই রুটিনটি করুন

(projectile-current-project-files), দেখে মনে হচ্ছে এটি আমাকে ফাইল তালিকা দেয় যা আমি সন্ধান করছি।

সুতরাং helm-multi-swoop-all, দেখে মনে হচ্ছে এটি অনুলিপি করা এবং তারপরে টুইঙ্ক করা মোটামুটি সহজ।

(defun helm-multi-swoop-all (&optional $query)
  (interactive)
  "Apply all buffers to helm-multi-swoop"
  (cond ($query
         (setq helm-multi-swoop-query $query))
        (mark-active
         (let (($st (buffer-substring-no-properties
                     (region-beginning) (region-end))))
           (if (string-match "\n" $st)
               (message "Multi line region is not allowed")
             (setq helm-multi-swoop-query
                   (helm-swoop-pre-input-optimize $st)))))
        ((setq helm-multi-swoop-query
               (helm-swoop-pre-input-optimize
                (funcall helm-swoop-pre-input-function))))
        (t (setq helm-multi-swoop-query "")))
  (helm-multi-swoop--exec nil
                          :$query helm-multi-swoop-query
                          :$buflist (helm-multi-swoop--get-buffer-list)))

helm-multi-swoop--get-buffer-listপ্রজেক্টিলেস তালিকা ব্যবহার করে বাফারগুলির একটি তালিকা সরবরাহ করে এমন একটিতে কেবল কলটি প্রতিস্থাপন করুন ।

তবে এখন আমি কিছুটা আটকে গেছি। আমি নিশ্চিত নই যে ফাইলের নামের একটি সেট থেকে হেলম-স্যুপে ফিড দেওয়ার জন্য বাফারগুলির একটি তালিকা কীভাবে তৈরি করা যায়।

আমি সহায়তা করতে পারি না তবে মনে করি এটি অর্জনের সহজ উপায় আছে, কাস্টম ফাংশন ছাড়াই।


1
এটি সম্ভাব্য সমস্যাযুক্ত। মনে করুন আপনি "এবিসি" এর জন্য একটি বৃহত প্রকল্প দখল করতে চান। আপনি যে একক ফাইলের পূর্বরূপ দেখুন তার জন্য কি কোনও ফাইল বাফার খুলতে চান? আপনি চান না এমন দশ বা কুড়িটি অতিরিক্ত বাফার দিয়ে আপনি শেষ করতে পারেন। আমি helm-projectile-ackপরিবর্তে ব্যবহার করার পরামর্শ দিই ।
পাইথননট

2
হ্যাঁ, আমি এটি কোনও বড় প্রকল্পের জন্য ব্যবহার করার কথা ভাবছিলাম না। আমিও এই রুটিনটি শেষ করার পরে খোলা ফাইল বাফারগুলি বন্ধ করার আশা করছিলাম।
মাইক ম্যাকফারল্যান্ড

এছাড়াও, হেলম-প্রজেটাইল-অ্যাক (বা এগ্রি) প্রায় আমি যা খুঁজছি তা হল, আমি লাইনগুলি সম্পাদনা করতে সক্ষম হ'তে চাইলে (হেলম স্যুপ যেমন অনুমতি দেয়)
মাইক ম্যাকফারল্যান্ড

আমি আসলে ব্যবহার করবেন না helm-swoop। একটি করছেন না helm-projectile-grepএবং তারপর F3 M-x wgrep-modeএটি "সম্পাদনাযোগ্য" করা?
পাইথননট

ধন্যবাদ, আমি wgrep- মোড সম্পর্কে সচেতন ছিলাম না। হেলম-প্রজেক্টাইল-গ্রেপ আমার জন্য উপেক্ষা করা ফাইলগুলি তুলছে তবে হেল্ম-প্রজেক্টাইল-অ্যাক ডাব্লুগ্রাইপ দিয়ে ভাল কাজ করছে। কমপক্ষে এটি melpa থেকে আসা wgrep আনইনস্টল করার পরে এবং তার পরিবর্তে এখানে একটি ব্যবহার করার পরে এটির কাজ করছে ।
মাইক ম্যাকফারল্যান্ড

উত্তর:


7

PythonNut থেকে আকর্ষণীয় মন্তব্য পর আমি ইনস্টল helm-ag, এবং দৌড়ে helm-projectile-agথেকে প্রজেক্টাইল মাধ্যমে প্যাকেজ C-c p s s। আমি তখন এডিটিং মোডের সাথে স্যুইচ করেছি C-c C-e। আমি কয়েকটি লাইন পরিবর্তন করেছি এবং তারপরে চাপলাম C-c C-cএবং এগুলি প্রাসঙ্গিক ফাইলগুলিতে সংরক্ষণ করা হয়েছে।

এটি কাজ করে, তবে বর্তমানে একটি অনভিজ্ঞতা হ'ল এটি পরিবর্তন হয়েছে কিনা তা নির্বিশেষে প্রতিটি "মিলিত" ফাইলগুলির একাধিকবার সংরক্ষণ করে। আমি এটি # 756 হিসাবে অনুমান হিসাবে উত্থাপিত ।

এগুলি ছাড়াও আমি মনে করি যে এটি প্রশ্নের মধ্যে বর্ণিত প্রয়োজনের জন্য এবং "কাস্টম ফাংশন ছাড়াই" :-) জন্য ভাল কাজ করবে


এটি আসলে আমি পাশাপাশি স্থির করেছি। আমার একমাত্র সমস্যাটি হ'ল কখনও কখনও এট অনুসন্ধানের ফলাফলগুলিতে গিট / প্রজেটাইল দ্বারা উপেক্ষা করা ফাইলগুলি উপেক্ষা করা হয় না। এটি খননের সময় হয়নি।
মাইক ম্যাকফারল্যান্ড

টিপ: helm-git-grepদ্রুত হওয়া উচিতhelm-projectile-ag
প্লেগহ্যামার

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