ฉันจะตั้งค่าที่เก็บแพคเกจท้องถิ่น (Emacs 24.5) โดยใช้package.el
ครั้งแรกโดยการสร้างสองไดเรกทอรีและpkgs
local
(ชื่อไม่สำคัญ) ไฟล์ที่ประกอบไปด้วยแพ็คเกจของคุณจะเข้าสู่pkgs
และlocal
จะสิ้นสุดการเก็บข้อมูลถาวรของคุณ หากคุณต้องการให้ผู้อื่นสามารถเก็บถาวรได้คุณสามารถเปิดเผยlocal
โดยใช้เว็บเซิร์ฟเวอร์ แต่กระบวนการนี้เหมือนกับการสร้างไฟล์เก็บถาวรในเครื่อง
ฉันใส่สิ่งต่อไปนี้ในinit.el
ไฟล์ของฉัน:
(require 'package)
(setq package-enable-at-startup nil)
(require 'package-x)
(defvar local-archive
(expand-file-name "local/" user-emacs-directory)
"Location of the package archive.")
(setq package-archive-upload-base local-archive)
(add-to-list 'package-archives `("local" . ,local-archive) t)
(package-initialize)
ฉันใส่ที่เก็บถาวรของฉันไว้ใน.emacs.d
ไดเรกทอรีของฉัน(ดังนั้นuser-emacs-directory
ในexpand-file-name
รูปแบบ) แต่คุณสามารถวางไว้ที่ใดก็ได้ที่คุณต้องการ
เมื่อประเมินผลแล้วให้ดำเนินการM-x package-upload-file
และป้อนชื่อไฟล์ของแพ็คเกจที่จะติดตั้ง local
นี้จะสร้างแพคเกจใหม่ใน คุณจะเห็นสามไฟล์ใหม่ในการมีarchive-contents
, และyourpackagename-version.el
yourpackagename-readme.txt
ตอนนี้คุณน่าจะสามารถทำM-x package-list-packages
และดูแพ็คเกจของคุณได้ ด้วยโชคพวกเขาจะอยู่ที่ด้านบนสุดว่า "ใหม่" คุณสามารถติดตั้งแพคเกจได้ตามปกติและคุณจะเห็นมันปรากฏใน.emacs.d/elpa
ไดเรกทอรีของคุณเหมือนกับแพ็คเกจอื่น ๆ
นี่น่าจะใช้ได้สำหรับ Emacs 24 ฉันไม่แน่ใจเกี่ยวกับเวอร์ชั่นก่อนหน้านี้ ผู้ใช้ของคุณสามารถเข้าถึงแพ็คเกจได้ตามปกติโดยรวม
(require 'package)
(setq package-enable-at-startup nil)
(add-to-list 'package-archives
'("archive" . "http://yourdomain.com/path-to-local-dir/"))
(package-initialize)
ในinit.el
ไฟล์ของพวกเขา
สำหรับข้อมูลเกี่ยวกับวิธีเขียนแพ็คเกจดูการเตรียมรหัส Lisp สำหรับการแจกจ่ายในคู่มือ GNU Emacs Lisp