(ql:quickload '(maiden-talk maiden-lichat)) (in-package #:maiden-user) (setf *debugger* NIL) (defvar *core* (make-core '(maiden-lichat:lichat-client :username "shinmera" :host "localhost" :channels ("stream")) 'maiden-talk:talk)) (define-handler (maiden-talk:talk mention message-event) (c ev message) (v:info :talk "~a: ~a" (name (user ev)) message) (cl-ppcre:register-groups-bind (lang text) ("(?i)^@?shinmera[:,] *(?:\\[(.*?)\\])?\\s*(.*)" message) (do-issue (core ev) maiden-talk::talk-lang :language (or lang "en-GB") :text (list text) :dispatch-event ev))) (unwind-protect (handler-case (loop (sleep 1)) (sb-sys:interactive-interrupt (e) (declare (ignore e)))) (maiden:stop *core*) (sb-ext:exit))