Skip to content

Commit f50d4db

Browse files
committed
Merge branch 'austinmlv-guile-output' into develop
2 parents 8002dfb + 6546acc commit f50d4db

File tree

6 files changed

+53
-25
lines changed

6 files changed

+53
-25
lines changed

.nvim.fnl

+3
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@
88
; (set vim.g.conjure#client#scheme#stdio#prompt_pattern "\n-#;%d-> ")
99
; (set vim.g.conjure#mapping#enable_defaults false)
1010

11+
; (set vim.g.conjure#filetype#scheme "conjure.client.guile.socket")
12+
; (set vim.g.conjure#client#guile#socket#pipename "guile-repl.socket")
13+
1114
; (set vim.g.conjure#client#python#stdio#command "ipython --classic")
1215

1316

dev/guile/sandbox.scm

+13
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,16 @@
55

66
(+ 5 6)
77
(add 1 2)
8+
9+
(define (print-hi-and-return x)
10+
(begin
11+
(display "Hi")
12+
(newline))
13+
x)
14+
15+
(print-hi-and-return 123)
16+
17+
(define (return-values)
18+
(values 123 "Hi"))
19+
20+
(return-values)

fnl/conjure/client/guile/socket.fnl

+20-14
Original file line numberDiff line numberDiff line change
@@ -115,22 +115,28 @@
115115

116116
(defn- parse-guile-result [s]
117117
(let [prompt (s:find "scheme@%([%w%-%s]+%)> ")]
118-
(if prompt
119-
(let [(ind1 ind2 result) (s:find "%$%d+ = ([^\n]+)\n")]
120-
(if result
121-
{:done? true
122-
:error? false
123-
:result result}
124-
{:done? true
125-
:error? false
126-
:result (s:sub 1 (- prompt 1))}))
127-
(if (s:find "scheme@%([%w%-%s]+%) %[%d+%]>")
118+
(if
119+
prompt
120+
(let [(ind1 _ result) (s:find "%$%d+ = ([^\n]+)\n")
121+
stray-output (s:sub
122+
1
123+
(- (if result ind1 prompt) 1))]
124+
(when (> (length stray-output) 0)
125+
(log.append
126+
(-> (text.trim-last-newline stray-output)
127+
(text.prefixed-lines "; (out) "))))
128128
{:done? true
129-
:error? true
130-
:result nil}
131-
{:done? false
132129
:error? false
133-
:result s}))))
130+
:result result})
131+
132+
(s:find "scheme@%([%w%-%s]+%) %[%d+%]>")
133+
{:done? true
134+
:error? true
135+
:result nil}
136+
137+
{:done? false
138+
:error? false
139+
:result s})))
134140

135141
(defn connect [opts]
136142
(disconnect)

fnl/conjure/sponsors.fnl

-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
[ ;; Generated by: make sponsors
2-
"AbhinavOmprakash"
32
"Akeboshiwind"
43
"aleksandersumowski"
54
"AlexChalk"

lua/conjure/client/guile/socket.lua

+16-9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lua/conjure/sponsors.lua

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)