与其他程序一样,Emacs 中通常通过文件名引用文件。 Emacs 中的文件名以字符串形式表示。 所有操作文件的函数均要求传入文件名参数。
除了直接操作文件本身,Emacs Lisp 程序还经常需要处理文件名, 即拆分文件名,并使用名称的一部分构造相关文件名。 本节介绍如何操作文件名。
本节中的函数并不会实际访问文件, 因此可以处理那些不指向现有文件或目录的文件名。
在 MS-DOS 和 MS-Windows 上,这些函数(与实际操作文件的函数一样) 既接受以反斜杠分隔路径组件的 MS-DOS 或 MS-Windows 文件名语法, 也接受 POSIX 语法;但它们始终返回 POSIX 格式。 这使得 Lisp 程序可以使用 POSIX 语法指定文件名, 并在所有系统上无需修改即可正常运行。20
在为 Cygwin 环境编译的
Windows 版 Emacs 中,可以使用函数
cygwin-convert-file-name-to-windows 与
cygwin-convert-file-name-from-windows
在两种文件名语法之间转换。