diff options
| -rw-r--r-- | transform.e | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/transform.e b/transform.e index e7a8506..20e7a36 100644 --- a/transform.e +++ b/transform.e @@ -213,19 +213,19 @@ ~ Make sure to pack the zero to serve as a null terminator. pack8 drop drop swap drop swap drop exit } if + + ~ If it's a space character, we need to check if we just consumed the + ~ magic word, and do some handling to reset the word tracking. dup is-space { ~ (buffer size, buffer address, word start, output point, key) ~ Tuck the key out of the way until we've done some stuff. 3unroll - ~ If it's a space character, first check if we just consumed the magic - ~ word... - 2dup swap - 8 = dup { - drop - ~ Add a null terminator so we can use stringcmp - dup 0 swap ! - ~ Check for the magic word - over 6 pick stringcmp 0 = - } if + + ~ Add a null terminator so we can use stringcmp + dup 0 swap 8! + + ~ Check for the magic word. + over 6 pick stringcmp 0 = { ~ It's magic, so exit. ~ Make sure to pack a zero to serve as a null terminator. 0 pack8 |