summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/repl.texi16
-rw-r--r--elisp/geiser-repl.el8
2 files changed, 23 insertions, 1 deletions
diff --git a/doc/repl.texi b/doc/repl.texi
index bef0f3f..d1e1f6b 100644
--- a/doc/repl.texi
+++ b/doc/repl.texi
@@ -329,6 +329,22 @@ loads a file specified via the @code{-l} flag. If what you want is just
loading @file{~/.guile}, leave @code{geiser-guile-init-file} alone and
set @code{geiser-guile-load-init-file-p} to @code{t} instead.
+@subsubheading Racket startup time
+
+When starting Racket in little computers, Geiser might have to wait a
+bit more than it expects (which is ten seconds, or ten thousand
+milliseconds, by default). If you find that Geiser is giving up too
+quickly and complaining that no prompt was found, try to increase the
+value of @c{geiser-repl-startup-time} to, say, twenty seconds:
+
+@example
+(setq geiser-repl-startup-time 20000)
+@end example
+
+@noindent
+If you prefer, you can use the customize interface to, well, customise
+the above variable's value.
+
@subsubheading History
By default, Geiser won't record duplicates in your input history. If you
diff --git a/elisp/geiser-repl.el b/elisp/geiser-repl.el
index 5027c28..770b5ca 100644
--- a/elisp/geiser-repl.el
+++ b/elisp/geiser-repl.el
@@ -107,6 +107,12 @@ expression, if any."
:type 'integer
:group 'geiser-repl)
+(geiser-custom--defcustom geiser-repl-startup-time 10000
+ "Time, in milliseconds, to wait for Racket to startup.
+If you have a slow system, try to increase this time."
+ :type 'integer
+ :group 'geiser-repl)
+
;;; Implementation-dependent parameters
@@ -302,7 +308,7 @@ module command as a string")
(error-message-string err)
"\n")
(error "Couldn't start Geiser")))
- (geiser-repl--wait-for-prompt 10000)))
+ (geiser-repl--wait-for-prompt geiser-repl-startup-time)))
(defun geiser-repl--wait-for-prompt (timeout)
(let ((p (point)) (seen) (buffer (current-buffer)))