summaryrefslogtreecommitdiff
path: root/lisp/info.el
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2001-02-02 18:10:41 +0000
committerEli Zaretskii <eliz@gnu.org>2001-02-02 18:10:41 +0000
commit2c366083cd0d072cbd3afca41aa93adadcd9eee9 (patch)
tree528e67d69549e4c6c82d0448d3458d78f4c6d158 /lisp/info.el
parent0969bd6a67fae975e2b16c94889061c45d3a3567 (diff)
downloademacs-2c366083cd0d072cbd3afca41aa93adadcd9eee9.tar.gz
(info-initialize): If installation-directory is nil, for
DOS/Windows systems try looking in a sibling of invocation-directory.
Diffstat (limited to 'lisp/info.el')
-rw-r--r--lisp/info.el14
1 files changed, 13 insertions, 1 deletions
diff --git a/lisp/info.el b/lisp/info.el
index dc9a7b7dea9..1add6ed522f 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -311,7 +311,19 @@ Do the right thing if the file has been compressed or zipped."
(let ((path (getenv "INFOPATH"))
(source (expand-file-name "info/" source-directory))
(sibling (if installation-directory
- (expand-file-name "info/" installation-directory)))
+ (expand-file-name "info/" installation-directory)
+ (if (and (memq system-type '(ms-dos windows-nt))
+ invocation-directory)
+ (let ((infodir (expand-file-name
+ "../info/"
+ invocation-directory)))
+ (if (file-exists-p infodir)
+ infodir
+ (setq infodir (expand-file-name
+ "../../../info/"
+ invocation-directory))
+ (and (file-exists-p infodir)
+ infodir))))))
alternative)
(setq Info-directory-list
(prune-directory-list