Saya menggunakan emacs 24.4. Saya telah menambahkan sejumlah besar paket yang diinstal melalui direktif-daftar paket Mx selama sekitar satu tahun penggunaan. Saya ingin mengekspor daftar paket yang saya instal untuk digunakan di tempat lain. Menyalin .emacs saya memberi saya beberapa kesalahan saat startup, yang membuat memori saya terinstal untuk menginstal hal-hal tertentu. Saya curiga saya bisa menyalin .emacs.d, tapi sepertinya itu ide yang buruk.
Apakah ada prosedur atau arahan yang bisa saya keluarkan untuk membuang daftar paket yang diinstal ke file yang dapat digunakan untuk mendapatkannya di komputer asing dengan mudah?
.emacs.d
direktori Anda (atau lebih baik meletakkannya di bawah kontrol versi) umumnya merupakan ide bagus. (Ini juga masuk akal untuk mengubah nama~/.emacs
ke~/.emacs.d/init.el
jika Anda memutuskan untuk melakukan hal ini.)Jawaban:
Direktori
~/.emacs.d/elpa
berisi semua paket yang diinstal denganlist-packages
. Anda dapat menyalin direktori ini.Saya mungkin juga akan menjalankan sesuatu seperti
(byte-recompile-directory "~/.emacs.d/elpa" 0 t)
(0
artinya jangan tanya,t
berarti paksakan kompilasi ulang) untuk byte-recompile semuanya karena saya percaya ada beberapa ketidakcocokan file byte-compiled antara versi Emacs.sumber
Saya telah melihat-lihat
package.el
file dan menemukan variabelpackage-alist
. Ini tampaknya daftar semua paket yang diinstal termasuk paket yang diperlukan oleh paket yang telah Anda instal.Jika semua yang Anda inginkan adalah daftar nama paket yang diinstal, kode berikut akan menuliskan nama paket dari daftar ini ke
*Messages*
buffer.Saya bukan programmer Lisp jadi saya yakin seseorang dapat menulis versi yang jauh lebih baik dari kode ini.
Saya juga mulai menggunakan kode paket penggunaan dengan
:ensure t
opsi untuk menginstal semua paket saya pada PC baru.sumber
Salah satu caranya adalah dengan menginstal paket jika belum diinstal, Anda harus memperbarui file init Anda, dan menambahkan baris-baris itu:
Ubah
my-packages
variabel dan tambahkan / hapus paket yang ingin Anda instal.M-x describe-variable package-activated-list
akan memberi Anda daftar paket yang saat ini diinstal.Setelah itu, satu-satunya hal untuk dibagikan adalah file init Anda. Saya harap ini akan membantu.
sumber