Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

elisp: Is there a way to get the name of the current .el module (like __FILE__ in C)?

Tags:

emacs

lisp

elisp

At the top of my elisp module, I want to do something as simple as:

(message (concat "Loading " (expand-file-name (current-elisp-module) ".")))
like image 788
Cheeso Avatar asked Dec 28 '09 20:12

Cheeso


1 Answers

You can use the variable load-file-name, which is set by the function load, documented as follows:

Full name of file being loaded by `load'.

As elaborated in the manual:

When Emacs is in the process of loading a file, this variable’s value is the name of that file, as Emacs found it during the search described earlier in this section.

Note: buffer-file-name as a routine does not work as you might expect it to.

like image 52
seh Avatar answered Sep 21 '22 04:09

seh