summaryrefslogtreecommitdiff
path: root/elisp/geiser-guile.el
AgeCommit message (Collapse)Author
2020-07-20geiser-guile.el at the top leveljao
2020-04-26Fix typosJonas Bernoulli
2020-03-27Use cl-lib instead of clJonas Bernoulli
Starting with Emacs 27 cl is fully deprecated, including at compile-time.
2020-03-27Fix indentationJonas Bernoulli
2020-03-27Mark the beginning of code part of elisp libraries with Code: headingJonas Bernoulli
It's the convention and by following it we make a big step towards supporting outline navigation. The convention doesn't say much about what parts of the code are supposed to be part of that sections and what parts belong in a subsequent section. Here we put the `require' forms in this section and maybe some setup code, that's a popular approach. In most cases there was " " where we now insert "Code:". They both serve a similar purpose and we keep the former because some users depend on that for navigation. We even add this " " in libraries where it previously was missing. In some cases the permission statement was followed by a commentary, which obviously does not belong in the "Code:" section. In such cases add the conventional "Commentary:" section.
2020-03-27Begin the summary lines of all elisp libraries with three semicolonsJonas Bernoulli
It's the convention and by following it we make a big step towards supporting outline navigation.
2020-02-13Guile: use load paths defined in dir-local variables (fixes #268)Jose Antonio Ortega Ruiz
A similar idea should probably be used with other schemes, but right now i feel ashamed of having taken so long to fix this one (assuming it's fixed!), so let's rush this commit for a change.
2020-02-04Really fix #252Jose Antonio Ortega Ruiz
And by a new pair of glasses in the process.
2018-01-30guile 2.2: program-arities and program-module reloadedJose Antonio Ortega Ruiz
Those two procedures are gone in these 2.2 times, and things like autodoc and xref were broken as a result. With Andy's help, apparently good enough approximations of their functionality are now in place: let's see how they go.
2017-10-11guile: fix manual symbol lookup.Jan Nieuwenhuizen
* elisp/geiser-guile.el (guile--manual-look-up): Change parameters for info-lookup-symbol to string and 'scheme-mode. Fixes lookup.
2017-02-01A note on dir-locals and load-path variablesJose Antonio Ortega Ruiz
With that in the documentation, i'd taken less time to remember the very existence of geiser-guile-load-path, and the fact that paths are added also to the compiled load path... but then i guess it's nice to re-read my code once in a while.
2016-12-03Bug fix: expanding file name at the right timeJose Antonio Ortega Ruiz
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.
2016-11-26Make guile's load-file happier with ~ abrevsJose Antonio Ortega Ruiz
An attempt to address #194.
2016-09-30Use (car (process-lines ...)) instead of (shell-command ...)Jordan Brown
`shell-command` assumes Bourne-shell-compatible quoting, which doesn't work when the user isn't using a Bourne-compatible shell. Instead of futzing about with quoting, we can just use `process-lines` to execute a process and pass it arguments directly.
2016-06-11Cleanups to the show/jump debug buffer messJose Antonio Ortega Ruiz
Let's see if i finally got this right...
2015-12-26Quoting binary on version checks (issue #117)Jose Antonio Ortega Ruiz
We could probably be even more robust, but i am being a bit lazy instead.
2015-10-21Use OS-specific quotes when asking for versionsJose Antonio Ortega Ruiz
Fixes #95. This is @kovrik's patch, with 80-columns max formatting.
2015-10-03Add more highlighting/indentation for GuileAlex Kost
2015-09-30Follow suit and complete quoted symbols in all schemesJose Antonio Ortega Ruiz
I kind of dislike completion on symbols, because a quote reads to me as 'stop evaluating', and a symbol per se has infinite possible conversions. But, on the other hand, not completing has no practical advantage, and, moreover, we're already completing symbols inside quoted lists (e.g. try M-TAB next to `'(defi`)), so my prejudices are not even consistent. So here we go!
2015-09-27Clean up indentation rulesAlex Kost
Move general indentation rules to "geiser-syntax".
2015-09-27Add 'geiser-guile--builtin-keywords'Alex Kost
2015-09-27Add 'geiser-syntax--simple-keywords'Alex Kost
Use this function instead of repeating the same code in each implementation.
2014-06-05Possible fix for scanning problemJose Antonio Ortega Ruiz
Apparently, the nesting level returned by emacs's syntax parser can be negative (presumably when it gets confused), and we were not avoiding calling backward-up-list when that happened. Could or could not address issue #41...
2014-06-03Guile: font lock for all components of module namesJose Antonio Ortega Ruiz
2014-03-26Indent Guile's `with-mutex'Diogo F. S. Ramos
Follow the convention for `with-' procedures.
2014-03-07Highlight `define-once'Diogo F. S. Ramos
Guile's `define-once' allows defining a variable only once, but its syntax is different from `define', so its highlight is different.
2013-09-25Scheme version checksJose Antonio Ortega Ruiz
And, if you happen to be launching it all the time, a way of skipping them via a customizable variable. Should address issue #15.
2013-09-19Fix: not using mapcar for effectJose Antonio Ortega Ruiz
2013-09-13Guile: augmenting %load-compiled-path tooJose Antonio Ortega Ruiz
We add the paths in geiser-guile-load-path also to %load-compiled-path, and new directories added to the load path via geiser-add-to-load-path are added to both %load-path and %load-compiled-path. Here's hope Ludovic will like all these additions!
2013-06-27White space, reallyJose Antonio Ortega Ruiz
2013-06-15Missing require cl for caseJose Antonio Ortega Ruiz
2013-05-09guile: lambda* indentationAleix Conchillo Flaque
2013-03-01Configurable keyword case sensitivityJose Antonio Ortega Ruiz
By default, keywords are now not fontified in Scheme buffers unless they have the correct (lower) case. This behaviour can be altered by new, per-implementation customization variables. Thanks to Diogo F. S. Ramos for pointing this out.
2012-10-24Little clean-ups to the indentation rulesJose Antonio Ortega Ruiz
Splitting better the specially indented forms between our two implementations, so that users of a single one don't get weird indentations for froms without a special meaning in their scheme. Ideally, we should make these indentation rules buffer-local, so that when a user is in a, say, Guile buffer, module+ has no special indentation (as is the case now if that user also has activated support for Racket).
2012-06-09Support for user-defined Guile info nodesJose Antonio Ortega Ruiz
In my debian machine, the info nodes for guile live in the "guile-2.0" node, rather than plain "guile". A new customizable variable, geiser-guile-manual-lookup-nodes, lets now specify additional names, and we only add indexes to the info-lookup mode definition when the node actually exists.
2011-06-23Guile: find module when cursor is before define-module (#33497)jao
If we didn't find a define-module form after the cursor, or an enclosing R6RS library form, we search forward for a module definition. That way, things like C-c C-a work also from the top of the file.
2011-03-08Guile: what if i do what i meant to do?Jose Antonio Ortega Ruiz
Thanks Jon!
2011-03-08Guile: new option for loading ~/.guile (see issue #32681)Jose Antonio Ortega Ruiz
The new custom variable, geiser-guile-load-init-file-p, will be gone once Guile adquires the ability to specify the path to its init file.
2011-02-14Bug fix: don't override customized geiser-implementations-alistJose Antonio Ortega Ruiz
2011-02-09Guile: 'format' added to the warning listJose Antonio Ortega Ruiz
2010-11-26Revert "Bug fix: don't intern symbols read by scheme reader"Jose Antonio Ortega Ruiz
This reverts commit 801422d1558f488059ede4f9abab5163ca610900. We cannot blindly substitute make-symbol for intern in the scheme reader, because we rely on symbol equality elsewhere, often. The fix will have to be much more careful.
2010-11-26Bug fix: don't intern symbols read by scheme readerJose Antonio Ortega Ruiz
We were calling `intern' instead of `make-symbol', polluting emacs' obarray.
2010-11-25Guile: fix for connect-to-guile problemsJose Antonio Ortega Ruiz
Was a real bug, after all, and quite reproducible. Sending an ,use metacommand was not returning a prompt, and we were waiting for ever to start (or almost). Now, connect-to-guile is not only right, but spiffy again.
2010-11-25Guile: logging initialisation processJose Antonio Ortega Ruiz
Today, W was seeing errors when connecting to Guile, which of course immediately disappeared when we tried to reproduce them and get some logs. I'm logging Guile's initialisation unconditionally, to make sure the problem doesn't repeat. Much easier than fixing the bug.
2010-11-24Guile: button for texinfo lookup in doc browserJose Antonio Ortega Ruiz
2010-11-22Fix for error in Guile initialisationJose Antonio Ortega Ruiz
2010-11-14TypoJose Antonio Ortega Ruiz
2010-11-14Support for implementation-specific font lock keywordsJose Antonio Ortega Ruiz
Spinning up from correct fontification of [else in this brave Racket world. I'm keeping the list of extra keywords lean and mean, but making it customizable in both Racket and Guile.
2010-11-13Superior schemesJose Antonio Ortega Ruiz
Inferior schemes weren't really a good idea, were they? With remote connections one can launch an external scheme to debug Geiser anyway. And everything is (ahem, will be) simpler when we add new implementations.
2010-11-12Make do with a single connectionJose Antonio Ortega Ruiz
Separate connections for the REPL and Geiser commands was kind of neat, but it had the problem of synchronising the current namespace for both connections. A quick fix would have been to ask the scheme for the current namespace for every Geiser command in the REPL, but that, besides clunky, would add potentially prohibitive overhead for (real) remote connections. As it happens, using a single connection turned out to be not that difficult and relatively clean code-wise. We could even turn back to not use inferior schemes, and the net result of this refactoring would be the replacement of comint-redirect (which wasn't able to match the whole EOT token if it didn't arrive all at once) by transaction queues (which also makes geiser-connection's implementation cleaner). But using an inferior scheme has a dog-food value, and allows external processes to connect to the scheme being used by Geiser without further ado, which could be useful for debugging (although this is a lame excuse: nothing prevents you from starting a REPL server from emacs if you want). We'll see.