~ / .Emacs এর পরিবর্তে। / .Emacs.d / init.el ব্যবহারের কোনও সুবিধা আছে কি?


108

আমি সাধারণত ~/.emacsআমার কনফিগারেশন ফাইলের জন্য ব্যবহার করেছি তবে আমি অন্যকে ব্যবহার করার বিষয়টি লক্ষ্য করেছি ~/.emacs.d/init.elinit.elঅবস্থানের সুবিধা আছে ? কোন অসুবিধা?


4
ইমাস (বা কমপক্ষে কয়েকটি ইমাসের কিছু সংস্করণ) স্বয়ংক্রিয়ভাবে .emacs এ স্টাফ লিখে।
ভিভি

4
@ ভিভি আপনি খুব পুরানো সংস্করণ সম্পর্কে কথা না বললে ইমাসগুলি এতে লিখিত থাকে user-init-file। এটি .emacsযদি আপনার ইতিমধ্যে একটি থাকে .emacsএবং init.elআপনি যদি পরিবর্তে এটি ব্যবহার করেন তবে এটি হবে।
র‌্যাডন রোসবারো

লোকেরা ~/.emacs.d/init.elঅসুবিধাগুলি উপেক্ষা করার সুবিধার দিকে মনোনিবেশ করেছিল। আমি সেই অংশটির উত্তর দেব: এর কোনও অসুবিধা নেই!
ওমর

Tangentially, রিলিজ সংস্করণ 27.1 এ গিয়ে Emacs থেকে শুরু XDG কনফিগ পথ পছন্দ করা হবে ~/.config/emacs/উপর ~/.emacs.d/। আইআইইউসি, যদি প্রাক্তন উপস্থিত থাকে তবে পরবর্তীটির দিকে তাকাতে হবে না।
ফিল্স

উত্তর:


103

হ্যাঁ সেখানে. রেডডিতে লুনারিয়নের উদ্ধৃতি :

  • এটি $HOMEডিরেক্টরিটি নিরবচ্ছিন্ন রাখে , কারণ সমস্ত ইমাসের ফাইল খুব সহজেই একটি ডিরেক্টরিতে থাকে are একই কারণে, সমস্ত আধুনিক ইমাস প্যাকেজগুলি তাদের ক্যাশে, ইতিহাস ইত্যাদি লিখে দেয় ~/.emacs.d/

  • এটি সংস্করণ নিয়ন্ত্রণটিকে আরও সহজ করে তোলে, বিশেষত যদি আপনি নিজের init.el কে বিভিন্ন ফাইলগুলিতে বিভক্ত করেন ~/.emacs.d। আপনি কেবল init.elপ্রতিটি অন্যান্য ফাইলের মতো প্রতিশ্রুতিবদ্ধ করতে পারেন এবং git clone /my/emacs/config.git ~/.emacs.dএকটি নতুন সিস্টেমে কোনও ফাইলকে লিঙ্ক না করেই আপনাকে সমস্ত ইমাস্যাক্স কনফিগারেশন দেয় $HOME


3
এটি কীভাবে সংস্করণ নিয়ন্ত্রণ সহজ করে? আপনি নিজের init ফাইলটি ব্যবহার না করে বিভক্ত করতে পারেন .emacs.d
গিলস

3
যদি আপনার কাছে কেবল .emacs ফাইল থাকে তবে এটি সংস্করণ নিয়ন্ত্রণটিকে সহজ করে না, তবে আপনার যদি .emacs.d এ অন্যান্য ইমাস ফাইল থাকে তবে তা করে। উদাহরণস্বরূপ, custom.emacs.d এ ফাইলগুলি সংরক্ষণ করে এবং আপনি যদি ডি.ইল.ইলগুলি তাদের সমস্ত সংস্করণে নিয়ন্ত্রিত থাকেন তবে ইম্যাক্স ফাইলগুলি একটি ডিরেক্টরিতে থাকে।
টেড রডেন

4
আপনার .emacs.d / ডিরেক্টরিটিকে পুরোপুরি সংস্করণ করে, আপনি প্যাকেজ.এল (ইএলপিএ, মেলপা ...) এর মাধ্যমে ইনস্টল করা প্যাকেজগুলি সংস্করণ নিয়ন্ত্রণে রাখতে পারেন। একাধিক কম্পিউটারের মধ্যে আপনার কনফিগারেশনটি ভাগ করে নেওয়া এবং আপনার কনফিগারেশনে কোথায় একটি রিগ্রেশন প্রবর্তিত হয়েছিল তা সন্ধান করা সহজ করে তোলে (আপনি নিজের নির্ভরতাগুলি সন্ধান করেন)। খারাপ দিকটি এটি একটি দুর্দান্ত ভারী সংগ্রহশালা তৈরি করে।
tuxella

11
সংস্করণ নিয়ন্ত্রণ সিস্টেমগুলি কেবল একটি ফাইল সংস্করণ করে না - তারা একটি ফোল্ডার সংস্করণ করতে চায়। সুতরাং আপনি সংস্করণ ~/, এবং আপনার যুক্ত করুন .emacs। তবে এখন, আপনাকে অবশ্যই নিশ্চিত করতে হবে যে আপনি অন্য কোনও ফাইল প্রতিশ্রুতিবদ্ধ করছেন না, সুতরাং আপনি .hgignore বা .gitignore প্রতি অন্য ফাইলটিতে থাকবেন ~/। তবে এখন আপনি ~/যেমন ~/.bashrcবা তেমন অন্য কোনও ফাইল ট্র্যাক করতে পারবেন না ~/.bash_aliases
zck

সম্পর্কিত: github.com/RichiH/vcsh
wchargin

37

একটি অতিরিক্ত সুবিধা: যদি সমস্ত কিছু থাকে তবে .emacs.dআপনি নিজের ইমাস কনফিগারেশনটি ড্রপবক্সে রাখতে পারেন (বা বিকল্প) এবং পুরো কনফিগারেশনটি আপনার হোম ডিরেক্টরিতে সিমিলিং করতে পারেন। এটি কম্পিউটারগুলিতে সিঙ্ককে তুচ্ছ করে তোলে।


25

যদি আপনি শুধু গিয়ে Emacs সেট আপ করার প্রয়োজন উপায় আপনার মত একটি Init ফাইল, এটি একটি পার্থক্য এটা যদি দেখা যায় না ~/.emacsবা ~/.emacs.d/init.el। তবে আপনি যখন আপনার init ফাইলটি বিভক্ত করা শুরু করবেন বা উদাহরণস্বরূপ একটি ক্যাস্ক ফাইল ইমাক্স-সম্পর্কিত কনফিগারেশন যুক্ত করবেন তখনই ডিরেক্টরি তৈরি করা অর্থবোধক হয়ে যায়। এছাড়াও, এটি সেই জায়গা যেখানে আপনি সংক্ষিপ্ত সংজ্ঞা, কাস্টম বিকল্পগুলির জন্য ফাইল ( M-x customize) ইত্যাদি সংরক্ষণ করবেন with

সব কিছু ঝরঝরে করে রাখা ~/.emacs.d


6

ইমাকস 27 একটি নতুন সূচনা ফাইলটি নামকরণ করবে , যার early-init-fileঅধীনে । তাই ব্যবহার করার আরও সুবিধা পরিবর্তে জন্য যে সাবেক একই ছাদের নিচে উভয় initialisation ফাইল স্থাপন করবে দৃঢ়তা জন্য হয়।user-emacs-directory~/.emacs.d/early-init.el~/.emacs.d/init.el~/.emacsuser-init-file

ইমাস 27 টি প্রকাশ না হওয়া অবধি আপনি ইমাসস উত্স গাছের নিম্নলিখিত ফাইলগুলিতে এই নতুন বৈশিষ্ট্যের জন্য ডকুমেন্টেশনটি খুঁজে পেতে পারেন:


2

এটি গতির ক্ষেত্রে সত্যই কোনও পার্থক্য করে কিনা তা নিশ্চিত নন, তবে আপনার কনফিগারেশনটি (যেমন তৈরি করা ) থাকলে আপনি আরও সহজেই সেটআপটি বাইট-কম্পাইল করতে পারবেন.emacs.d/init.el.emacs.d/init.elc


1
নোট এটি ~/.emacs.elএকটি বৈধ init ফাইল নামও।
ফিল্ডস

1

আপনি অন্য কিছু প্রোগ্রাম / প্লাগইন .emacs সন্ধান করার প্রত্যাশার ক্ষেত্রে কেবল ~/.emacs.d/init.elসেই ফাইলটি ব্যবহার করেন এবং কেবল সেই ফাইলটি ~/.emacsসিমলিংক করেন।

ম্যাকোস বা জিএনইউ / লিনাক্স সিস্টেমে কমান্ডটি হ'ল:

ln -s ~/.emacs.d/init.el ~/.emacs

এইভাবে আপনি আপনার ~/emacs.dডিরেক্টরি কাঠামোর ভিসির সমস্ত সুবিধা পাবেন এবং আপনি যখন ~/.emacsটাইপ না করে init.el ফাইলটি সম্পাদনা করতে হবে তখন আপনি একটি সংক্ষিপ্ত নাম ব্যবহার করতে সক্ষম হবেন ~/emacs.d/init.el👍


এই রহস্যময় "অন্যান্য প্রোগ্রাম / প্লাগিনগুলি" কী যা ".emacs সন্ধানের প্রত্যাশা করে"? আমি মনে করি না যে এটি সত্যিকারের উদ্বেগ।
ফিল্স

1
একটি উদাহরণ কুইললিপ হতে পারে, আপনি যদি একটি (ql: অ্যাড-টু-আর-
ডি

কত কৌতূহল। আমি বলব যে এ জাতীয় কোনও সমস্যা ত্রুটির প্রতিবেদনগুলির জন্য ওয়ারেন্ট করবে - ইমাকস দীর্ঘ সময় ধরে বিভিন্ন ধরণের ফাইল নামকে সমর্থন করেছে এবং অগ্রাধিকার ক্রমটি স্পষ্টভাবে নথিভুক্ত রয়েছে, সুতরাং অন্যান্য প্রোগ্রামের সেই অধিকারটি না পাওয়ার কোনও ভাল কারণ নেই there's । আমি মোটেও একটি বাস্তব উদাহরণের প্রত্যাশা করছিলাম না, যদিও :) চিয়ার্স।
ফিল্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.