ইমাস ডেস্কটপ-সেভ-মোড - কেবলমাত্র ডেস্কটপ সংরক্ষণ করুন যখন পূর্ববর্তী ডেস্কটপ পুরোপুরি পুনরুদ্ধার করা হয়েছিল


11

আমার মধ্যে নিম্নলিখিত রয়েছে .emacs:

(desktop-save-mode 1)
(setq desktop-restore-eager 10)
(setq desktop-save t)

প্রায়শই আমার প্রচুর বাফার খোলা থাকে (100 বা তাই), তখন এটি সত্যিই সহায়তা করে - যেহেতু ইম্যাকস কেবল তখন অন্য কিছু নিয়ে ব্যস্ত না হয়েই বাফারগুলি লোড করে।

এখন, কখনও কখনও নিম্নলিখিত বিষয়গুলি ঘটে: আমি আমার ল্যাপটপটি বন্ধ করতে ইচ্ছুক হওয়ার আগে ইম্যাকগুলি বন্ধ করে দিই। তারপরে আমি বুঝতে পারি - আমাকে আরও একটি ফাইল দ্রুত সম্পাদনা করতে হবে - তাই আমি আবার ইমাস খুলব, সম্পাদনা সম্পাদনা করব এবং তারপরে এটি বন্ধ করব। যদি অল্প সময়ের মধ্যে এটি ঘটে থাকে তবে desktop-save-modeপূর্ববর্তী সমস্ত সংরক্ষিত বাফারগুলি পুনরুদ্ধার করতে সক্ষম ছিল না। এই ক্ষেত্রে, আমি এখন আবার ইমাসগুলি বন্ধ করে দিলে কেবল পুনরায় পুনরুদ্ধার করা বাফারগুলি সংরক্ষণ করা হবে এবং প্রাথমিক শাটডাউনটি হারিয়ে যাওয়ার আগে রাষ্ট্রটি সংরক্ষণ করা হবে।

desktop-saveযদি পূর্বের সংরক্ষিত ডেস্কটপ পুরোপুরি পুনরুদ্ধার করা হয়ে থাকে তবে কেবল একটাই ঘটানোর কোনও উপায় আছে কি ?

উত্তর:


3

একটা হুক আপনি ব্যবহার করতে পারেন আছে: desktop-after-read-hook। ডেস্কটপ স্থিতি পুনরুদ্ধার করার পরে একটি পরিবর্তনশীল সেট করতে একটি ফাংশন যুক্ত করুন। defadviceআশেপাশে ব্যবহার করে desktop-save, রাষ্ট্রটি সংরক্ষণের আগে ভেরিয়েবল সেট করা আছে কিনা তা পরীক্ষা করে দেখুন।

আমি ইম্যাক্স 25.3.1 এ আছি এবং এটি কোডটি আমি ব্যবহার করেছি:

(defvar *my-desktop-save* nil
  "Should I save the desktop when Emacs is shutting down?")

(add-hook 'desktop-after-read-hook
          (lambda () (setq *my-desktop-save* t)))

(advice-add 'desktop-save :around
            (lambda (fn &rest args)
              (if (bound-and-true-p *my-desktop-save*)
                  (apply fn args))))

এটি আপনার যুক্ত করুন .emacsএবং এটি পুনরায় চালু করুন।


হাই ধন্যবাদ, এটি অবশ্যই কৌশলটি করা উচিত। তবে আমার ইমাস লিস্প দক্ষতা কিছুটা সীমিত। আপনি সম্ভবত এমন একটি লিস্প স্নিপেট অন্তর্ভুক্ত করার জন্য নিজের উত্তরটি বাড়িয়ে দিতে পারেন যা থেকে আমি পরীক্ষা শুরু করতে পারি ....
ক্রিশ্চিয়ান হেরেনজ

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