Apa cara terbaik untuk menggunakan paket lokal di ruang angkasa?

18

Saya seorang pengembang untuk sebuah paket (ycmd) yang digunakan oleh spacemacs, dan saya ingin mencoba menggunakan spacemacs juga. Saya ingin spacemac menggunakan "versi pengembangan" dari paket saya, yaitu paket yang saya peretas secara lokal. Apa cara terbaik / tepat untuk memberitahu spacemac untuk menggunakan versi paket itu daripada versi dari melpa?

Saat ini saya menggunakan :load-pathargumen untuk use-package, tetapi ini tampaknya bertentangan sedikit. Apakah spacemacs izinkan saya menentukan direktori muat untuk paket-paket spesifik dalam konfigurasi layer di suatu tempat?

abingham
sumber

Jawaban:

14

Paket lokal dimasukkan extensions.elsebagai ganti packages.el. Ada dua daftar dalam sebuah extensions.elfile:

  • <layer>-pre-extensions yang dimuat sebelumnya packages.el
  • <layer>-post-extensions yang dimuat setelah packages.el

Paket lokal dimasukkan ke dalam folder di extensionsdalam sub-folder yang namanya adalah nama yang Anda masukkan ke dalam salah satu dari dua daftar. The load-pathvariabel ditangani secara otomatis.

Anda dapat melihat beberapa contoh di pythonlayer.

syl20bnr
sumber
Luar biasa terima kasih! Saya pikir ada cara kanonik, tapi saya tidak menghubungkan semua titik.
abingham
Saya mengedit jawaban untuk menyebutkan load-pathvariabel yang diatur secara otomatis.
syl20bnr
@ syl20bnr apakah Anda juga perlu menambahkan paket ke `<layer> -excluded-packages, jika Anda mengerjakan paket yang sudah digunakan di tempat lain?
mkaito
5
ekstensi.el sedang ditinggalkan demi paket lokal. Lihat github.com/syl20bnr/spacemacs/blob/develop/doc/…
tony day
@tonyday memang, pythonlapisan yang @ syl20bnr sebutkan dalam jawaban ini sekarang mengikuti pedoman itu juga, yang membuat saya bingung sampai saya melihat komentar Anda :)
mike