summaryrefslogtreecommitdiff
path: root/scheme
AgeCommit message (Collapse)Author
2012-08-20Racket: configurable image cache directoryJose Antonio Ortega Ruiz
Brought to you by a comma-command in the REPL and the REPL startup function.
2012-08-12[WIP] Draw images inline in the Racket REPL.Michael W
On the racket side, we use a custom print handler to print images (convertible? values; see file/convertible) in a special format: #<Image: filename> On the geiser side, we add a comint post-output hook to search for that filename and replace it with inline images.
2012-07-01Racket: fix for module compilation for recent racketsJose Antonio Ortega Ruiz
This one probably requires Racket 5.3, and incorporates some parameterization to the module compilation and evaluation code in Geiser's version of enter.rkt. I'm mostly mirroring what the latter does, and i'm probably not completely understanding all corner cases, so the two users of Geiser should keep an eye open for possible breakage introduced by this patch.
2012-03-24,cd for Racket REPLJose Antonio Ortega Ruiz
It's not perfect and undocumented, but useful nonetheless.
2011-11-26Racket: capturing and displaying standard error during evaluationJose Antonio Ortega Ruiz
This bugs was exposed by using rackunit, where all the output of, say, check-eq? was lost for good (it was being sent to the stderr black hole). Hat tip Grant Retkke.
2011-09-11Guile: capturing output to standard errorJose Antonio Ortega Ruiz
We were just ignoring it so far!
2011-08-24Guile: deprecated format usage eliminatedJose Antonio Ortega Ruiz
Actually, i'm not even sure the calls to format i was using were correct at all!
2011-08-20Leftover code from the previous patch removedJose Antonio Ortega Ruiz
2011-08-20Racket: eval geiser-eval's apply arguments properlyJose Antonio Ortega Ruiz
As Stanisław Halik reported, autodoc was receiving a mlist (instead of a list) as its argument when invoked in an R5RS context. Turns out we were evaluating geiser-eval's arguments in the wrong context (the procedure being applied and the arglist belong to the same namespace).
2011-03-21Racket: use the proper interaction port for input (#32844)Jose Antonio Ortega Ruiz
Thanks to Caleb Reach. We were using current-input-port, which is not the right port in graphical environments.
2011-03-06Racket: geiser-add-to-load-path implementedJose Antonio Ortega Ruiz
And we take the chance to lightly document the existence of this new command in the user manual.
2011-02-27Racket: no errors ,entering an R5RS moduleJose Antonio Ortega Ruiz
The catch here is that one cannot use #%variable-reference inside an R5RS module, and, as a consequence, namespace->module-path-name was failing badly. The solution is to take note of the module name being entered before hand, and use that name in case of error (we could actually use that name always, but then cheaters using Racket's enter! would see an inconsistent name (which probably they deserve)).
2011-02-25Guile: setting *current-warning-prefix* during evaluationJose Antonio Ortega Ruiz
This is a 2.0 fluid that governs how warning messages are displayed. In Geiser, we need the prefix set to an empty string so that file paths are clickable (and the display in a separate emacs buffer is nicer).
2011-02-09Guile: 'format' added to the warning listJose Antonio Ortega Ruiz
2011-02-03New geiser-add-to-load-path, just for Guile right nowJose Antonio Ortega Ruiz
As per Andy's request. Adding it to Racket (and to the user manual), shouldn't be difficult).
2011-01-09Racket: ',enter "foo"' as a synonym of ',enter (file "foo")'Jose Antonio Ortega Ruiz
2011-01-09Guile nitJose Antonio Ortega Ruiz
2010-11-27No more interning in the scheme readerJose Antonio Ortega Ruiz
We avoid using elisp's read for symbols, reading uninterned ones instead. And then, we cannot use symbols as keys in responses from scheme: we're using strings instead.
2010-11-26Racket: more information in symbol documentationJose Antonio Ortega Ruiz
When the symbol is imported and re-exported by a second module, we display its definition name and original module, besides the name of the module re-exporting it.
2010-11-25Guile: fixes for documentation displayJose Antonio Ortega Ruiz
We put the value of the identifier where it belongs, and add a missing period. Works, but geiser/doc.scm is in sore need of a refactoring.
2010-11-23Document browser improvements, and Racket using themJose Antonio Ortega Ruiz
We have a new "manual lookup" command, and Racket now displays a doc browser buffer for help with a button activating it. In the process, we've cleaned-up a little mess in geiser-eval.el and geiser-doc.el, and refactored the affected Racket modules. Next in line is providing manual lookup for Guile.
2010-11-21Racket: showing submodules in module helpJose Antonio Ortega Ruiz
2010-11-21Racket: slightly better handling of the signatures cacheJose Antonio Ortega Ruiz
Refreshing the cache on form evaluation (had been deactivated by error since the introduction of meta-commands). The current behaviour is not yet completely correct: if one evaluates a form in a modified buffer, geiser won't notice the new definition's signature, not even after the buffer is saved if one has gone around asking for autodoc before that. An improvement would be to make the cache sensitive to file write times, as suggested back in the day by Eli & Neil.
2010-11-21Better module helpJose Antonio Ortega Ruiz
We now display procedure signatures in module help, and keep a cache in Guile, using procedure properties.
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.
2010-11-12Better EOT token for more robust communicationJose Antonio Ortega Ruiz
2010-11-12Guile reconnected (but not debuggable (yet))Jose Antonio Ortega Ruiz
Or the importance of EOL. Switching to a transaction queue for communication with the Scheme process means that i had to care about sending eols in the queries... Guile was waiting for ever reading a metacommand taking a variable number of arguments. Argh: this has taken me a few hours -- i'm getting old.
2010-11-11Merge branch 'guile-meta' into meta-reconnectionJose Antonio Ortega Ruiz
2010-11-11Racket reconnectedJose Antonio Ortega Ruiz
2010-11-11Partial work (connections working)Jose Antonio Ortega Ruiz
2010-11-09Merge branch 'master' into guile-metaJose Antonio Ortega Ruiz
2010-11-09Missing racket file in scheme/Makefile.amJose Antonio Ortega Ruiz
2010-11-09Merge branch 'master' into guile-metaJose Antonio Ortega Ruiz
Conflicts: elisp/geiser-guile.el
2010-11-09Racket: remote REPLsJose Antonio Ortega Ruiz
2010-11-08geiser-squarify to toggle between () and []Jose Antonio Ortega Ruiz
2010-11-08Racket: fix for prompt display on ,enterJose Antonio Ortega Ruiz
2010-11-08Racket: use EOT token for internal communicationsJose Antonio Ortega Ruiz
2010-11-07NitJose Antonio Ortega Ruiz
2010-11-07NitsJose Antonio Ortega Ruiz
2010-11-06Racket: little evaluation nitsJose Antonio Ortega Ruiz
2010-11-01Guile: better meta-command args handlingJose Antonio Ortega Ruiz
2010-10-31Merge branch 'master' into guile-metaJose Antonio Ortega Ruiz
2010-10-31Always fallback to edit-module in M-.Jose Antonio Ortega Ruiz
2010-10-31Autodoc: fix for improper macro arglists scanningJose Antonio Ortega Ruiz
2010-10-31Autodoc: fix for improper macro arglists scanningJose Antonio Ortega Ruiz
2010-10-31Guile: reactivating the debugger during evaluationJose Antonio Ortega Ruiz
2010-10-30Guile: debug leftover deletedJose Antonio Ortega Ruiz
2010-10-30Guile: using meta-commands to talk with GuileJose Antonio Ortega Ruiz