Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
Add (chibi filesystem) import to geiser.sld
|
|
|
|
Add a helper function make-location to chibi interface.
|
|
See discussion in issue !256.
|
|
This option allows for easier editing of expressions on the REPL
without accidentally sending the input to the inferior Scheme.
When turned on, the REPL behaves similarly to the Chez REPL.
|
|
|
|
|
|
|
|
* Narrow font-lock syntax highlighting to only the
active REPL input region.
* Mark REPL output read-only. This can be changed via the
option `geiser-repl-read-only-output-p`.
* Mark REPL output with a user-definable face as
`geiser-font-lock-repl-output`.
Alternatively an option to syntax highlight REPL output
is provided via the option `geiser-repl-highlight-output-p`.
This applies scheme-mode syntax highlighting to any REPL
output. Any additional hooks defined via scheme-mode-hook
are also executed for highlighting this region.
* Remove some unwanted TABs in source files.
|
|
|
|
|
|
Since this job is done in the process sentinel, the clean up is also
triggered when the Scheme process exits unexpectedly, deleting any
traces the dying guy might have left. I added a flag to control the
behaviour, but upon reflection the old behaviour seems wrong and i've
defaulted to the new one. This one should fix #251.
|
|
And we also take the chance to let add-to-list do its job of not
adding duplicates.
|
|
Okay, i must confess it's sometimes handy to restart the REPL before
compiling a file (the proverbial clean slate and all). And we already
have geiser-restart-repl, so combining the two things when C-u happens
was not really difficult.
|
|
Looks like the arity of that function changed at some point between 24
and 25. It also looks like people still use emacs 24 (see issue #236),
so here we go.
|
|
When constructing the completion table for minibuffer prompts via
`completion-table-dynamic', we were forgetting to tell emacs to
perform the completion lookup with the original (scheme) buffer as its
current buffer. As a result, the actual completion function wasn't
able to find the REPL connection and everything when down in flames
with an exception.
|
|
For some reason, one of our users is experiencing point jumps when
calling `geiser-set-scheme'. A save-excursion is all that's needed,
even though it *shouldn't* be needed in the first place.
|
|
|
|
|
|
geiser-mode-eval-to-buffer-transformer will take 2 argments:
errstring and result
when eval-to-buffer, the result will be transformed by this procedure
e.g.
(setq geiser-mode-eval-to-buffer-transformer
(lambda (estring x)
(let ((l (length x))
(p (seq-position x ?\n)))
(if (and p (< (+ 1 p) l))
(format "\n#| %s%s\n |#" estring x)
(format ";;=> %s%s" estring x)))))
|
|
After evaling the last expression, if not inserting its value into
buffer, leave (point) at its original position.
|
|
Scan for beginning and end of a sexp, instead of using (point) as the
end.
Previously, if (point) was after a comment character, the REPL would
freeze.
|
|
Previously, Geiser added a (field t) property to inputs before adding
them to the REPL history so it can determine what characters in the
buffer belong to old input and yank it when a user pressed
enter (geiser-repl--maybe-send) on it. When users recalled an old
input with "M-p" (comint-previous-matching-input-from-input), the old
input with its (field t) property were inserted after the current
prompt. Since old inputs were not "front-sticky," when point was just
after the current prompt but before the characters of the old input,
Emacs considered point to be outside of the (field t) field; this
prevented users from using some movement commands such as forward-word
to move point into the old input text. Furthermore, when users
inserted text before the old input or yanked other old inputs
afterwards, this new text did not have the field property and so Emacs
restricted point movement to and from the old text with the (field t)
field.
This resolves the issue by not adding the (field t) property to old
inputs and instead leverages comint's ability to assign the output
field to all non-input (by setting comint-use-prompt-regexp to
nil). It should resolve the issue reported in "[Geiser-users] Problem
with prompt at history item" by Hamish Ivey-Law
(https://lists.nongnu.org/archive/html/geiser-users/2014-12/msg00001.html).
|
|
|
|
And, on reflection, it's better we do the same thing with the ERROR
insertion...
|
|
|
|
|
|
We were expanding the path of files to be loaded at the wrong place in
the wrong way. This should be better and address bug #196.
|
|
Emacs trunk does not support arguments list like (lambda (&rest) nil)
anymore, which breaks geiser and errors with "Invalid function: "
|
|
|
|
|
|
At least by default.
|
|
|
|
C-h P (`display-package') can make use of it.
|
|
|
|
... so that we don't interfere with other active backends, and following
the same policy as in the rest of company-mode geiser methods. See also
the discussion in github's #173.
|
|
As requested in github issue #173. Seems it's confusing people, which
is exactly the problem it was originally trying to avoid!
|
|
|
|
Avoid redefining font-lock-ensure, so that haskell-mode doesn't get mad
at us. Should close github's #164.
|
|
|
|
|
|
|
|
|
|
|