Emacs एक्सटेंसिबिलिटी का किचन सिंक है। यह प्रारंभ में nano के समान एक साधारण टेक्स्ट एडिटर बनने के लिए बनाया गया था। आजकल, Emacs को अक्सर एक Lisp इंटरप्रेटर के रूप में माना जाता है जो लगभग कुछ भी कर सकता है।
Emacs आपका वेब ब्राउज़र, आपका म्यूजिक प्लेयर, और यहां तक कि आपका विंडो मैनेजर भी हो सकता है। इस लेख में, हम पांच पैकेज के बारे में बात करते हैं जो आपकी उत्पादकता में सुधार कर सकते हैं और आप उन्हें वेनिला Emacs में कैसे इंस्टॉल कर सकते हैं।
वेनिला Emacs
Emacs का एक न्यूनतम इंस्टॉलेशन, अधिकांश भाग के लिए, पहले से ही फीचर-पूर्ण है। इसमें इसका उपयोग करना सिखाने वाला एक आसान-से-पहुंचने वाला ट्यूटोरियल है।
इसमें एक शक्तिशाली डॉक्यूमेंटेशन मोड भी है जो इसके प्रत्येक फंक्शन का वर्णन करता है। अंत में, अन्य चीजों के अलावा, Emacs में एक शक्तिशाली पैकेज प्रबंधन प्रणाली है जो हमें इसके भीतर से थर्ड-पार्टी एक्सटेंशन इंस्टॉल करने की अनुमति देती है।
Emacs पैकेज कैसे इंस्टॉल करें
Emacs में थर्ड-पार्टी पैकेज इंस्टॉल करना अपेक्षाकृत सरल है। बस कमांड बफर खोलें और एक कमांड टाइप करें। Alt + x दबाकर और list-packages टाइप करके ऐसा करें। यह एक विंडो खोलेगा जो इंस्टॉल करने के लिए उपलब्ध सभी पैकेज दिखाएगा।
यह विंडो एक मानक Emacs बफर की तरह व्यवहार करती है। Ctrl + s का उपयोग करके इसके भीतर खोज करें और मानक Emacs मूवमेंट कंट्रोल का उपयोग करके आगे बढ़ें, जैसे Ctrl + n और Ctrl + p।
अब, list-packages में सॉफ्टवेयर इंस्टॉल करने के लिए हमें केवल Enter दबाना होगा या सूची में पैकेज नाम पर क्लिक करना होगा। मेरे मामले में, मैं ledger-mode पैकेज इंस्टॉल करना चाहता था।
ऐसा करने के लिए, मैंने इंस्टॉल करने के लिए वांछित पैकेज का नाम खोजा। एक बार चुने जाने पर, मैंने पैकेज का विवरण दिखाने वाले एक अलग बफर को खोलने के लिए Enter दबाया।
इस बफर में, आप हमारे द्वारा चुने गए विशेष पैकेज के बारे में जानकारी देख सकते हैं। यह वह जगह भी है जहां हम पैकेज इंस्टॉल करते हैं। Ctrl + x + o का उपयोग करके कर्सर को उस बफर पर ले जाकर और 'इंस्टॉल' बटन पर Enter दबाकर या माउस का उपयोग करके "इंस्टॉल" बटन पर क्लिक करके ऐसा करें।
ELPA और MELPA: Emacs के लिए पैकेज रिपॉजिटरी
एक महत्वपूर्ण बात ध्यान देने योग्य है कि Emacs के लिए इसके पैकेज के दो बड़े स्रोत हैं। पहला, ELPA, Emacs Lisp पैकेज आर्काइव है, जो Emacs डेवलपर्स द्वारा सीधे बनाए रखा गया पैकेज का एक रिपॉजिटरी है।
ELPA में ज्यादातर बुनियादी और स्थिर पैकेज का एक सेट होता है जो या तो डेवलपर्स द्वारा सीधे बनाए रखा जाता है या अधिकांश Emacs उपयोगकर्ताओं द्वारा उपयोग किया जाता है।
दूसरा रिपॉजिटरी, दूसरी ओर, मिल्कीपोस्टमैन्स Emacs Lisp पैकेज आर्काइव (MELPA) है। व्यापक Emacs समुदाय सक्रिय रूप से इस थर्ड-पार्टी रिपॉजिटरी को बनाए रखता है जिसमें Emacs के लिए उपलब्ध अधिकांश, यदि सभी नहीं, पैकेज होते हैं। यह पैकेज के नए संस्करणों के लिए लगातार अपडेट किया जा रहा है।
हालांकि, MELPA Emacs में डिफ़ॉल्ट नहीं है। अपने Emacs इंस्टॉलेशन में रिपॉजिटरी जोड़ने के लिए, अपनी "init.el" फाइल में निम्न लाइनें जोड़ें:
(require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) (package-initialize)
यह लिस्प कोड का टुकड़ा पहले Emacs के भीतर "package.el" पैकेज को लोड करेगा। यह तब इसके आंतरिक आर्काइव की सूची को "add-to-list" फंक्शन का उपयोग करके संशोधित करता है। हमारे मामले में, हम MELPA आर्काइव और Emacs के उपयोग के लिए इसका URL जोड़ रहे हैं।
हम जो अंतिम कमांड निष्पादित कर रहे हैं वह package-initialize है। यह दर्शाता है कि हम अब "package.el" पैकेज शुरू कर रहे हैं और Emacs अब ELPA और MELPA दोनों को लोड कर सकता है।
नीचे पांच उपयोगी Emacs पैकेज का विवरण दिया गया है।
1. Org Mode
Org Mode एक व्यापक प्रोग्राम है। इसके मूल में, यह Emacs के लिए एक शेड्यूलिंग और ऑर्गनाइजेशन मोड है जिसमें एक सहज और फीचर-रिच सिंटैक्स है जो आपको साफ और संरचित टास्क ट्रैकिंग की अनुमति देता है।
इस सिंटैक्स को कई Emacs उपयोगकर्ताओं द्वारा नोट-लेने और पब्लिशिंग के लिए भी अपनाया गया है। org-export-dispatch फीचर आपको अपनी org फाइलों को LaTeX, HTML और OpenDocument जैसे विभिन्न प्रारूपों में क्रॉस-एक्सपोर्ट करने की अनुमति देता है।
इसके अलावा, Org Mode अत्यधिक विस्तार योग्य है। Org उपयोगकर्ताओं ने इस मोड को विभिन्न प्रोग्राम के साथ-साथ नई सुविधाओं और एक्सटेंशन के लिए अपनाया है।
Org mode को ELPA रिपॉजिटरी से प्राप्त करें। एक बार इंस्टॉल हो जाने पर, आप .org फाइलें बनाकर तुरंत Org mode का उपयोग शुरू कर सकते हैं।
2. Magit
यदि आप एक प्रोग्रामर हैं, तो आप पहले से ही git वर्जन कंट्रोल सिस्टम से परिचित हो सकते हैं, एक प्रोग्राम जो आपको फाइलों के एक विशेष सेट के लिए परिवर्तनों को ट्रैक करने की अनुमति देता है। इसलिए यह सॉफ्टवेयर विकास में अत्यधिक उपयोगी है जहां आप किसी फाइल के कई संस्करण चाहते हैं ताकि परिवर्तनों को आसानी से डीबग और डिप्लॉय किया जा सके।
Magit Emacs के लिए एक git क्लाइंट है। यह एक पूर्ण-विशेषताओं वाला प्रोग्राम है जो आपको Emacs के भीतर से अपने git रिपॉजिटरी को प्रबंधित करने की अनुमति देता है। एक मुख्य विशेषता यह है कि यह आपको बफर में संपादन करते समय फ़ाइलों को निर्बाध रूप से कमिट करने और कमिट इतिहास को पार करने की अनुमति देता है।
Magit Emacs में git से संबंधित किसी भी चीज़ के लिए वन-स्टॉप-शॉप है। अकेले इस कारण से, Magit उन प्रोग्रामर के लिए सबसे महत्वपूर्ण पैकेज में से एक है जो Emacs का उपयोग करते हैं।
आप Magit को MELPA रिपॉजिटरी से प्राप्त कर सकते हैं।
3. Evil Mode
Evil का अर्थ एक्स्टेंसिबल Vi लेयर है, एक मोड जो आपको Emacs में Vim स्टाइल कीबाइंडिंग अपनाने की अनुमति देता है। यह उपयोगी है यदि आप Emacs में आने से पहले पहले से ही एक विपुल Vim उपयोगकर्ता हैं। इसमें सभी बुनियादी Vi मोशन कीज़ के साथ-साथ अतिरिक्त Vim कीज़ भी हैं, जैसे ciw, ci" और ci<।
यह ध्यान रखना महत्वपूर्ण है कि Evil Emacs के सभी डिफ़ॉल्ट कीबाइंडिंग को प्रतिस्थापित नहीं करेगा। Evil का व्यवहार शेल में set -o vi सेट करने के समान है। यह केवल Emacs के ऊपर एक Vi अनुकरण परत जोड़ता है, इसलिए आप अभी भी डिफ़ॉल्ट कीबाइंडिंग का उपयोग कर सकते हैं, जैसे Alt + x, Ctrl + x और Ctrl + f।
Evil MELPA रिपॉजिटरी में उपलब्ध है, और इसे अपने Emacs क्लाइंट के लिए इंस्टॉल करना अपेक्षाकृत सरल है। एक बार इंस्टॉल हो जाने पर, आपको इसे शुरू करने के लिए केवल अपने init.el में कोड की कुछ लाइनें डालनी होंगी:
(require 'evil) (evil-mode 1)
4. Focus Mode
Focus Emacs के लिए एक सरल एक्सटेंशन है जो आपके द्वारा वर्तमान में काम किए जा रहे टेक्स्ट को गैर-चयनित टेक्स्ट के रंग को सक्रिय रूप से बदलकर हाइलाइट करता है।
इसके अलावा, Focus विभिन्न खंडों और टेक्स्ट के रूपों को बुद्धिमानी से हाइलाइट करता है। Focus निबंध जैसे लेखन के साथ काम कर सकता है जो वाक्यों और पैराग्राफ का उपयोग करता है, लेकिन यह प्रोग्रामिंग जैसे लेखन के साथ भी काम कर सकता है जो फंक्शन और ब्रैकेट का उपयोग करता है।
इस वजह से, Focus लेखकों और प्रोग्रामर के लिए विशेष रूप से उपयोगी हो सकता है जो चाहते हैं कि वे जिस पैराग्राफ या कोड ब्लॉक पर काम कर रहे हैं वह सबसे अलग दिखे।
Focus MELPA रिपॉजिटरी में उपलब्ध है। एक बार इंस्टॉल हो जाने पर, Alt + x दबाकर और कमांड बफर में focus-mode टाइप करके इसे आसानी से सक्रिय करें।
5. Darkroom
Focus के समान, Darkroom एक "फोकस-उन्मुख" एक्सटेंशन है। हालांकि, यह प्रोग्रामर की तुलना में लेखकों की ओर अधिक तैयार है। Darkroom Emacs फ्रेम के चारों ओर से सभी अनावश्यक जानकारी को हटाकर एक विकर्षण-मुक्त वातावरण बनाता है, जिसमें मेनू बार, स्क्रॉल बार और मोड लाइन शामिल हैं।
इसके अलावा, Darkroom टेक्स्ट को लगभग 80 कॉलम के आसपास केंद्रित और समाहित करता है। यह निबंध लिखने और प्रूफरीडिंग के लिए विशेष रूप से उपयोगी है, क्योंकि यह आंखों को स्क्रीन के एक ही खंड पर निर्देशित करता है, जिससे टेक्स्ट पढ़ना आसान हो जाता है।
Darkroom को कस्टमाइज़ भी किया जा सकता है। darkroom-increase-margins और darkroom-decrease-margins को लागू करके टेक्स्ट के लिए डिफ़ॉल्ट मार्जिन को समायोजित करें।
Darkroom ELPA रिपॉजिटरी में उपलब्ध है, और मोड को कमांड बफर में Alt + x दबाकर और darkroom-mode टाइप करके आसानी से सक्षम किया जा सकता है।
बधाई हो! आपने अब कुछ उपयोगी Emacs पैकेज के बारे में सीखा है जो आपकी उत्पादक कार्यप्रवाह को काफी हद तक सुधार सकते हैं। यदि आप Linux में अपनी उत्पादकता में सुधार के लिए कुछ सरल तरकीबें सीखना चाहते हैं, तो इस लेख को देखें।
अक्सर पूछे जाने वाले प्रश्न
1. क्या MELPA उपयोग करने के लिए सुरक्षित है?
हां! केवल कुछ चुनिंदा मेंटेनर्स MELPA आर्काइव में पैकेज जोड़ सकते हैं। एक पैकेज जमा करने के लिए, डेवलपर को आर्काइव के मेंटेनर्स को एक पुल रिक्वेस्ट सबमिट करना होगा। उसके बाद, पैकेज को मेंटेनर्स द्वारा जांचा और अनुमोदित किया जाना चाहिए। यह प्रक्रिया सुनिश्चित करती है कि MELPA में सभी पैकेज नियमित उपयोगकर्ता के लिए उपयोग करने के लिए सुरक्षित हैं।
2. MELPA वेबसाइट ने कहा कि उसके द्वारा पेश किए जाने वाले पैकेज ब्लीडिंग एज हैं। क्या मेरे पैकेज टूट सकते हैं?
इसकी बहुत कम संभावना है। MELPA के पैकेज लगातार यह जांचने के लिए बनाए जा रहे हैं कि वे काम कर रहे हैं या नहीं।
हालांकि, यदि पैकेज टूटने की थोड़ी सी संभावना चिंता का विषय है, तो MELPA अपने आर्काइव का एक स्थिर ब्रांच प्रदान करता है जिसे कम बार अपडेट किया जाता है। यहां के पैकेज Emacs के वर्तमान संस्करण के साथ परीक्षण किए गए हैं। MELPA-Stable रिपॉजिटरी का उपयोग करने के लिए, अपनी "init.el" फाइल को अपडेट करें:
(require 'package) (add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t) (package-initialize)
3. मुझे यह पैकेज अब नहीं चाहिए। Emacs में पैकेज को कैसे अनइंस्टॉल करूं?
list-packages पेज के नीचे, आप इंस्टॉल किए गए पैकेज देख पाएंगे। आप Ctrl + s दबाकर और "installed" टाइप करके भी उन्हें खोज सकते हैं।
एक बार जब आप अनइंस्टॉल करने के लिए पैकेज चुन लेते हैं, तो Enter दबाएं और विवरण बफर में "डिलीट" बटन पर क्लिक करें। Emacs स्वचालित रूप से सिस्टम में पैकेज को हटा देगा।
एक बात ध्यान दें, हालांकि, यह प्रक्रिया init.el फाइल में आपके द्वारा किए गए किसी भी कॉन्फिगरेशन को नहीं हटाएगी। उदाहरण के लिए, यदि आपने किसी विशेष पैकेज X के लिए कॉन्फिगरेशन जोड़ा है, तो आपको उस कॉन्फिगरेशन को मैन्युअली हटाना होगा।