bajt skompilowana wersja plików elisp

12

Mam zarówno .elskompilowaną bajtowo wersję ( .elc) pliku elisp. Przypadkowo usuwam .elplik. Czy mogę pobrać .elplik z jego .elcwersji? Czy .elcplik bez swojego .elpliku działa?

Nazwa
źródło

Odpowiedzi:

12

Mam zarówno skompilowaną wersję .el, jak i bajtową (elel) pliku elisp. Przypadkowo usuwam plik .el. Czy mogę pobrać plik .el z jego wersji .elc?

W praktyce nie.

Teoretycznie można użyć pliku elc do utworzenia pliku el z definicjami czytelnymi dla człowieka. Jednak prawdopodobnie nie wyglądałby tak samo jak oryginalny plik, który usunąłeś, z powodu optymalizacji makr i kompilatora, a nawet wtedy nie znam żadnych bibliotek, które to robią.

Czy plik .elc bez pliku .el działa?

Tak, Emacs chętnie ładuje .elcplik sam. No .elplik jest w ogóle konieczne.

W rzeczywistości, nawet jeśli masz oba w tym samym katalogu, Emacs i tak zwykle ładuje elc.

Malabarba
źródło
Nie potrzebujesz „ obu w tym samym katalogu ”. Nie potrzebujesz obu. * .Elc wystarczy, przynajmniej jeśli twoja wersja Emacsa jest z nim kompatybilna (np. Z wersją Emacsa, z której została skompilowana).
Drew
@ Imię Drugie zdanie jest informacją uzupełniającą. Odpowiedź brzmi tak". Emacs ładuje pliki „elc” w porządku bez pliku „.el”.
Malabarba,
2
„W rzeczywistości, nawet jeśli masz oba w tym samym katalogu, Emacs i tak zwykle ładuje elc.” .. Jeśli load-prefer-newerjest ustawiony na temacs 24.4+, ładowane będą nowsze wersje .el / .elc.
Kaushal Modi,
3

Sprawdź *.el~plik - może istnieć kopia zapasowa brakującego *.elpliku Emacsa (który niektóre narzędzia ukryją przed tobą w interfejsie użytkownika, więc użyj czegoś takiego ls -a).

Gdzie jest Nemo
źródło