From aecc82d7eb776985927bee3f62c5811cc4fc7b52 Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Thu, 11 Jul 2019 17:10:52 +0200 Subject: [PATCH] Clarify the expand-file-name doc string * src/fileio.c (Fexpand_file_name): Clarify that "~" in NAME is expanded, and not just "~/". Also clarify that ~USER is not expanded if USER doesn't exist (bug#36490). --- src/fileio.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/fileio.c b/src/fileio.c index 614c0f989da..7f83267956c 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -745,16 +745,22 @@ a directory's file name are accepted. If DEFAULT-DIRECTORY is nil or missing, the current buffer's value of `default-directory' is used. NAME should be a string that is a valid file name for the underlying filesystem. -File name components that are `.' are removed, and -so are file name components followed by `..', along with the `..' itself; -note that these simplifications are done without checking the resulting -file names in the file system. -Multiple consecutive slashes are collapsed into a single slash, -except at the beginning of the file name when they are significant (e.g., -UNC file names on MS-Windows.) -An initial `~/' expands to your home directory. -An initial `~USER/' expands to USER's home directory. -See also the function `substitute-in-file-name'. + +File name components that are `.' are removed, and so are file name +components followed by `..', along with the `..' itself; note that +these simplifications are done without checking the resulting file +names in the file system. + +Multiple consecutive slashes are collapsed into a single slash, except +at the beginning of the file name when they are significant (e.g., UNC +file names on MS-Windows.) + +An initial \"~\" in NAME expands to your home directory. + +An initial \"~USER\" in NAME expands to USER's home directory. If +USER doesn't exist, \"~USER\" is not expanded. + +To do other file name substitutions, see `substitute-in-file-name'. For technical reasons, this function can return correct but non-intuitive results for the root directory; for instance, -- 2.39.5