2011-09-02 10 views
20

मैं पैकेज स्रोत के रूप में मार्मलेड को जोड़ने की कोशिश कर रहा हूं, लेकिन जब मैं ऐसा करता हूं तो मुझे त्रुटि मिलती है: Symbol's value as variable is void: package-archives. कोई भी इसे हल करने के बारे में जानता है? नीचे मेरी .emacs फ़ाइल है। emacs24 में शामिल किया जातामर्मेलैड को पैकेज स्रोत के रूप में जोड़ना

(let ((buffer (url-retrieve-synchronously 
      "http://tromey.com/elpa/package-install.el"))) 
    (save-excursion 
    (set-buffer buffer) 
    (goto-char (point-min)) 
    (re-search-forward "^$" nil 'move) 
    (eval-region (point) (point-max)) 
    (kill-buffer (current-buffer)))) 
+0

package.el का संस्करण क्या है? आपको यह कैसे मिला? यदि यह elpa package.el है: इसमें 'पैकेज-अभिलेखागार' शामिल नहीं है और इसमें भंडार जोड़ने की कोई संभावना नहीं है। –

+0

@ माइकल मार्कर: मैं * सोचता हूं * नवीनतम वाला; मुझे अपने ओपी के नीचे कोड चलाकर मिल गया। हाँ, यह elpa package.el है। कौन सा अन्य पैकेज हैं? – kin1

उत्तर

13

package.el का उपयोग करें, के रूप में ELPA संस्करण package-archives शामिल नहीं है और:

;;; This was installed by package-install.el. 
;;; This provides support for the package system and 
;;; interfacing with ELPA, the package archive. 
;;; Move this code earlier if you want to reference 
;;; packages in your .emacs. 
(when 
    (load 
    (expand-file-name "~/.emacs.d/elpa/package.el")) 
    (package-initialize)) 

(add-to-list 'load-path (expand-file-name "~/.emacs.d")) 
(add-to-list 'load-path "~/.emacs.d/plugins") 
(add-to-list 'load-path "~/.emacs.d/plugins/color-theme") 
(add-to-list 'load-path "~/.emacs.d/plugins/groovy") 

(require 'package) 
(add-to-list 'package-archives 
     '("marmalade" . "http://marmalade-repo.org/packages/")) 
(package-initialize) 

package.el स्थापित करने के लिए

मैं निम्नलिखित कोड भाग गया एकाधिक भंडारों के लिए समर्थन।

यह यहाँ पाया जाता है (emacs24!): http://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/head:/lisp/emacs-lisp/package.el

अंतिम emacs23 संगत संस्करण: http://repo.or.cz/w/emacs.git/blob/ba08b24186711eaeb3748f3d1f23e2c2d9ed0d09:/lisp/emacs-lisp/package.el

अपने loadpath में डाल दें और लोडिंग के एक प्रकार के लिए समझौता (उस के बाद लाइनों ड्रॉप है टिप्पणी)।

+0

मैं emacs 23.3.1 का उपयोग कर रहा हूं और आप जिस पैकेज से जुड़े हैं, वह काम नहीं कर रहा है। इसके अलावा, क्या आप चाहते हैं कि टिप्पणियों के बाद मुझे * सभी * लाइनें छोड़ दें? या बस * (कब ...)? – kin1

+2

ओह मैं भूल गया, पिछली संगतता कुछ महीने पहले टूट गई थी, मैंने अपनी पोस्ट में अंतिम emacs23- संगत संस्करण जोड़ा। ड्रॉप करने के लिए: यदि आप पथ रखना चाहते हैं तो बस 'कब' और 'लोड' के साथ 'आवश्यकता' को प्रतिस्थापित करें। –

+0

अच्छा काम करता है। उबंटू पर 23.3.1 emacs के लिए। – aartist

संबंधित मुद्दे