emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-28 32ef7550ed: ; Improve documentation of 'file-in-directory-p'


From: Eli Zaretskii
Subject: emacs-28 32ef7550ed: ; Improve documentation of 'file-in-directory-p'
Date: Sat, 8 Oct 2022 07:14:53 -0400 (EDT)

branch: emacs-28
commit 32ef7550edc887f1f8e052cb57a61c4e82b6eecd
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    ; Improve documentation of 'file-in-directory-p'
    
    * lisp/files.el (file-in-directory-p): Clarify doc string.
    
    * doc/lispref/files.texi (Truenames): Move the documentation of
    'file-in-directory-p' from here...
    (Contents of Directories): ...to here.  Add index entries.
    (Bug#58364)
---
 doc/lispref/files.texi | 19 +++++++++++--------
 lisp/files.el          |  7 ++++---
 2 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi
index 08677f789a..32a862b582 100644
--- a/doc/lispref/files.texi
+++ b/doc/lispref/files.texi
@@ -1250,14 +1250,6 @@ the @samp{smb} method.  For all other connection 
methods, runtime
 tests are performed.
 @end defun
 
-@defun file-in-directory-p file dir
-This function returns @code{t} if @var{file} is a file in directory
-@var{dir}, or in a subdirectory of @var{dir}.  It also returns
-@code{t} if @var{file} and @var{dir} are the same directory.  It
-compares the truenames of the two directories.  If @var{dir} does not
-name an existing directory, the return value is @code{nil}.
-@end defun
-
 @defun vc-responsible-backend file
 This function determines the responsible VC backend of the given
 @var{file}.  For example, if @file{emacs.c} is a file tracked by Git,
@@ -3052,6 +3044,17 @@ is called with one argument (the file or directory) and 
should return
 non-@code{nil} if that directory is the one it is looking for.
 @end defun
 
+@cindex parent directory of file
+@cindex ancestor directory of file
+@cindex file, ancestor directory of
+@defun file-in-directory-p file dir
+This function returns @code{t} if @var{file} is a file in directory
+@var{dir}, or in a subdirectory of @var{dir}.  It also returns
+@code{t} if @var{file} and @var{dir} are the same directory.  It
+compares the truenames of the two directories.  If @var{dir} does not
+name an existing directory, the return value is @code{nil}.
+@end defun
+
 @defun directory-files-and-attributes directory &optional full-name 
match-regexp nosort id-format count
 This is similar to @code{directory-files} in deciding which files
 to report on and how to report their names.  However, instead
diff --git a/lisp/files.el b/lisp/files.el
index 860b9ca724..e07f479625 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -6166,9 +6166,10 @@ If FILE1 or FILE2 does not exist, the return value is 
unspecified."
             (equal f1-attr f2-attr))))))
 
 (defun file-in-directory-p (file dir)
-  "Return non-nil if FILE is in DIR or a subdirectory of DIR.
-A directory is considered to be \"in\" itself.
-Return nil if DIR is not an existing directory."
+  "Return non-nil if DIR is a parent directory of FILE.
+Value is non-nil if FILE is inside DIR or inside a subdirectory of DIR.
+A directory is considered to be a \"parent\" of itself.
+DIR must be an existing directory, otherwise the function returns nil."
   (let ((handler (or (find-file-name-handler file 'file-in-directory-p)
                      (find-file-name-handler dir  'file-in-directory-p))))
     (if handler



reply via email to

[Prev in Thread] Current Thread [Next in Thread]