Guile's manual doesn't mention the procedure canonicalize-path. I copied it over from libguile/filesys.c, and just added "(absolute)" to the text to help users finding it, since this term is more usual in other languages. I didn't make this change to filesys.c though.

Regards,

Ricardo G. Herdt
From f899d43554f81bf1d20c22e07437a4e49e2bb400 Mon Sep 17 00:00:00 2001
From: "Ricardo G. Herdt" <r.he...@posteo.de>
Date: Sat, 30 May 2020 22:50:16 +0200
Subject: [PATCH] doc: Add missing canonicalize-path documentation.

The documentation is copied over from libguile/filesys.c. I just added
"(absolute)" to the text to help users finding it, since this term is
more common in other languages.

* doc/ref/posix.texi
---
 doc/ref/posix.texi | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/ref/posix.texi b/doc/ref/posix.texi
index b2be9d707..f34c5222d 100644
--- a/doc/ref/posix.texi
+++ b/doc/ref/posix.texi
@@ -1040,6 +1040,21 @@ If @var{suffix} is provided, and is equal to the end of
 @end lisp
 @end deffn
 
+@deffn {Scheme Procedure} canonicalize-path path
+@deffnx {C Function} scm_canonicalize_path (path)
+Return the canonical (absolute) path of @var{path}.
+A canonical path has no @code{.} or @code{..} components,
+nor any repeated path separators (@code{/}) nor symlinks.
+
+Raises an error if any component of @var{path} does not
+exist.
+
+@lisp
+(canonicalize-path "test.xml")
+@result{} "/tmp/test.xml"
+@end lisp
+@end deffn
+
 @deffn {Scheme Procedure} file-exists? filename
 Return @code{#t} if the file named @var{filename} exists, @code{#f} if
 not.
-- 
2.20.1

Reply via email to