In emacs there is buffer-file-name that gives the full path to a file. But is there a way to get only the directory of the file loaded in the current buffer?
Sometimes default-directory
for the current buffer may be set to something other than the current directory of the file the buffer is currently visiting, in which case the solution above wouldn't give what the asker was looking for.
In such cases, you can use the file-name-directory
method, like so: (file-name-directory buffer-file-name)
Here is a link to the docs:
http://www.gnu.org/software/emacs/manual/html_node/elisp/File-Name-Components.html
You can use the default-directory
variable.
Documentation: Name of default directory of current buffer. Should end with slash. To interactively change the default directory, use command `cd'.
Note that expand-file-name
will use default-directory
by default, so sometimes you don't even need to mention it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With