diff options
author | Mark H Weaver <mhw@netris.org> | 2012-11-28 18:01:35 -0500 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2012-11-28 21:58:05 -0500 |
commit | bd31bce6ac5df7e45d0ec802d9d0738cbc32d9bf (patch) | |
tree | f519aaa54e6f7743c9551c8d317c2ea6cf30ab1a /doc/ref/guile-invoke.texi | |
parent | 99b94347f9c93459e2111e9cacbe3632b8041072 (diff) | |
download | guile-bd31bce6ac5df7e45d0ec802d9d0738cbc32d9bf.tar.gz |
Add parse-path-with-ellipsis, and use it for GUILE_LOAD_PATH et al.
* libguile/load.c (scm_ellipsis): New Variable.
(scm_parse_path_with_ellipsis): New procedure.
(scm_init_load): Initialize 'scm_ellipsis'.
(scm_init_load_path): Use 'scm_parse_path_with_ellipsis' to
handle GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH.
* libguile/load.h (scm_parse_path_with_ellipsis): Add prototype.
* doc/ref/guile-invoke.texi (Environment Variables):
doc/ref/api-evaluation.texi (Load Paths): Add documentation.
Correct description of default load path to reflect reality.
Remove 'GUILE_LOAD_PATH' from the concept index; it is already
in the variable index. Add cross references between these two
sections of the manual.
Diffstat (limited to 'doc/ref/guile-invoke.texi')
-rw-r--r-- | doc/ref/guile-invoke.texi | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/doc/ref/guile-invoke.texi b/doc/ref/guile-invoke.texi index 08c169864..5a9a3f7ef 100644 --- a/doc/ref/guile-invoke.texi +++ b/doc/ref/guile-invoke.texi @@ -295,8 +295,10 @@ variable. By default, the history file is @file{$HOME/.guile_history}. @vindex GUILE_LOAD_COMPILED_PATH This variable may be used to augment the path that is searched for compiled Scheme files (@file{.go} files) when loading. Its value should -be a colon-separated list of directories, which will be prefixed to the -value of the default search path stored in @code{%load-compiled-path}. +be a colon-separated list of directories. If it contains the special +path component @code{...} (ellipsis), then the default path is put in +place of the ellipsis, otherwise the default path is placed at the end. +The result is stored in @code{%load-compiled-path} (@pxref{Load Paths}). Here is an example using the Bash shell that adds the current directory, @file{.}, and the relative directory @file{../my-library} to @@ -312,18 +314,23 @@ $ guile -c '(display %load-compiled-path) (newline)' @vindex GUILE_LOAD_PATH This variable may be used to augment the path that is searched for Scheme files when loading. Its value should be a colon-separated list -of directories, which will be prefixed to the value of the default -search path stored in @code{%load-path}. +of directories. If it contains the special path component @code{...} +(ellipsis), then the default path is put in place of the ellipsis, +otherwise the default path is placed at the end. The result is stored +in @code{%load-path} (@pxref{Load Paths}). -Here is an example using the Bash shell that adds the current directory -and the parent of the current directory to @code{%load-path}: +Here is an example using the Bash shell that prepends the current +directory to @code{%load-path}, and adds the relative directory +@file{../srfi} to the end: @example -$ env GUILE_LOAD_PATH=".:.." \ +$ env GUILE_LOAD_PATH=".:...:../srfi" \ guile -c '(display %load-path) (newline)' -(. .. /usr/local/share/guile/2.0 \ +(. /usr/local/share/guile/2.0 \ /usr/local/share/guile/site/2.0 \ -/usr/local/share/guile/site /usr/local/share/guile) +/usr/local/share/guile/site \ +/usr/local/share/guile \ +../srfi) @end example (Note: The line breaks, above, are for documentation purposes only, and |