কখনও কখনও আমার বাফার তালিকায় 10+ ডায়ার্ড উইন্ডো থাকে এবং আমি buffer-menu
নিজেই চিহ্নিত করে এবং সেগুলি সমস্তকে হত্যা করে। সমস্ত উন্মুক্ত ডায়ার্ড উইন্ডো বন্ধ করার কোন দ্রুত উপায় আছে?
কখনও কখনও আমার বাফার তালিকায় 10+ ডায়ার্ড উইন্ডো থাকে এবং আমি buffer-menu
নিজেই চিহ্নিত করে এবং সেগুলি সমস্তকে হত্যা করে। সমস্ত উন্মুক্ত ডায়ার্ড উইন্ডো বন্ধ করার কোন দ্রুত উপায় আছে?
উত্তর:
আপনি নিম্নলিখিত করতে পারেন:
M-x
ibuffer
* /
ক্লান্ত মোডে বাফারগুলি চিহ্নিত করতে।
D
তাদের মুছতে।
C-x C-b
করার ibuffer
।
t
( dired-toggle-marks
) টিপুন ( যদি কোনওটি আগে চিহ্নিত না করা হত) can
dired-toggle-marks
নাম dired কমান্ড। টিপলে t
হবে ibuffer সমস্ত চিহ্ন, কিন্তু সাধারণত dired বাফার দলে ভারি হওয়া অ dired বাফার টগল এছাড়াও, তাই টগল করা প্রায়ই এই প্রেক্ষাপটে অর্থে দেখা যায় না।
সমস্ত dired
বাফারকে মেরে ফাংশন যুক্ত করার পরিবর্তে , আমি আপনাকে ফিল্টার গ্রুপগুলির সুবিধা নেওয়ার পরামর্শ দিচ্ছি ibuffer
, এটি আপনাকে অনেক শর্তে বাফার গ্রুপ করতে দেয়।
ফিল্টার গ্রুপ সেট করার জন্য এখানে একটি উদাহরণ রয়েছে:
(setq-default ibuffer-saved-filter-groups
`(("Default"
;; I create a group call Dired, which contains all buffer in dired-mode
("Dired" (mode . dired-mode))
("Temporary" (name . "\*.*\*"))
)))
তারপর C-x C-b
খোলা ibuffer
জানালা, আপনি ভালো কিছু দেখতে পারেন:
কার্সারটিকে [ Dired ]
(সহ M-p
, M-n
) এ সরান , তারপরে d
মুছে ফেলা হিসাবে চিহ্নিত করতে টিপুন
তারপরে x
মৃত্যুদন্ড কার্যকর করতে টিপুন ।
আমি এই উপায়ে পছন্দ করি কারণ নতুন ফাংশনের সাথে কীভাবে আমার কীটি আবদ্ধ করা উচিত সে সম্পর্কে আমার চিন্তা করার দরকার নেই এবং আমার বাফারগুলি আরও সুসংহত।
ibuffer
আপনার কোডটি মূল্যায়নের পরে প্রথম চালু করেছি তখন ফিল্টার গোষ্ঠীগুলি আমার জন্য প্রদর্শন করে না । গ্রুপগুলি পেতে আমাকে আঘাত করতে হয়েছিল / R
(আবদ্ধ ibuffer-switch-to-saved-filter-groups
)।
(ibuffer-switch-to-saved-filter-groups "Default")
আপনি এই লাইন কোডটিকে আইফুফ হুকের সাথে যুক্ত করতে পারেন, ফিল্টার গ্রুপের নামটি যদি তা না হয় তবে তা পরিবর্তন করা উচিতDefault
আপনি কি এক পর্যায়ে সমস্ত চেয়েছিলেন বলে আপনার অনেকগুলি ডায়ার্ড বাফার রয়েছে ? IOW, আপনি কি তাদের প্রত্যেককে আলাদা আলাদা বাফার হিসাবে তৈরি করতে চান ?
যদি তা না হয় তবে সমাধানটি সহজ: ডায়ার্ডকেRET
কোনও ডিরেক্টরি নাম খোলার জন্য ডায়ার্ডে খোলার সময় কোনও বিদ্যমান ডায়ার্ড বাফার পুনরায় ব্যবহার করতে বলুন ।
এটি কীভাবে করা যায় তা এখানে:
লোড লাইব্রেরিযুক্ত + ( dired+.el
):
(require 'dired+)
ডায়ার্ডকে ডায়ার্ড বাফারগুলি পুনরায় ব্যবহার করতে বলুন:
(diredp-toggle-find-file-reuse-dir 1)
এর প্রভাবটি হ'ল আপনি যখন RET
ডায়ার্ডে কোনও ডিরেক্টরিতে হিট (বা মাউস ক্লিক করেন) find-alternate-file
ব্যবহার করেন, তাই মূল ডায়ার্ড বাফারটি নতুন দ্বারা প্রতিস্থাপন (মুছে ফেলা) করা হবে।
আপনি এই আচরণটি যে কোনও সময় টগল করতে পারেন, শুকিয়ে যাওয়া C-M-R
(ওরফে C-M-S-r
) ব্যবহার করে ।
আপনি এটি ব্যবহার করতে পারেন helm-mini
:
M-x helm-mini
।*Di
(এর জন্য আংশিক শব্দ Dired
, আরও প্রবেশ করার প্রয়োজন নেই)। আপনি টাইপ করার সাথে সাথে বাফারগুলি ক্রমবর্ধমান সংকীর্ণ হয়। এখন, কেবল Dired
বাফার বাকি আছে। M-a
সমস্ত চিহ্নিত করতে টিপুন ।TAB
কর্ম মেনু টিপুন স্যুইচ করতে K
কর্ম নির্বাচন করতে Kill buffer(s)
।RET
ক্রিয়াটি কার্যকর করতে টিপুন ।এর সাথে ভাল জিনিসটি helm-mini
হ'ল এটি সাধারণ ইমাকগুলি প্রতিস্থাপন করতে পারে C-x b
, সুতরাং আপনাকে দুটি কী বাইন্ডিং ব্যবহার করতে হবে না, একটি বাফার সুইচিংয়ের জন্য এবং একটি আসল বাফার পরিচালকের জন্য। helm-mini
সব-মধ্যে-এক। আমার হেলম-মিনি গাইডে আরও পড়ুন ।
helm-mini
এছাড়াও ঝাপসা ম্যাচ বাফার করতে পারেন এবং সঙ্গে চিহ্নিত করে খোলা একাধিক বাফার করার অনুমতি দেয় C-SPC
অথবা M-a
(জন্য দাঁড়ানো এম সিন্দুকটি একটি করব)। আপনি @
কোনও প্যাটার্নের আগে সংযুক্ত করে নির্দিষ্ট স্ট্রিং ধারণ করে বাফারে সংকীর্ণও করতে পারেন , উদাহরণস্বরূপ, @test
কেবলমাত্র বাফারগুলিতে "টেস্ট" স্ট্রিং থাকে তা নির্বাচন করুন।
আমি এই জাতীয় কিছু চেষ্টা করব:
(require 'dash)
(defun my-kill-dired-buffers ()
(interactive)
(kill-some-buffers
(-filter (lambda (buffer)
(save-excursion
(set-buffer buffer)
(eq major-mode 'dired-mode)))
(buffer-list))))
-filter
প্রয়োজনীয় dash.el
। আপনার সম্ভবত এটি প্রয়োজন হিসাবে তালিকাভুক্ত করা উচিত।
আপনি যদি আইকিকেল ব্যবহার করেন তবে আপনি C-x k
সমস্ত ডায়ার্ড বাফার - বা যে কোনও প্রদত্ত মোডে সমস্ত বাফারকে হত্যা করতে পারেন ।
আঘাত করার পরে C-x k
, C-x M +
একটি নির্দিষ্ট মোডের সাথে কেবল বাফারগুলি রাখতে ব্যবহার করুন। TAB
মোডগুলি দেখতে হিট করুন এবং চয়ন করুন dired-mode
। তারপরে সেই মোডের সাহায্যে সমস্ত বাফারকে C-!
মেরে ফেলুন।
C-x k C-x M + dired-mode C-!