guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: scheme with vim


From: Ricardo Wurmus
Subject: Re: scheme with vim
Date: Wed, 05 Feb 2020 13:58:55 +0100
User-agent: mu4e 1.2.0; emacs 26.3

Hi Marc,

> # please be quiet
>
> a way to test a code in vim is to use the interpreter as a filter using
> the ! action (:h !) or write in a pipe.  if you do that with guile, the
> repl header is printed:
>
>     GNU Guile 2.2.4
>     Copyright (C) 1995-2017 Free Software Foundation, Inc.
>
>     Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
>     This program is free software, and you are welcome to redistribute it
>     under certain conditions; type `,show c' for details.
>
> i wrote a wrapper:
>
>     guile_as_filter () {
>         local x=$( mktemp /tmp/guile-as-filter-XXXXX )
>         cat "$@" > $x
>         guile -s $x
>         rm $x
>     }
>
> then i got
>
>     ;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
>     ;;;       or pass the --no-auto-compile argument to disable.
>     ;;; compiling /tmp/guile-as-filter-RTGLe
>     ;;; compiled 
> /home/mc/.cache/guile/ccache/2.2-LE-8-3.A/tmp/guile-as-filter-RTGLe.go
>
> is there a way to restrict stderr and stdout to the content produced by
> the actual script ?  (also interesting for a quickfix errformat)

Does it make sense for your application to auto compile sources at all?
If not you can disable it by passing “--no-auto-compile” as an option to
your invocation of Guile in “guile_as_filter”.

I also wonder if perhaps it would be better to start a Guile REPL and
have vim send S-expressions to the socket instead of saving a temporary
file and starting a new Guile process every time.

--
Ricardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]