2009-12-28 11 views
10

Ở phía trên của mô-đun elisp của tôi, tôi muốn làm một cái gì đó đơn giản như:elisp: Có cách nào để lấy tên của mô-đun .el hiện tại (như __FILE__ trong C) không?

(message (concat "Loading " (expand-file-name (current-elisp-module) "."))) 
+0

bản sao có thể có của [Cách tham chiếu đến tệp hiện đang được tải trong Emacs Lisp?] (Http://stackoverflow.com/questions/1344747/how-to-refer-to-the-file-currently-being- nạp-in-emacs-lisp) – mlt

Trả lời

9

Bạn có thể sử dụng biến load-file-name, được thiết lập bởi các chức năng load, ghi nhận như sau:

Tên đầy đủ của tệp đang được tải bởi `tải '.

Như xây dựng trong cuốn hướng dẫn:

Khi Emacs là trong quá trình tải một tập tin, giá trị của biến này là tên của tập tin đó, như Emacs tìm thấy nó trong việc tìm kiếm được mô tả trước đó trong này phần.

Lưu ý:buffer-file-name như một thói quen không làm việc như bạn mong đợi nó đến.

+0

Cảm ơn đã làm tròn câu trả lời, Trey. Tôi đã vội vã hơn bình thường bằng văn bản đó, và figured nó sẽ là hữu ích để đưa nó ra sớm hơn sau đó. – seh

Các vấn đề liên quan