कयामत Emacs एक वितरण है जिसका उद्देश्य Emacs के साथ आरंभ करने के लिए एक आसान और सुलभ तरीका बनाना है। प्रलेखन के सैकड़ों पृष्ठों के कारण इसके विभिन्न कार्यों का विवरण। Emacs, अपने आप में, कठिन हो सकता है।
यह पहले से परिचित उपयोगकर्ता और किताबी कीड़ा के लिए मददगार है। हालांकि, यह व्यावहारिक दृष्टिकोण किसी ऐसे व्यक्ति की मदद नहीं करता है जो इसे आज़माने में दिलचस्पी रखता है।
कयामत Emacs का उद्देश्य वसा को कम करना और Emacs के अनुभव को अपनी मुख्य शक्तियों से दूर करना है। यह उपयोगकर्ता को केवल बुनियादी चीजों को करने के लिए एक मैनुअल की लगातार जांच करने की आवश्यकता के बिना एक्स्टेंसिबिलिटी का उपयोग करने की अनुमति देता है। इसका परिणाम Emacs के एक संस्करण में होता है जिसे उपयोगकर्ता की आवश्यकताओं के अनुरूप आसानी से बदला और संशोधित किया जा सकता है।
कयामत Emacs स्थापित करना अपेक्षाकृत सरल है। हमें पहले से केवल तीन चीजें चाहिए:
- एक वेनिला Emacs 27.1 स्थापना
- रिपग्रेप
- गिट
Emacs और ripgrep इंस्टॉल करना
Emacs और ripgrep प्रमुख लिनक्स वितरण के लगभग हर भंडार में उपलब्ध हैं। उदाहरण के लिए, डेबियन और उबंटू 21.10 में Emacs और ripgrep को स्थापित करने के लिए आप apt
का उपयोग कर सकते हैं :
sudo apt install emacs-gtk ripgrep
आर्क लिनक्स के लिए, pacman
का उपयोग करें :
sudo pacman -Syu emacs ripgrep
फेडोरा में, dnf
. का प्रयोग करें :
sudo dnf install emacs ripgrep
Void Linux के लिए, xbps
का उपयोग करें :
sudo xbps-install emacs-gtk2 ripgrep
मेरे मामले में, मैं अपने Void Linux सिस्टम में Emacs और ripgrep इंस्टॉल कर रहा हूं।
यह ध्यान रखना महत्वपूर्ण है कि Emacs विभिन्न प्रकार के स्वादों में आता है। अधिकांश भाग के लिए, पैकेज प्रबंधक Emacs के उपयुक्त संस्करण को स्थापित करने के लिए चुनता है, लेकिन ऐसे दुर्लभ उदाहरण हैं जब यह प्रक्रिया विफल हो जाती है।
इसलिए, हमें उस संस्करण के बारे में पता होना चाहिए जिसे हम इंस्टॉल करते हैं। हम Emacs का एक संस्करण स्थापित करना चाह रहे हैं जो एक ग्राफिकल वातावरण में चल सकता है, हमें छोड़कर:
- X11
- GTK-2
- GTK-3
उसके बाद, हम Git की स्थापना के साथ आगे बढ़ सकते हैं।
Git इंस्टॉल करना
Doom Emacs को स्थापित करने के लिए, हमें इंटरनेट से रिमोट कोड रिपॉजिटरी प्राप्त करने की आवश्यकता है। ऐसा करने के लिए, गिट स्थापित करें। यह हमें कोड को तुरंत कॉपी करने और अधिक महत्वपूर्ण रूप से प्रमुख संस्करणों के बीच अपडेट करने की अनुमति देता है।
Emacs के समान, Git प्रत्येक Linux वितरण के लिए सामान्य है। इसे डेबियन और उबंटू में स्थापित करने के लिए, apt
. का उपयोग करें :
sudo apt install git
आर्क लिनक्स के लिए, pacman
का उपयोग करें :
sudo pacman -Syu git
फेडोरा के लिए, dnf
. का उपयोग करें :
sudo dnf install git
Void Linux में, xbps
का उपयोग करें :
sudo xbps-install git
मेरे मामले में, मैं शून्य लिनक्स में गिट स्थापित कर रहा हूं।
डूम Emacs इंस्टॉल करना
कयामत Emacs को स्थापित करने के लिए, हमें केवल कुछ कमांड चलाने की आवश्यकता है:
git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d
यह एक Git कमांड है जो हमारी मशीन के लिए Doom Emacs रिपॉजिटरी को प्राप्त करता है।
- द
clone
फ़ंक्शन का अर्थ है कि जब हम कमांड चलाते हैं तो हम नवीनतम रिपॉजिटरी की प्रतिलिपि बना रहे होते हैं। depth
विकल्प तब भंडार के इतिहास को भंडार के दो सबसे हाल के संस्करणों में काट देता है।
इस कमांड में, हम रिपॉजिटरी को डिफ़ॉल्ट Emacs कॉन्फ़िगरेशन निर्देशिका में भी सहेज रहे हैं। उसके कारण, हमें यह सुनिश्चित करने की आवश्यकता है कि यह कमांड टाइप करके निर्देशिका मौजूद नहीं है:
rm -rf /home/$USER/.emacs.d/
उसके बाद, हमें स्थापना शुरू करने की आवश्यकता है। हम निम्न कमांड टाइप करके ऐसा करते हैं:
/home/$USER/.emacs.d/bin/doom install
यह आदेश Emacs स्थापना के शीर्ष पर Doom Emacs स्थापित करता है।
पोस्ट-इंस्टॉलेशन कॉन्फ़िगरेशन
उसके बाद, कुछ और चीजें हैं जो हमें यह सुनिश्चित करने के लिए करने की आवश्यकता है कि हमारी स्थापना किसी भी समस्या में नहीं चलेगी।
सबसे पहले, "/home/$USER/.emacs.d/doom/bin/" निर्देशिका का पता लगाने के लिए PATH चर सेट करें। "/home/$USER/.profile" फ़ाइल में निम्न पंक्ति जोड़कर ऐसा करें:
export PATH=$PATH:$HOME/.emacs.d/doom/bin
यह कयामत के लिए बिन निर्देशिका को शामिल करने के लिए PATH चर को अद्यतन करेगा। उसके बाद, हमें केवल पर्यावरण चर को पुनः लोड करने के लिए वापस लॉग इन करना होगा।
यह जांचने के लिए कि क्या PATH चर "/home/$USER/.emacs.d/doom/bin" निर्देशिका का पता लगाता है, हमें कमांड चलाने की आवश्यकता है:
doom doctor
यह सुनिश्चित करता है कि स्थापना ठीक से की गई थी। यदि प्रक्रिया के दौरान कोई समस्या है, तो कयामत डॉक्टर फ़ंक्शन हमें बताएगा।
द डूम यूटिलिटी:डूम Emacs में आपका साथी
कयामत डॉक्टर कयामत उपयोगिता में उपलब्ध कार्यों में से एक है। यह मुख्य कार्यक्रम है जो हमें कयामत Emacs को संशोधित, अद्यतन और मरम्मत करने की अनुमति देता है।
जैसे, सबसे आम कार्यों के बारे में पता होना चाहिए:
doom doctor
हमारी प्रारंभिक स्थापना के साथ किसी भी विसंगतियों की जाँच करेगा। यह विशेष रूप से तब उपयोगी होता है जब हम कयामत Emacs का उपयोग करते समय समस्याओं का सामना करते हैं। यह संभावित त्रुटियों के लिए कयामत से संबंधित सभी निर्देशिकाओं और कॉन्फ़िगरेशन की जांच करेगा।doom upgrade
हमें अपनी स्थापना को दर्द रहित रूप से अपग्रेड करने की अनुमति देता है। यह रिपॉजिटरी में किसी भी अपडेट की जांच करेगा और हमारी कॉपी को नवीनतम के साथ सिंक्रोनाइज़ करेगा और संस्करणों के बीच माइग्रेशन को हैंडल करेगा। ऐसा करने के लिए, डूम अपग्रेड हमारे मौजूदा डूम कॉन्फ़िगरेशन को साफ़ करता है और अपग्रेड को चरणबद्ध करता है।doom purge
पुराने पैकेज और मॉड्यूल से संबंधित है जो हमारी स्थापना में स्थापित किए गए थे। जैसे, अगर हमने पैकेजों का एक गुच्छा हटा दिया है, तो यह सभी अप्रयुक्त निर्भरताओं को हटा देगा। इसमें मौजूदा रिपॉजिटरी को -g फ्लैग के साथ चलाकर कंप्रेस करने की क्षमता भी है।doom sync
हमें अपने कस्टम कॉन्फ़िगरेशन को ठीक करने की अनुमति देता है। जब हमने Doom Emacs स्थापित किया, तो उसने "/home/$USER/.doom.d/" के अंतर्गत व्यक्तिगत कॉन्फ़िगरेशन के लिए एक अलग फ़ाइल बनाई। सिंक फ़ंक्शन चलाने से वे कॉन्फ़िगरेशन सक्षम हो जाएंगे जो .emacs.d में .doom.d निर्देशिका में बनाए गए थे।
डूम Emacs को कॉन्फ़िगर करना
.doom.d निर्देशिका वह जगह है जहां सभी कयामत विन्यास रहते हैं। इसमें तीन फाइलें होती हैं:
- पैकेजेज.ईएल फाइल बताती है कि कौन से पैकेज इंस्टॉल करने हैं और कहां से।
- Config.el फ़ाइल वह जगह है जहाँ हम अपने कस्टम कॉन्फ़िगरेशन शामिल करते हैं। इसमें डूम और इंस्टॉल किए गए अतिरिक्त पैकेज दोनों के लिए कॉन्फ़िगरेशन शामिल है।
- init.el फ़ाइल डूम Emacs का मांस और आलू है। यह वह जगह है जहां वितरण की सभी सुविधाएं सक्षम या अक्षम की जा सकती हैं।
डूम मॉड्यूल
कयामत Emacs आपको 150 से अधिक मॉड्यूल चुनने की अनुमति देता है। फिर, हम उन मॉड्यूल को सक्षम कर सकते हैं, जिन्हें हम चाहते हैं। यह हमें कयामत को अपना कंप्यूटिंग वातावरण बनाने के लिए अनुकूलित करने की अनुमति देता है।
Doom Emacs से मॉड्यूल जोड़ना और हटाना केवल doom!
को संशोधित करने का मामला है ".doom.d/init.el" फ़ाइल में कार्य करें। सामान्य सिंटैक्स कुछ इस तरह दिखता है:
(doom! :checkers (syntax) :editor (evil) :lang (org +journal))
मॉड्यूल को सक्षम करने के लिए, हमें श्रेणी को लेबल करना होगा। इस उदाहरण में, सिंटैक्स मॉड्यूल जोड़ने के लिए, हमें पहले चेकर्स श्रेणी को जोड़ना होगा।
इसके अलावा, इन मॉड्यूल में झंडे भी होते हैं जिन्हें एक विशिष्ट मॉड्यूल के लिए सक्रिय किया जा सकता है। यह Gentoo के USE फ़्लैग्स के समान है जो आपको केवल अपनी इच्छित सुविधाओं को सक्षम करके किसी प्रोग्राम को फ़ाइन-ट्यून करने की अनुमति देता है।
मॉड्यूल के लिए ध्वज जोड़ने के लिए, ध्वज नाम के बाद "+" चिह्न जोड़ें। इस उदाहरण में, हमने जर्नल समर्थन को सक्षम करने के लिए जर्नल फ़्लैग को org में जोड़ा है।
एक बार हो जाने के बाद, doom sync
चलाएं सेटिंग्स के साथ डूम Emacs को फिर से शुरू करने के लिए।
अतिरिक्त पैकेज कैसे स्थापित करें
डिफ़ॉल्ट रूप से, Doom Emacs पहले से ही संस्थापन पर कई पैकेजों के साथ आता है। इसके बावजूद, हम रिपॉजिटरी से अतिरिक्त सॉफ़्टवेयर आसानी से इंस्टॉल कर सकते हैं। हम package!
. का उपयोग करके ऐसा कर सकते हैं ".doom.d/packages.el" फ़ाइल में कार्य करें।
कयामत में पैकेज स्थापित करने के कई तरीके हैं। सबसे आम तरीका है ELPA और MELPA से पैकेज प्राप्त करना। ऐसा करने के लिए, हमें केवल इस लिस्प कोड को package.el में जोड़ना होगा:
(package! name-of-package)
यह package!
को बताएगा हमारे द्वारा बताए गए पैकेज के लिए प्रत्येक सामान्य भंडार की जाँच करने के लिए कार्य करता है।
हालाँकि, यदि आपका पैकेज Emacs के किसी भी रिपॉजिटरी में मौजूद नहीं है, तो आप इसे सीधे इसके git रिपॉजिटरी से भी इंस्टॉल कर सकते हैं:
(package! name-of-git-package :recipe (:host github :repo "username/package")
यह package!
को बताएगा "उपयोगकर्ता नाम/पैकेज" रिपॉजिटरी के तहत उस विशिष्ट पैकेज को जीथब से खींचने के लिए कार्य करता है।
हम विशेष रूप से यह भी जान सकते हैं कि दूरस्थ रिपॉजिटरी में हम पैकेज को कहाँ खींचना चाहते हैं। उदाहरण के लिए, हम किसी विशेष स्थान से एक पैकेज को रिपॉजिटरी में खींच सकते हैं:
(package! another-git-package :recipe (:host github :repo "username/package" :files ("package.el" "path/of/*.el")))
यह तब उपयोगी होता है जब हम किसी रिपॉजिटरी से उपनिर्देशिकाओं में क्रमबद्ध ढेर सारे पैकेजों के साथ संस्थापन कर रहे होते हैं। इसका उपयोग करके, हम निर्दिष्ट कर सकते हैं कि हम पैकेज के रूप में क्या स्थापित करना चाहते हैं।
एक बार हो जाने के बाद, हमें doom sync
चलाने की आवश्यकता है कयामत Emacs को फिर से शुरू करने के लिए।
बधाई हो! अब आपके पास Doom Emacs की एक बुनियादी स्थापना के साथ-साथ यह कैसे काम करता है और इसे कैसे कॉन्फ़िगर और विस्तारित करना है, इसकी एक बुनियादी समझ है। यदि आप लिनक्स में कुछ उत्पादकता अनुप्रयोगों की तलाश कर रहे हैं, तो हमारे पास आपके लिए सिर्फ एक लेख है।
अक्सर पूछे जाने वाले प्रश्न
1. मैंने अभी-अभी Doom Emacs इंस्टॉल किया है, और जब मैं इसे खोलता हूँ तो यह केवल एक खाली स्क्रीन दिखाता है।
यह शायद इसलिए है क्योंकि आपकी .doom.d निर्देशिका में कोई समस्या है, और Doom Emacs किसी भी सेटिंग को लोड नहीं कर सकता है। इसे हल करने का एक तरीका यह जांचना है कि क्या .doom.d निर्देशिका मौजूद है और यह कि तीन फ़ाइलें - init.el, package.el और config.el - मौजूद हैं।
ऐसा इसलिए भी हो सकता है क्योंकि उत्पन्न की गई init.el फ़ाइल विकृत थी या उसके अंदर कयामत का कार्य नहीं था। इसे ठीक करने के लिए, आपको उन मॉड्यूल्स के साथ एक डूम का फंक्शन ब्लॉक बनाना होगा, जिन्हें आप डूम Emacs के साथ चलाना चाहते हैं।
2. मैं अपने पैकेजों को प्रबंधित करने के लिए package.el का उपयोग कर रहा हूं, क्या मैं इसे अब भी डूम Emacs में उपयोग कर सकता हूं?
नहीं। Doom Emacs अपने पैकेज को बनाए रखने के लिए एक अलग प्रबंधक का उपयोग कर रहा है। अतिरिक्त सॉफ़्टवेयर स्थापित करने के लिए आपको डूम Emacs द्वारा प्रदान किए गए पैकेज के फ़ंक्शन का उपयोग करना होगा।
3. मैंने इस पैकेज को कयामत Emacs में स्थापित किया है और इसे अब और नहीं चाहता। मैं इसे कैसे अनइंस्टॉल कर सकता हूं?
कयामत Emacs में एक पैकेज को हटाना अपेक्षाकृत तुच्छ है। आपको केवल अपने .doom.d/packages.el:
में लिस्प कोड के इस टुकड़े को चलाने की आवश्यकता है(package! some-package :disable t)
उसके बाद, आपको Doom Emacs को पुनः लोड करने के लिए कयामत सिंक चलाने की आवश्यकता है। जब आप वापस लॉग इन करते हैं, तो वह पैकेज अनइंस्टॉल कर दिया जाएगा।