File Names
Files are generally referred to by their names, in Emacs as elsewhere. File names in Emacs are represented as strings. The functions that operate on a file all expect a file name argument.
In addition to operating on files themselves, Emacs Lisp programs often need to operate on file names; i.e., to take them apart and to use part of a name to construct related file names. This section describes how to manipulate file names.
The functions in this section do not actually access files, so they can operate on file names that do not refer to an existing file or directory.
On MS-DOS and MS-Windows, these functions (like the function that actually operate on files) accept MS-DOS or MS-Windows file-name syntax, where backslashes separate the components, as well as POSIX syntax; but they always return POSIX syntax. This enables Lisp programs to specify file names in POSIX syntax and work properly on all systems without change.[1]
- File Name Components
- Absolute and Relative File Names
- Directory Names
- Functions that Expand Filenames
- Generating Unique File Names
- File Name Completion
- Standard File Names
In MS-Windows versions of Emacs compiled for the Cygwin environment, you can use the functions
cygwin-convert-file-name-to-windowsandcygwin-convert-file-name-from-windowsto convert between the two file-name syntaxes. ↩︎