From: Alexander Iljin Date: Wed, 24 Aug 2016 00:27:07 +0000 (+0300) Subject: listener: don't activate the ctrl-break handler by default X-Git-Tag: unmaintained~510 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=82c1a1e936f0b92d5c067b043db9b622c857e551 listener: don't activate the ctrl-break handler by default To activate the ctrl-break handler, add the following code to your .factor-rc: USING: listener namespaces ; t handle-ctrl-break set-global --- diff --git a/basis/listener/listener.factor b/basis/listener/listener.factor index ba9a7546ba..ea7d007517 100644 --- a/basis/listener/listener.factor +++ b/basis/listener/listener.factor @@ -24,8 +24,16 @@ H{ M: object prompt. nip prompt-style get-global format bl flush ; +SYMBOL: handle-ctrl-break + +: maybe-enable-ctrl-break ( -- ) + handle-ctrl-break get-global [ enable-ctrl-break ] when ; + : with-ctrl-break ( quot -- ) - enable-ctrl-break + maybe-enable-ctrl-break + ! Always call disable-ctrl-break, no matter what handle-ctrl-break + ! says: it might've been changed just now by the user in the Listener. + ! It's a no-op if it's not enabled. [ disable-ctrl-break ] [ ] cleanup ; inline : parse-lines-interactive ( lines -- quot/f )