Bagaimana saya bisa memastikan saya mengunduh dan menggunakan org-plus-contrib
dari repositori mode-org menggunakan require
atau use-package
? Package.el
mengunduh paket, mengkompilasi semuanya dan kemudian mengatakan tidak dapat memuat org-plus-contrib
. Utas ini pada milis membahas masalah yang serupa tetapi terbalik. Namun, jika saya menempatkan (use-package org ...
, use-package
mengembalikan t
, tetapi apakah org-plus-contrib
itu diinstal atau tidak.
org-mode
package
use-package
wdkrnls
sumber
sumber
(use-package org-plus-contrib :ensure t)
? Memang saya menggunakan tong dengan palet untuk manajemen paket, tetapi menempatkan / home / kmicu/.emacs.d/.cask/24.4.1/elpa/org-plus-contrib-20150202 di jalur saya dan memuatnya.package-pinned-packages
Jawaban:
Saya tidak 100% yakin Anda dapat benar-benar memeriksa hanya dengan
require
atauuse-package
... Tetapi jika Anda menggunakan package.el untuk fungsi mode-org, konfigurasi mode-org Anda mungkin perlu ditunda sampai setelah paket Anda diinisialisasi. Anda dapat melakukan ini dengan hook yang berjalan setelah Emacs diinisialisasi yang disebut "after-init-hook
".Begitu...
Itu berarti di Anda
.emacs
, Anda akan memerlukan sebuah pengait seperti:Dan di tempat lain:
Setelah itu, Anda memiliki akses ke fungsionalitas memeriksa dan mengunduh package.el ...
jadi, karena Anda juga ingin memeriksa keberadaan paket, Anda dapat menggunakan "
(package-installed-p 'org-plus-contrib)
" dan menginstalnya dengan "(package-install package)
" jika tidak ada.Secara keseluruhan, kodenya mungkin akan terlihat seperti:
Dengan sisa konfigurasi Anda setelah
(unless ...)
tubuh.Dengan begitu, Anda mendapatkan konfigurasi Anda, Anda mendapatkan pemeriksaan instal paket Anda, dan Anda mendapatkannya secara otomatis diunduh sehingga Anda dapat dengan aman berasumsi bahwa apa pun yang melewati garis dalam fungsi tersebut dapat menggunakan kontrib yang dimuat. (Dengan asumsi Anda memiliki koneksi jaringan jika tidak ada.)
sumber
Cara yang benar untuk melakukan ini dengan menggunakan-paket adalah sebagai berikut:
Argumen pertama memastikan bahwa itu adalah file org.el yang bersumber. Argumen: Pastikan memastikan bahwa Anda mendapatkan versi dengan semua ekstra. Tentu saja Anda juga perlu memiliki
("org" . "http://orgmode.org/elpa/")
daftar arsip-arsip Anda.sumber
Saya melakukan paket-instal org-plus-contrib secara manual, tetapi kemudian lakukan menggunakan paket-org. Akhirnya, versi Mx org berikutnya menunjukkan bahwa org yang disediakan oleh org-plus-contrib memang digunakan dan semuanya baik-baik saja.
sumber