আরেকটি বিকল্প হ'ল জন উইগলির ব্যবহার-প্যাকেজটি ব্যবহার করা । এটি ইম্যাক্স 24+ প্যাকেজ আরম্ভের প্রক্রিয়াটির সাথে দুর্দান্তভাবে প্যাকেজগুলি কনফিগার করার জন্য একটি প্রোগ্রামিক পদ্ধতি সরবরাহ করে। এখানে রিডমি থেকে ব্যবহারের একটি উদাহরণ:
(use-package color-moccur
:commands (isearch-moccur isearch-all)
:bind (("M-s O" . moccur)
:map isearch-mode-map
("M-o" . isearch-moccur)
("M-O" . isearch-moccur-all))
:custom (isearch-lazy-highlight t)
:config (use-package moccur-edit))
মুল বক্তব্যটি হ'ল ব্যবহারের প্যাকেজটি একটি ম্যাক্রো এবং তাত্ক্ষণিকভাবে তার যুক্তিগুলি মূল্যায়ন করে না। :initএবং :configপরামিতি আরম্ভের প্রক্রিয়া বিভিন্ন পর্যায়ে মূল্যায়ন করা হয়, এটা সম্ভব একটি স্থানে প্রতিটি প্যাকেজ কনফিগারেশন আছে, কিন্তু প্রতিটি অংশ আরম্ভের যথাযথ পর্যায়ে চালানো আছে আরও সহজ করে।
use-packageকিছু প্যাকেজগুলির মতো কিছু ছাড়াই তাদের প্রারম্ভিককরণের কোডের কিছু (package-initialize)অংশ আগে যেতে হয় এবং অন্য অংশটি পরে যেতে হয়। আপনার যদি এমন অনেক প্যাকগেগা থাকে তবে থায়ার সূচনাটি আন্তঃলিপি করতে হবে।
এর আরেকটি সুবিধা use-packageহ'ল এটি যদি প্যাকেজ.ইলটি ব্যবহার করে স্বয়ংক্রিয়ভাবে অনুপস্থিত প্যাকেজগুলি ইনস্টল করতে পারে আপনি যদি নতুন মেশিনে .emacs নিয়ে যান বা যদি আপনি অন্য কোনও ব্যবহারকারীর সাথে আপনার কনফিগারেশনটি ভাগ করে নেন এবং প্যাকেজটি লোড হওয়ার প্রয়োজন না হয় ততক্ষণ পর্যন্ত সমস্ত সূচনা স্থগিত করা যেতে পারে।
এছাড়াও অতিরিক্ত কীওয়ার্ড আর্গুমেন্ট রয়েছে যা সূচনা প্রক্রিয়াতে আরও নিয়ন্ত্রণের অনুমতি দেয়।
যা যা বলেছিল, কাস্টমাইজ করার একটি বড় সুবিধা হ'ল এটি আপনাকে কোনও প্যাকেজে কনফিগার করার দরকার তা দেখায়। আমি এখনও আমার প্যাকেজগুলির অনেকের জন্য এটি ব্যবহার করার একটি কারণ।