 
 (require 'slime)
 (require 'font-lock)
+(require 'cl)
 
 (defface log4cl-package-face
     '((((background dark)) (:foreground "#7474FFFFFFFF" :background "DimGray")) ; ~ cyan

                          (>= (- (float-time) try) 5)))
                 ;; mark it that we trying to do it
                 (process-put conn 'log4cl-loaded (float-time)) 
                 (if (not (slime-eval `(cl:ignore-errors (asdf:load-system :log4slime))))
                     (progn 
                       (process-put conn 'log4cl-loaded (float-time))
                       (message "Failed to load log4cl lisp support"))
                   (message "Successfully loaded log4cl lisp support")
                   (process-put conn 'log4cl-loaded t)
                   t))))))))

(define-minor-mode log4cl-mode
  "\\<log4cl-mode-map>\


(defun log4cl-make-levels-menu (info-symbol &optional nodisplay noinherit)
  "Create a levels menu for logger specified in the value of the INFO-SYMBOL"
  (let* ((C
          ;; For non-popup-menu `log4cl-check-connection' is done in parent
          (if (eq info-symbol 'log4cl-popup-logger)
              `(and ,info-symbol)
            `(and (log4cl-check-connection) ,info-symbol)))
         (menu `(nil :active ,C
                     ,@(unless nodisplay
                         `("--space" 
                           [nil nil :label (log4cl-logger-display-name ,info-symbol)]
                           "--space" 
                           "--single-line"))
                     ;; inherit
