(let () (import (only (chicken process-context) get-environment-variable)) (unless (get-environment-variable "INSIDE_EMACS") (import (only (chicken base) on-exit)) (import (only (chicken process signal) signal-handler set-signal-handler! signal/int)) (import breadline) (import breadline-scheme-completion) (print "*** Using Breadling ***") (history-file STD-HISTORY-PATHNAME) (stifle-history! STD-HISTORY-LENGTH) (completer-word-break-characters-set! "\"'`;|()[] ") (completer-set! scheme-completer) (basic-quote-characters-set! "\"|") (variable-bind! "blink-matching-paren" "on") (paren-blink-timeout-set! 200000) (variable-bind! "bell-style" "visible") (let ((handler (signal-handler signal/int))) (set-signal-handler! signal/int (lambda (s) (cleanup-after-signal!) (reset-after-signal!) (handler s)))) (on-exit reset-terminal!) (current-input-port (make-readline-port)) ) )