এই সমাধানটির কোনও পরিবর্তন init.el
(ছোটখাট পরিবর্তন সহ) দরকার নেই । এর মধ্যে ফাইল-স্থানীয় মূল্যায়ন জড়িত - তবে ওপি যা চেয়েছিল ঠিক তাই। সমাধানের সুবিধাগুলি হ'ল:
- কোডটি মূল্যায়নের জন্য নিশ্চিতকরণের জন্য জিজ্ঞাসা করে
- এলিএসপ কোডটি org-বাবেল পরিবেশের মধ্যে সম্পাদিত ও পরীক্ষা করা যেতে পারে
- সমাধানটি
init.el
orgmode ফাইলটিতে পরিবর্তনের প্রয়োজন হয় না কারণ (বিশ্বস্ত) ব্যবহারকারীদের মধ্যে ভাগ করা যেতে পারে
আমি সমাধানটি এখানে পুনরায় চাপিয়ে দিচ্ছি।
আপনার ফাইলের কোথাও একটি সিআরসি-ব্লক যুক্ত করুন:
#+NAME: startup
#+BEGIN_SRC emacs-lisp
(your-code-here)
#+END_SRC
তারপরে, এটি আপনার অরগমোড-ফাইলের শেষে রাখুন:
# Local Variables:
# eval: (progn (org-babel-goto-named-src-block "startup") (org-babel-execute-src-block) (outline-hide-sublevels 1))
# End:
আমি যুক্ত করেছি (outline-hide-sublevels 1)
কারণ আমি শিরোনামের ভিতরে এসআরসি-ব্লকটি আড়াল করতে চাই এবং শুরুতে সাবলেভেলগুলি লুকিয়ে রাখতে চাই hidden এই বিবৃতি ব্যতীত, sublevels দ্বারা প্রসারিত হবে (org-babel-goto-named-src-block "startup")
।
এই সমাধানের সাহায্যে ইমাকগুলি কার্যকর করার জন্য 2 বার জিজ্ঞাসা করবে (1 ম: স্থানীয় ভেরিয়েবল প্রয়োগ করুন; 2 য়: "স্টার্টআপ" -এসসিআর-ব্লক কার্যকর করুন)। আমার ফাইলে যেহেতু অনেকগুলি সিআরসি-ব্লক রয়েছে, আমি অন্য একটি ফাইল-লোকাল-ভেরিয়েবল সেট করেছি org-confirm-babel-evaluate
, যেমন:
# Local Variables:
# org-confirm-babel-evaluate: nil
# eval: (progn (org-babel-goto-named-src-block "startup") (org-babel-execute-src-block) (outline-hide-sublevels 1))
# End:
সতর্কতা: এই সংযোজনের সাথে, ইম্যাকগুলি কেবল একবার মৃত্যুদন্ড কার্যকর করার অনুমতি চেয়ে জিজ্ঞাসা করবে - সেই ফাইলের সমস্ত এসসিআর-ব্লক এখন আরও নিশ্চিতকরণ ছাড়াই কার্যকর করা হতে পারে। অন্যরা যেমন আগে উল্লেখ করেছে, এই আচরণটি বিপজ্জনক হতে পারে এবং আপনার এই সেটিংটি সম্পর্কে খুব সতর্ক হওয়া উচিত।
যাইহোক, আমি যুক্তি দিয়েছি যে জো কার্নেলির দেওয়া সমাধানের চেয়ে এই সমাধানটি (বিশেষত প্রথম সংস্করণ) আরও সুরক্ষিত কারণ কমপক্ষে আপনাকে সম্পাদন করার জন্য নিশ্চিতকরণের জন্য বলা হবে । জো এর সমাধানটি যদি ফাইলটিতে পাওয়া যায় তবে তা নিশ্চিত না করেই বিশেষ ব্লকের মূল্যায়ন করবে। একজন আক্রমণকারীকে অবশ্যই বিশেষ ব্লকের নামটি অনুমান করতে হবে, অবশ্যই ...
আমি এই পদ্ধতিকে বড় ডকুমেন্টগুলি লিখতে ব্যবহার করছি যা যেমন org- এক্সপোর্ট পদ্ধতিতে অভিযোজন প্রয়োজন।