diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-01-30 13:27:12 -0800 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-01-30 13:27:12 -0800 |
commit | a79a17b93fb030a66ab04e99a4ef3c318707227e (patch) | |
tree | 8c657e08f0f791a81ea9d5c2478f8533da6fa513 | |
parent | 901efe360c151e128098154399960cbceb5174e1 (diff) | |
download | mu-a79a17b93fb030a66ab04e99a4ef3c318707227e.tar.gz |
684
-rw-r--r-- | color-repl.mu | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/color-repl.mu b/color-repl.mu index a9770073..2e126738 100644 --- a/color-repl.mu +++ b/color-repl.mu @@ -7,7 +7,7 @@ ; abort continuation -> string (function read-expression [ - (default-space:space-address <- new space:literal 30:literal) + (default-space:space-address <- new space:literal 60:literal) (abort:continuation <- next-input) (history:buffer-address <- next-input) ; buffer of strings (result:buffer-address <- init-buffer 10:literal) ; string to maybe add to @@ -24,6 +24,14 @@ (c:character <- $wait-for-key-from-host) (done?:boolean <- process-key default-space:space-address c:character) } + ; trim trailing newline in result (easier history management below) + { begin + (l:character <- last result:buffer-address) + (trailing-newline?:boolean <- equal l:character ((#\newline literal))) + (break-unless trailing-newline?:boolean) + (len:integer-address <- get-address result:buffer-address/deref length:offset) + (len:integer-address/deref <- subtract len:integer-address/deref 1:literal) + } ; test: 3<enter> => size of s is 2 (s:string-address <- to-array result:buffer-address) (reply s:string-address) |