Emacs'i C kaynağı dosyalarını standart bir find-function-C-source-dizinine kurulacak şekilde nasıl oluşturabilirim/paketleyebilirim?

Emacs işlevlerinin C kaynak kodunu görüntüleyebilmek istiyorum. Örneğin, M-: (find-function 'mesajı) yapabilmek istiyorum.

Emacs prompts me for directory the C sources, so it can set find-function-C-source-directory. However, my distro (Arch Linux) has just done the usual make; make install steps (see the package recipe here) so there are no C sources available without manually downloading them.

Yani, ambalajı düzeltmek istiyorum. Benim sorularım:

  1. Yapılandırma seçenekleri var mı make make install anlamına gelen Emacs makefile de C kaynaklarını kopyalar? Belli bir şey göremiyorum.
  2. Pakette find-function-C-source-directory ayarının doğru yolu nedir? site-lisp oluşturun?
  3. Bunu zaten yapan herhangi bir dağıtım veya platform var mı?
7
Emacs ile birlikte "src" tür RPM için kısa bir arama: rpmfind.net/linux/rpm2html/… gerçekten böyle yaratıklar var. Bunları incelemeye çalışacağım, ancak kaynak araması yaptıklarından emin değilim (hoş olsa da).
katma yazar Yann Trevin, kaynak
Emac'in lisp'de değil C dilinde yazıldığını düşünmüştüm.
katma yazar Alexander Prokofyev, kaynak
@ user3629249: Her ikisinde de yazılmıştır. Lisp yorumlayıcısının kendisi, C'nin yanı sıra verimliliğin gerekli olduğu bazı işlevler (ekran güncellemesinin çekirdeği gibi) ile yazılmıştır. Çalışan bir emacs oluşturan kodun çoğu, C dilinde yazılmış tercümanın üstünde çalışmak için lisp ile yazılmıştır. Böylece, verilen bir fonksiyonun kaynağı için yardım ekranlarındaki bağlantıları izlediğinizde, bu da olabilir.
katma yazar Michael Bar-Sinai, kaynak
find-function-C-source-directory dahili olarak source-directory kullanır, bu yüzden işler derleme dizininde çalışan bir Emacs için çalışmalıdır.
katma yazar ICodeForCoffee, kaynak
Tahminimce, Arch Linux, kurulum tamamlandıktan sonra kurulum sırasında kullanılan tüm dosyaları siler mi? Öyleyse, ilgili dosyaları başka bir yere taşımak için bir oluşturma adımı eklemeniz gerekeceğini varsayalım. Dizini ayarlamak için site-lisp .el dosyası kullanmak doğrudur.
katma yazar Mark Ireland, kaynak
" Emacs oluştururken src dizinine nasıl dahil edilir/kopyalanır? " bölümüne bakın: stackoverflow.com/questions/21241967/…
katma yazar lawlist, kaynak

1 cevap

"Arch paketime kaynak kodu nasıl eklenir" sorusunu soruyorsanız, buraya ait görünmüyor ancak belki de https://unix .stackexchange.com/.

Yapılandırma seçenekleri var mı? Emacs 'makefile, make make C kaynakları da kopyalar mı?

Yok hayır.

Paket içinde find-function-C-source-dizinini ayarlamanın doğru yolu nedir? Site lisesi oluşturulsun mu?

Kaynak kod paketinizin yükleneceği kurulum zamanında, kaynak kodunu yatırabilirsiniz. Ama site lisesinde geçersiz olurdum.

Bunu zaten yapan herhangi bir dağıtım veya platform var mı?

Bildiğim kadarıyla hayır.

Bir kullanıcı olarak, Emacs kaynak kodunu her zaman indirebildiğiniz için, evinizdeki direk paketinden açabilirsiniz, bunun için iyi çalışacak şekilde find-function-C-source-directory ayarını yapın.

find-function hakkında harika bir şey, kesin satır sayısını bilmek zorunda olmamasıdır. Bunun yerine, kaynak dosyasındaki işlevi arar. Dolayısıyla, küçük değişiklikler veya sürüm farklılıkları yeteneği etkilemez.

1
katma