25.1 से 26.1 तक एमएसीएस अपडेट करने के बाद ओआरजी-मोड कोई काम नहीं करता


12

मैं कुछ भी कर रहा हूँ लेकिन एक Emacs विशेषज्ञ लेकिन मैं Emacs का उपयोग org-modeअक्सर करता हूँ। मैंने .orgफ़ाइलों को पहचानने के लिए Emacs को कॉन्फ़िगर किया । 26.1 संस्करण में अपडेट होने के बाद Emacs केवल .orgफाइलों को ही नहीं पहचानता है:

File mode specification error: (file missing Cannot open load file No such file or directory ob-sh)

लेकिन बदल भी नहीं सकते org-modeM-x org-modeदेता है:

Cannot open load file No such file or directory ob-sh

मैंने अपनी .emacsफ़ाइल या .emacs.dफ़ोल्डर को स्थानांतरित नहीं किया ।

कोई उपाय?


के बाद मैं अपने .emacs फ़ाइल और .emacs.d फ़ोल्डर को किसी अन्य स्थान पर स्थानांतरित करने के बाद सब कुछ ठीक काम करता हूं। फिर भी मैं जानना चाहूंगा कि मैंने क्या गलत किया।
मार्टिन पीटरसन

FYI करें आपने कुछ भी गलत नहीं किया। यह ऑर्ग-मोड में एक ब्रेकिंग / बैकवर्ड-असंगत परिवर्तन था, और मुझे संदेह है कि Emacs 26 में अपग्रेड करने वाले बहुत से लोग (और आगे भी) इसके द्वारा ट्रिप किए गए हैं।
फिल्स

यहाँ एक टिप है, यहाँ आपकी समस्या से असंबंधित है: .emacsरास्ते से हटने के बजाय , बस emacs --no-init-file(macOS पर open -a Emacs --args --no-init-file) इसके बजाय शुरू करें। ( --no-init-fileछोटा किया जा सकता है -q।) --no-site-fileसाइट विशिष्ट फ़ाइलों के लोडिंग को रोकने के लिए एक ध्वज भी है ।
हेराल्ड हैन्च-ऑलसेन

जवाबों:


16

25.1 की तुलना में Emacs 26.1 ऑर्ग-मोड के एक बहुत अधिक संस्करण के साथ आता है। org- मोड 8.2 में ob-shइसका नाम बदल दिया गया था ob-shell, इसलिए आपको ob-sh हटानेob-sh में वर्णित के रूप में .emacs में जो भी कॉन्फ़िगरेशन को समायोजित करने की आवश्यकता होगी ,:

** असंगत परिवर्तन

*** ob-sh.elइसका नाम बदलकर ob-shellउपयोगकर्ता कॉन्फ़िगरेशन में दो बदलावों की आवश्यकता हो सकती है।

  1. में org-babel-do-load-languages, में बदल (sh . t)जाते हैं (shell . t)

  2. "श" को हटाने local.mkके मूल्य को बदलने BTEST_OB_LANGUAGESऔर "शेल" को शामिल करने के लिए फ़ाइलों को संपादित करें ।

भाषाओं की संबद्ध सूची में कॉल करने org-babel-do-load-languagesऔर बदलने के shलिए आपको अपना कॉन्फिगर खोजने की सबसे अधिक आवश्यकता है shell


आपकी सहायता के लिए धन्यवाद। मैंने स्ट्रिंग ob-sh के लिए .emacs और .emacs.d को खोजा, लेकिन मुझे नहीं मिला। वैसे भी मैं अपने कॉन्फिग स्टेप को स्टेप द्वारा रिस्टोर करूंगा।
मार्टिन पीटरसन

यह 'ob-sh' के बजाय 'sh' हो सकता है। अपने कॉन्फिग्रेशन का पता लगाकर सटीक समस्या का पता लगाना चाहिए।
rpluim

इसके अलावा emacs --debug-initउस लाइन को इंगित कर सकते हैं जो समस्या पैदा कर रही है।
rpluim

2
@MartinPetersen org-babel-do-load-languagesवेरिएबल को कॉल करने या सेट करने के लिए अपने कॉन्फ़िगरेशन में देखें org-babel-load-languages। आप को बदलने के लिए की आवश्यकता होगी shकरने के लिए shellभाषाओं के संबद्ध सूची में। यदि आपको पुराने और नए दोनों प्रकारों का समर्थन करने की आवश्यकता हो सकती है , तो हमें बताएं, क्योंकि यह भी व्यवस्थित किया जा सकता है।
फिल्स

आप सभी का धन्यवाद मैं इस मुद्दे को हल करने में सक्षम था। सब कुछ अभी के अनुसार काम करता है। फिर, एक टन धन्यवाद।
मार्टिन पीटरसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.