সম্প্রতি শিখার পরে use-packageআমি এটিতে আমার কনফিগারেশনটি পোর্ট করার সিদ্ধান্ত নিয়েছি কিন্তু package.elপ্যাকেজ ইনস্টল করতে এবং সেগুলি আপডেট রাখতে ব্যবহার করার সুবিধামত ছাড়তে নিজেকে অনিচ্ছুক বলে মনে করি । আমি এটা একটু একত্রিত চতুর পেয়েছি use-packageএবং package.el।
আমি সাধারণত সিস্টেমের use-packageসাথে লোকেরা কীভাবে একত্রিত হয় তা শিখতে আগ্রহী package.el, তবে আরও নির্দিষ্ট প্রশ্নের জন্য, পড়া চালিয়ে যান।
আমি যা চাই তা এখানে:
- প্যাকেজ ম্যানেজার দ্বারা প্যাকেজ ইনস্টল করা যাতে আমি সহজেই প্যাকেজগুলির জন্য ব্রাউজ করতে পারি এবং সেগুলি আপডেট করে রাখতে পারি
list-packages। - একচেটিয়াভাবে প্যাকেজগুলি কনফিগার করতে এবং লোড করতে
use-package, যাতে আমি সহজেই আমার আর ডি ফাইলে দেখতে পাচ্ছি যে আমি কী লোড করছি এবং এটি কীভাবে কনফিগার করা হয়েছে। - বৈকল্পিকভাবে, আমিও মাধ্যমে প্যাকেজ ইনস্টল করতে পারবেন হতে চাই
use-package'র:ensureশব্দ।
আমি যদি সঠিকভাবে বুঝতে পারি তবে আমি যা করি তার খুব কমই চাই package-initialize, মূলত এটি যেভাবে সেট আপ করে load-path। বর্তমানে আমার কনফিগারেশনে এটি রয়েছে:
;(package-initialize)
(setq package-enable-at-startup nil)
(let ((default-directory "~/.emacs.d/elpa"))
(normal-top-level-add-subdirs-to-load-path))
(require 'use-package)
প্রথমটি, মন্তব্য করা হয়েছে, রেখাটি তাই ইমাস 25 (package-initialize)আমার সহায়ক ফাইলটিতে সহায়কভাবে যোগ করে না । সঙ্গে বিট normal-top-level-add-subdirs-to-load-pathকি প্রায় সঠিক পরিমাপ package-initializeকরতে হবে load-path, একটি পড়তা যথেষ্ট মনে হচ্ছে যে।
এই যদি আমি ব্যবহার করার চেষ্টা আমার ইচ্ছেগুলোর 1 এবং 2, কিন্তু না 3. অর্জন বলে মনে হয় :ensure, আমি এই বলে যে একটি ত্রুটির বার্তা পেতে package.elসক্রিয়া করা হয় না। কলিং package-initializeএটির সমাধান করে দেবে, তবে আমি এগুলি এড়াতে চাই all ক) আমি চাই না যে সমস্ত অগণিত অটোল্যাড লোড করা হোক (আমি use-packageআমার প্রয়োজনের সাথে অটোলোডগুলি তৈরি করতে অবশ্যই পছন্দ করি), এবং খ) আমি সহজেই সক্ষম হতে চাই আমি যখনই চাই নির্দিষ্ট কিছু ইনস্টল করা প্যাকেজ লোড করা এড়াতে (যা করা সহজ use-package)।
কীভাবে এটি করবেন তার জন্য কারও কাছে সুপারিশ রয়েছে?
package-initializeঝুঁকছি যা আমার প্রশ্নটিকে বাতলে দেয়।